@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,monospace;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Inter",-apple-system,BlinkMacSystemFont,sans-serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--cyan:#2dd4bf;--purple:#34d399;--dark-bg-1:#1a1a2e;--dark-bg-2:#16213e;--dark-bg-3:#0f3460;--text-primary:#fff;--text-secondary:#e0e0e0;--text-muted:#a0a0a0;--success:#4caf50;--error:#f44336;--warning:#fc0;--overlay-weak:var(--overlay-weak);--overlay:#ffffff1a;--overlay-strong:var(--overlay-strong);--overlay-stronger:var(--overlay-stronger);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-display:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:linear-gradient(135deg,var(--dark-bg-1)0%,var(--dark-bg-2)50%,var(--dark-bg-3)100%);min-height:100vh;color:var(--text-primary);overflow-x:hidden}h1,h2,h3,h4,.step-title,.player-step-title,.module-divider-title,.course-outline-heading,.course-outline-module-title{font-family:var(--font-display);letter-spacing:-.01em}#root{min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:20px}header{text-align:center;padding:30px 0}header h1{background:linear-gradient(90deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:10px;font-size:2.5rem}header p{color:var(--text-muted);font-size:1.1rem}.progress-container{background:var(--overlay);border-radius:3px;width:100%;height:6px;margin:20px 0;overflow:hidden}.progress-bar{background:var(--primary,var(--cyan));border-radius:3px;height:100%;transition:width .5s}.step-indicators{flex-wrap:wrap;justify-content:center;gap:15px;margin:20px 0;display:flex}.step-dot{background:var(--overlay);border:2px solid var(--overlay-stronger);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.9rem;transition:all .3s;display:flex}.step-dot:hover{background:var(--overlay-stronger);transform:scale(1.1)}.step-dot.active{background:var(--primary,var(--cyan));border-color:var(--primary,var(--cyan));box-shadow:0 0 20px #2dd4bf80}.step-dot.completed{background:var(--success);border-color:var(--success)}.lesson-container{flex-wrap:wrap;gap:30px;margin-top:30px;display:flex}.visualization-panel{background:var(--overlay-weak);border:1px solid var(--overlay);border-radius:20px;flex:1;min-width:400px;min-height:450px;padding:30px;position:relative}.explanation-panel{flex:1;min-width:300px}.step-title{color:var(--primary,var(--cyan));margin-bottom:20px;font-size:1.8rem}.step-content{color:var(--text-secondary);font-size:1.1rem;line-height:1.8}.step-content .highlight{color:var(--text-primary);background:#2dd4bf38;border-radius:4px;padding:2px 8px;font-weight:500}.key-points{background:var(--primary,var(--cyan));margin-top:25px;padding:20px}@supports (color:color-mix(in lab,red,red)){.key-points{background:color-mix(in srgb,var(--primary,var(--cyan))12%,transparent)}}.key-points{border-left:4px solid var(--primary,var(--cyan));border-radius:12px}.key-points h3{color:var(--primary,var(--cyan));margin-bottom:10px;font-size:1.1rem}.key-points ul{padding-left:0;list-style:none}.key-points li{color:var(--text-secondary);padding:8px 0 8px 25px;position:relative}.key-points li:before{content:"→";color:var(--secondary,var(--purple));position:absolute;left:0}.controls{flex-wrap:wrap;justify-content:center;gap:15px;margin-top:30px;display:flex}.btn{cursor:pointer;border:none;border-radius:25px;align-items:center;gap:8px;padding:12px 30px;font-size:1rem;transition:all .3s;display:flex}.btn-primary{background:linear-gradient(135deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));color:var(--text-primary)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 30px #2dd4bf4d}.btn-secondary{background:var(--overlay);color:var(--text-primary);border:1px solid var(--overlay-stronger)}.btn-secondary:hover{background:var(--overlay-stronger)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-voice{background:linear-gradient(135deg,#ff6b6b,#ff8e53)}.btn-voice.speaking{animation:1s infinite pulse}.animation-container{justify-content:center;align-items:center;width:100%;height:350px;display:flex;position:relative}.voice-indicator{opacity:0;background:#000c;border-radius:25px;align-items:center;gap:10px;padding:10px 20px;transition:opacity .3s;display:flex;position:fixed;bottom:20px;right:20px}.voice-indicator.active{opacity:1}.voice-bars{align-items:center;gap:3px;display:flex}.voice-bar{background:var(--primary,var(--cyan));border-radius:2px;width:4px;height:20px;animation:.5s ease-in-out infinite alternate voiceBar}.voice-bar:first-child{animation-delay:0s}.voice-bar:nth-child(2){animation-delay:.1s}.voice-bar:nth-child(3){animation-delay:.2s}.voice-bar:nth-child(4){animation-delay:.3s}.modal-overlay{z-index:1000;opacity:0;visibility:hidden;background:#000c;justify-content:center;align-items:center;width:100%;height:100%;transition:all .3s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;visibility:visible}.modal{background:linear-gradient(135deg,var(--dark-bg-1),var(--dark-bg-2));border:1px solid var(--overlay);border-radius:20px;width:90%;max-width:500px;padding:40px;box-shadow:0 20px 60px #00000080}.modal h2{color:var(--primary,var(--cyan));margin-bottom:15px;font-size:1.5rem}.modal p{color:var(--text-muted);margin-bottom:20px;line-height:1.6}.modal input,.modal select{border:1px solid var(--overlay-stronger);background:var(--overlay-weak);width:100%;color:var(--text-primary);border-radius:10px;outline:none;margin-bottom:20px;padding:15px;font-size:1rem;transition:border-color .3s}.modal input:focus,.modal select:focus{border-color:var(--primary,var(--cyan))}.modal input::placeholder{color:var(--text-muted)}.modal-buttons{gap:10px;display:flex}.modal .btn{flex:1}.modal a{color:var(--primary,var(--cyan));text-decoration:none}.modal a:hover{text-decoration:underline}.voice-select-container{margin-bottom:20px}.voice-select-container label{color:var(--text-muted);margin-bottom:8px;font-size:.9rem;display:block}.voice-select{border:1px solid var(--overlay-stronger);background:var(--overlay-weak);width:100%;color:var(--text-primary);cursor:pointer;border-radius:10px;outline:none;padding:12px;font-size:1rem}.voice-select option{background:var(--dark-bg-1);color:var(--text-primary)}.loading-spinner{border:2px solid var(--overlay-stronger);border-top-color:var(--text-primary);border-radius:50%;width:16px;height:16px;margin-right:8px;animation:.8s linear infinite spin;display:inline-block}.loading-logo{width:72px;height:72px;animation:1.8s linear infinite spin;display:block}.app-brand{z-index:100;pointer-events:none;align-items:center;gap:10px;display:flex;position:fixed;top:20px;left:20px}[dir=rtl] .app-brand{left:auto;right:20px}.app-brand-logo{width:36px;height:36px;display:block}.app-brand-name{font-family:var(--font-mono);color:var(--text-primary);letter-spacing:0;font-size:1.25rem;font-weight:100}.settings-btn{background:var(--overlay);border:1px solid var(--overlay-stronger);width:40px;height:40px;color:var(--text-primary);cursor:pointer;z-index:100;border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;transition:all .3s;display:flex;position:fixed;top:20px;right:20px}.settings-btn:hover{background:var(--overlay-stronger);transform:rotate(45deg)}.quiz-container{background:var(--secondary,var(--purple));margin:auto;padding:30px 40px}@supports (color:color-mix(in lab,red,red)){.quiz-container{background:color-mix(in srgb,var(--secondary,var(--purple))12%,transparent)}}.quiz-container{border:1px solid var(--secondary,var(--purple));border-radius:16px}@supports (color:color-mix(in lab,red,red)){.quiz-container{border:1px solid color-mix(in srgb,var(--secondary,var(--purple))30%,transparent)}}.quiz-container{width:100%;max-width:700px}.quiz-container.quiz-animated{cursor:default}.quiz-question{color:var(--text-primary);min-height:2em;margin-bottom:24px;font-size:1.3rem;font-weight:600;line-height:1.5}.quiz-fade-in{animation:.5s forwards quizFadeIn}@keyframes quizFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.quiz-options{flex-direction:column;gap:12px;display:flex}.quiz-options-hidden{opacity:0;pointer-events:none}.quiz-options-visible{opacity:1}.quiz-option{background:var(--overlay-weak);border:1px solid var(--overlay-strong);cursor:pointer;text-align:start;border-radius:10px;padding:14px 24px;font-size:1.05rem;transition:all .3s}.quiz-option.quiz-option-animated{animation:.4s both quizOptionIn}@keyframes quizOptionIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.quiz-option:hover:not(:disabled){background:var(--overlay-strong);border-color:var(--primary,var(--cyan));transform:scale(1.01)}.quiz-option.correct{border-color:var(--success);background:#4caf504d;animation:.6s quizCorrectPulse}@keyframes quizCorrectPulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}.quiz-option.incorrect{border-color:var(--error);background:#f443364d;animation:.4s quizShake}@keyframes quizShake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.quiz-feedback{border-radius:10px;margin-top:20px;padding:14px 18px;font-size:1rem;line-height:1.5;display:none}.quiz-feedback.show{display:block}.quiz-feedback.correct{color:var(--success);background:#4caf5033}.quiz-feedback.incorrect{color:var(--error);background:#f4433633}.eval-submit-btn{background:var(--secondary,var(--purple));margin-top:16px;padding:12px 32px}@supports (color:color-mix(in lab,red,red)){.eval-submit-btn{background:color-mix(in srgb,var(--secondary,var(--purple))28%,transparent)}}.eval-submit-btn{border:1px solid var(--secondary,var(--purple))}@supports (color:color-mix(in lab,red,red)){.eval-submit-btn{border:1px solid color-mix(in srgb,var(--secondary,var(--purple))50%,transparent)}}.eval-submit-btn{color:var(--text-primary);cursor:pointer;border-radius:10px;width:100%;font-size:1rem;font-weight:600;transition:all .3s}.eval-submit-btn:hover:not(:disabled){background:var(--secondary,var(--purple))}@supports (color:color-mix(in lab,red,red)){.eval-submit-btn:hover:not(:disabled){background:color-mix(in srgb,var(--secondary,var(--purple))45%,transparent)}}.eval-submit-btn:hover:not(:disabled){transform:scale(1.01)}.eval-submit-btn:disabled{opacity:.5;cursor:not-allowed}.eval-multi-select .eval-checkbox{align-items:center;gap:12px;display:flex}.eval-check-indicator{flex-shrink:0;font-size:1.2rem}.quiz-option.eval-checkbox.selected{border-color:var(--primary,var(--cyan));background:var(--primary,var(--cyan))}@supports (color:color-mix(in lab,red,red)){.quiz-option.eval-checkbox.selected{background:color-mix(in srgb,var(--primary,var(--cyan))12%,transparent)}}.eval-ordering .eval-order-item{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;align-items:center;gap:12px;display:flex}.eval-ordering .eval-order-item:active{cursor:grabbing}.eval-ordering .eval-order-item:hover:not(:disabled){transform:none}.eval-drag-handle{opacity:.4;letter-spacing:1px;flex-shrink:0;font-size:1.1rem}.eval-order-number{background:var(--overlay);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:600;display:inline-flex}.eval-matching-columns{grid-template-columns:1fr 1fr;gap:16px;display:grid}.eval-matching-column{flex-direction:column;gap:10px;display:flex}.eval-match-item{align-items:center;gap:10px;transition:all .2s;display:flex;position:relative}.eval-match-connector{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:600;transition:background .2s;display:inline-flex}.eval-match-item:hover:not(:disabled){transform:none}.eval-match-item.drag-over{border-color:var(--primary,var(--cyan));background:var(--primary,var(--cyan))}@supports (color:color-mix(in lab,red,red)){.eval-match-item.drag-over{background:color-mix(in srgb,var(--primary,var(--cyan))14%,transparent)}}.eval-match-item.drag-over{box-shadow:0 0 14px var(--primary,var(--cyan));transform:scale(1.03)}@supports (color:color-mix(in lab,red,red)){.eval-match-item.drag-over{box-shadow:0 0 14px color-mix(in srgb,var(--primary,var(--cyan))30%,transparent)}}.eval-match-item.matched{transition:border-color .3s,box-shadow .3s}.eval-match-overlay{cursor:grabbing;transform:scale(1.05);box-shadow:0 8px 24px #0006}.eval-fill-blank-sentence{margin-bottom:16px;font-size:1.15rem;line-height:2.2}.eval-fill-input{background:var(--overlay);border:1px solid var(--overlay-stronger);border-bottom:2px solid var(--primary,var(--cyan));width:160px;color:var(--text-primary);border-radius:6px;outline:none;margin:0 4px;padding:4px 12px;font-family:inherit;font-size:1.05rem;transition:all .3s;display:inline-block}.eval-fill-input:focus{border-color:var(--primary,var(--cyan));background:var(--overlay-strong)}.eval-fill-input.correct{border-color:var(--success);background:#4caf5026}.eval-fill-input.incorrect{border-color:var(--error);background:#f4433626}.eval-fill-correct-answer{color:var(--text-muted);margin-top:8px;font-size:.9rem;font-style:italic}@media(max-width:768px){.eval-matching-columns{grid-template-columns:1fr}.eval-fill-input{width:120px}.lesson-container{flex-direction:column}.visualization-panel,.explanation-panel{min-width:100%}header h1{font-size:1.8rem}.step-title{font-size:1.4rem}.animation-container{height:280px}}.ask-input-bar{background:var(--overlay);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--overlay-strong);z-index:100;border-radius:28px;align-items:center;gap:6px;width:min(420px,100% - 32px);padding:4px 4px 4px 16px;transition:border-color .2s;display:flex;position:fixed;bottom:24px;left:16px}[dir=rtl] .ask-input-bar{left:auto;right:16px}.ask-input-bar:focus-within{border-color:#2dd4bf66}.ask-input-field{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;font-family:inherit;font-size:.9rem}.ask-input-field::placeholder{color:var(--text-muted)}.ask-input-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s;display:flex}.ask-input-send{background:linear-gradient(135deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));color:var(--text-primary)}.ask-input-mic{background:var(--overlay);color:var(--text-primary)}.ask-input-mic:hover{background:var(--overlay-strong)}.ask-input-loading{pointer-events:none;background:0 0}.ask-input-cancel{background:var(--overlay);color:var(--text-secondary)}.ask-input-cancel:hover{color:#ff6b6b;background:#ff6b6b40}.ask-input-recording{border-color:#ff6b6b66;animation:1.5s ease-in-out infinite pulse-border}@keyframes pulse-border{0%,to{border-color:#ff6b6b40}50%{border-color:#ff6b6b80}}.quick-voice-mic{pointer-events:auto;animation:.15s ease-out quick-mic-fade-in}.quick-voice-mic--recording,.quick-voice-mic--transcribing,.quick-voice-mic--asking,.quick-voice-mic--speaking{z-index:200;position:fixed;top:16px;right:16px}.quick-voice-mic__btn{cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:background .2s,box-shadow .2s;display:flex}.quick-voice-mic__btn--mic{background:var(--chrome-bg,#000000b3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text-primary);box-shadow:0 2px 12px #0000004d}.quick-voice-mic__btn--mic:hover{background:var(--primary,var(--cyan))}@supports (color:color-mix(in lab,red,red)){.quick-voice-mic__btn--mic:hover{background:color-mix(in srgb,var(--primary,var(--cyan))25%,transparent)}}.quick-voice-mic__btn--mic:hover{color:var(--primary,var(--cyan))}.quick-voice-mic__btn--recording{color:#ff6b6b;background:#ff6b6b33;animation:1.5s ease-in-out infinite quick-mic-pulse}.quick-voice-mic__btn--processing{background:var(--overlay);color:var(--text-primary);pointer-events:auto}.quick-voice-mic__btn--speaking{background:var(--primary,var(--cyan))}@supports (color:color-mix(in lab,red,red)){.quick-voice-mic__btn--speaking{background:color-mix(in srgb,var(--primary,var(--cyan))15%,transparent)}}.quick-voice-mic__btn--speaking{color:var(--primary,var(--cyan))}.quick-voice-mic__btn--speaking:hover{color:#ff6b6b;background:#ff6b6b33}.quick-voice-mic__error{color:var(--text-primary);white-space:nowrap;z-index:51;background:#f44336e6;border-radius:6px;margin-top:4px;padding:4px 10px;font-size:.75rem;position:absolute;top:100%;right:0}@keyframes quick-mic-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes quick-mic-pulse{0%,to{box-shadow:0 0 #ff6b6b66}50%{box-shadow:0 0 0 8px #ff6b6b00}}.ask-modal .modal-close{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.5rem;transition:color .3s;display:flex;position:absolute;top:15px;right:15px}.ask-modal .modal-close:hover{color:var(--text-primary)}.ask-modal .error-message{color:var(--error);margin-bottom:10px;font-size:.9rem}.ask-modal .spinner{border:2px solid var(--overlay-stronger);border-top-color:var(--text-primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}.explanation-animation{justify-content:center;align-items:center;width:100%;height:100%;min-height:300px;display:flex}.concept-animation{width:200px;height:200px;position:relative}.concept-rings{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.ring{border:2px solid var(--primary,var(--cyan));border-radius:50%;transition:opacity .5s;position:absolute}.ring-outer{opacity:.3;width:180px;height:180px}.ring-middle{opacity:.5;width:130px;height:130px}.ring-inner{opacity:.7;width:80px;height:80px}.ring.pulsing{animation:2s ease-in-out infinite ringPulse}.concept-core{background:linear-gradient(135deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:transform .5s;display:flex}.concept-core svg{width:30px;height:30px;color:var(--text-primary)}.process-animation{width:100%;padding:20px}.process-steps{justify-content:center;align-items:center;gap:0;display:flex}.process-step-wrapper{align-items:center;display:flex}.process-step{background:var(--overlay);border:2px solid var(--overlay-stronger);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .5s;display:flex}.process-step.completed{background:var(--success);border-color:var(--success)}.process-step.active{background:var(--primary,var(--cyan));border-color:var(--primary,var(--cyan));animation:1s infinite pulse;box-shadow:0 0 20px #2dd4bf80}.step-number{color:var(--text-primary);font-weight:700}.step-connector{background:var(--color-border,var(--overlay-stronger));width:40px;height:3px;transition:all .5s}.process-progress-bar{background:var(--primary,var(--cyan));border-radius:2px;height:4px;margin-top:20px;transition:width .5s}.comparison-animation{justify-content:center;align-items:center;gap:30px;padding:20px;display:flex}.comparison-side{flex-direction:column;align-items:center;gap:10px;transition:opacity .5s;display:flex}.comparison-icon{background:linear-gradient(135deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));width:60px;height:60px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.comparison-side.right .comparison-icon{background:linear-gradient(135deg,var(--secondary,var(--purple)),#ff6b6b)}.comparison-label{color:var(--text-muted);text-align:center;max-width:100px;font-size:.85rem}.comparison-divider{color:var(--text-muted)}.comparison-divider svg{width:40px;height:40px}.list-animation{width:100%;max-width:300px;padding:20px}.list-item{opacity:.3;align-items:flex-start;gap:12px;padding:10px 0;transition:all .5s;display:flex;transform:translate(-20px)}.list-item.revealed{opacity:1;transform:translate(0)}.list-item.active{opacity:1}.list-item.active .list-bullet{background:var(--primary,var(--cyan));box-shadow:0 0 15px #2dd4bf80}.list-bullet{background:var(--overlay-stronger);border-radius:50%;justify-content:center;align-items:center;width:24px;min-width:24px;height:24px;transition:all .3s;display:flex}.list-bullet svg{width:14px;height:14px;color:var(--text-primary);opacity:0;transition:opacity .3s}.list-item.revealed .list-bullet svg{opacity:1}.list-text{color:var(--text-secondary);font-size:.95rem;line-height:1.4}.default-animation{width:200px;height:200px;position:relative}.knowledge-sphere{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.sphere-layer{border:2px solid;border-radius:50%;transition:opacity .5s;position:absolute}.layer-1{border-color:#2dd4bf4d;width:180px;height:180px}.layer-2{border-color:#34d39966;width:130px;height:130px}.layer-3{border-color:#ffcc0080;width:80px;height:80px}.knowledge-sphere.active .sphere-layer{animation:4s linear infinite sphereRotate}.knowledge-sphere.active .layer-2{animation-duration:3s;animation-direction:reverse}.sphere-core{background:linear-gradient(135deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));z-index:1;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.sphere-core svg{width:30px;height:30px;color:var(--text-primary)}.knowledge-particles{width:100%;height:100%;position:absolute;top:0;left:0}.particle{background:var(--primary,var(--cyan));opacity:.5;border-radius:50%;width:8px;height:8px;position:absolute}.particle.floating{animation:3s ease-in-out infinite particleFloat}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes voiceBar{0%{height:8px}to{height:20px}}@keyframes ringPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}@keyframes sphereRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes particleFloat{0%,to{opacity:.5;transform:translateY(0)scale(1)}50%{opacity:.8;transform:translateY(-20px)scale(1.2)}}.dynamic-illustration{border-radius:16px;justify-content:center;align-items:center;width:100%;height:100%;min-height:300px;padding:20px;display:flex;overflow:hidden}.dynamic-illustration svg{width:auto;max-width:100%;height:auto;max-height:100%}.di-show-boundary>svg{outline-offset:2px;outline:2px dashed #fff6}.dynamic-illustration svg text{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.dynamic-illustration svg .glow,.dynamic-illustration svg [data-glow=true]{filter:drop-shadow(0 0 8px)}.gsap-concept{perspective:1000px}.gsap-concept .concept-particles{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.gsap-concept .particle{background:var(--primary,var(--cyan));width:6px;height:6px;box-shadow:0 0 10px var(--primary,var(--cyan));border-radius:50%;position:absolute}.gsap-concept .ring{box-shadow:0 0 15px #2dd4bf4d}.gsap-concept .concept-core{box-shadow:0 0 30px #2dd4bf80}.gsap-process .process-progress-container{background:var(--overlay);border-radius:3px;width:80%;height:6px;margin:25px auto 0;overflow:hidden}.gsap-process .process-progress-bar{background:linear-gradient(90deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)),var(--success));height:100%;box-shadow:0 0 10px var(--primary,var(--cyan));border-radius:3px;margin-top:0}.gsap-process .process-step{position:relative;overflow:hidden}.gsap-process .process-step.completed{box-shadow:0 0 20px #4caf5080}.gsap-process .process-step .step-number{z-index:1;position:relative}.gsap-process .process-step .check-icon{width:24px;height:24px;color:var(--text-primary);z-index:2;position:absolute}.gsap-process .process-step.completed .step-number{opacity:0}.gsap-comparison{flex-direction:row;position:relative}.gsap-comparison .comparison-vs{width:60px;height:60px;color:var(--text-primary);z-index:2;background:linear-gradient(135deg,#ff6b6b,#ffa502);border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;display:flex;box-shadow:0 0 30px #ff6b6b80}.gsap-comparison .comparison-side{background:var(--overlay-weak);border-radius:16px;min-width:120px;padding:20px}.gsap-comparison .comparison-side.left{background:linear-gradient(135deg,#2dd4bf1a,#2dd4bf05);border:1px solid #2dd4bf33}.gsap-comparison .comparison-side.right{background:linear-gradient(135deg,#34d3991a,#34d39905);border:1px solid #34d39933}.gsap-comparison .comparison-sparkles{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.gsap-comparison .sparkle{background:gold;border-radius:50%;width:4px;height:4px;position:absolute;box-shadow:0 0 8px gold}.gsap-list .list-item{background:var(--overlay-weak);border-left:3px solid #0000;border-radius:10px;margin-bottom:8px;padding:12px 15px;transition:border-color .3s,background .3s}.gsap-list .list-item.revealed{border-left-color:var(--success)}.gsap-list .list-item.active{border-left-color:var(--primary,var(--cyan));background:#2dd4bf1a;box-shadow:0 0 20px #2dd4bf33}.gsap-list .list-bullet{background:linear-gradient(135deg,var(--success),#8bc34a);box-shadow:0 0 10px #4caf5066}.gsap-default{perspective:1000px}.gsap-default .orbit-container{pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.gsap-default .orbit{border:1px dashed var(--overlay-stronger);border-radius:50%;position:absolute}.gsap-default .orbit-1{width:220px;height:220px}.gsap-default .orbit-2{width:270px;height:270px}.gsap-default .orbit-3{width:320px;height:320px}.gsap-default .orbit-particle{background:var(--primary,var(--cyan));width:10px;height:10px;box-shadow:0 0 15px var(--primary,var(--cyan));border-radius:50%;position:absolute;top:0;left:50%;transform:translate(-50%)}.gsap-default .knowledge-sphere{z-index:2}.gsap-default .sphere-layer{box-shadow:inset 0 0 20px #2dd4bf33}.gsap-default .sphere-core{box-shadow:0 0 40px #34d39980}@media(max-width:768px){.process-steps{flex-wrap:wrap}.comparison-animation{flex-direction:column;gap:20px}.gsap-comparison{flex-direction:column}.gsap-default .orbit{display:none}}.player-fullscreen{background:var(--background,#1a1a2e);color:var(--text-primary);z-index:50;position:fixed;inset:0;overflow:hidden}.player-illustration-bg{z-index:0;position:absolute;inset:0}.player-quiz-bg{z-index:0;justify-content:center;align-items:flex-start;padding:20px 20px 80px;display:flex;position:absolute;inset:0;overflow-y:auto}.subtitle-overlay{color:#ffffffbf;text-align:center;pointer-events:none;z-index:10;letter-spacing:.01em;background:linear-gradient(#0000,#000000b8 30%);padding:12px 20px 72px;font-size:15px;font-weight:450;line-height:1.6;position:absolute;bottom:0;left:0;right:0}.ni-subtitle-row{flex-shrink:0;width:100%;position:relative}.ni-subtitle-row .subtitle-overlay{position:relative;bottom:auto;left:auto;right:auto}.subtitle-word{transition:color 80ms,text-shadow 80ms;display:inline}.subtitle-word--active{color:#ffe066;text-shadow:0 0 12px #ffe0668c}.player-desktop-layout{z-index:10;display:flex;position:absolute;inset:0}.player-sidebar{flex-direction:column;flex-shrink:0;transition:width .25s;display:flex;position:relative;overflow:hidden}.player-sidebar-left{background:var(--chrome-bg,#000000a6);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--chrome-border,var(--overlay));width:260px}.sidebar-actions{border-bottom:1px solid var(--overlay-weak);align-items:center;gap:4px;padding:10px 12px;display:flex}.sidebar-icon-btn{background:var(--overlay-weak);width:34px;height:34px;color:var(--text-muted);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:flex}.sidebar-icon-btn:hover{background:var(--overlay-strong);color:var(--text-primary)}.sidebar-icon-btn-danger:hover{color:#f44336e6;background:#f4433633}.player-sidebar-left.collapsed{width:36px;overflow:hidden}.player-sidebar-right{background:var(--chrome-bg,#000000a6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:1px solid var(--chrome-border,var(--overlay));width:340px}.player-sidebar-right.collapsed{width:36px;overflow:hidden}.player-sidebar-copilot{background:linear-gradient(160deg,#16182a,#0f1018);border-left:1px solid #2dd4bf47;width:380px}.player-sidebar-copilot .cp-pane{width:100%;height:100%}.sidebar-icon-btn.active{color:var(--primary,#2dd4bf);background:#2dd4bf33}.sidebar-toggle{background:var(--overlay-weak);border:1px solid var(--overlay);width:28px;height:48px;color:var(--text-muted);cursor:pointer;z-index:5;justify-content:center;align-items:center;font-size:.8rem;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.sidebar-toggle:hover{background:var(--overlay-strong);color:var(--text-primary)}.sidebar-toggle-left{border-left:none;border-radius:0 6px 6px 0;right:0}.player-sidebar-left.collapsed .sidebar-toggle-left{left:4px;right:auto}.sidebar-toggle-right{border-right:none;border-radius:6px 0 0 6px;left:0}.player-sidebar-right.collapsed .sidebar-toggle-right{left:4px}.player-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.player-step-area{flex:1;min-height:0;position:relative;overflow:hidden}.player-top-bar{background:var(--chrome-bg,#0009);border-bottom:1px solid var(--chrome-border,var(--overlay-weak));flex-shrink:0;align-items:center;gap:16px;padding:12px 20px;display:flex}.desktop-segmented-progress{flex:1;gap:4px;display:flex}.segmented-bar{background:var(--overlay-strong);border-radius:1.5px;flex:1;height:3px;transition:background .3s}.segmented-bar.completed{background:var(--primary,var(--cyan))}.segmented-bar.active{background:linear-gradient(90deg,var(--primary,var(--cyan)),var(--primary,var(--cyan)))}@supports (color:color-mix(in lab,red,red)){.segmented-bar.active{background:linear-gradient(90deg,var(--primary,var(--cyan)),color-mix(in srgb,var(--primary,var(--cyan))35%,transparent))}}.segmented-bar.active{animation:2s ease-in-out infinite segmented-bar-pulse}@keyframes segmented-bar-pulse{0%,to{opacity:1}50%{opacity:.6}}.btn-back{background:var(--overlay);border:1px solid var(--overlay-stronger);color:var(--text-primary);cursor:pointer;white-space:nowrap;border-radius:20px;padding:8px 16px;font-size:.85rem;transition:background .2s}.btn-back:hover{background:var(--overlay-stronger)}.player-course-title{color:var(--text-primary);text-align:center;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.95rem;font-weight:600;overflow:hidden}.player-content-panel{flex:1;padding:24px 20px;overflow-y:auto}.player-step-title{color:var(--primary,var(--cyan));margin-bottom:16px;font-size:1.4rem;font-weight:700}.player-step-content{color:var(--text-secondary);font-size:.95rem;line-height:1.7}.player-step-content .highlight{color:var(--text-primary);background:#2dd4bf38;border-radius:4px;padding:2px 6px;font-weight:500}.player-bottom-bar{background:var(--chrome-bg,#0009);border-top:1px solid var(--chrome-border,var(--overlay-weak));flex-shrink:0;align-items:center;padding:12px 20px;display:flex;position:relative}.player-bottom-bar .ask-input-bar{z-index:1;flex-shrink:1;width:min(360px,40%);position:static}.player-course-logo{object-fit:contain;opacity:.85;pointer-events:none;flex-shrink:0;width:auto;max-width:200px;height:auto;max-height:50px;margin-inline-start:auto}.player-nav-controls{z-index:1000;align-items:center;gap:16px;display:flex;position:fixed;bottom:12px;left:50vw;transform:translate(-50%)}.player-tap-zone{z-index:5;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;width:20%;position:absolute;top:0;bottom:0}.player-tap-left{left:0}.player-tap-right{right:0}@media(min-width:768px){.md-hidden{display:none!important}}.module-divider{background:linear-gradient(135deg,var(--background,#1a1a2e)0%,var(--surface-elevated,var(--surface,#16213e))100%);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.player-divider-bg{width:100%;height:100%}.module-divider-content{text-align:center;padding:40px}.module-divider-label{color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:16px;font-size:.9rem}.module-divider-title{background:linear-gradient(90deg,var(--primary,var(--cyan)),var(--secondary,var(--purple)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:3rem;font-weight:700}.course-outline-panel{flex:1;padding:16px 0;overflow-y:auto}.course-outline-heading{letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:0 16px 12px;font-size:.7rem;font-weight:700}.course-outline-module{margin-bottom:8px}.course-outline-module-title{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:6px 16px 4px;font-size:.72rem;font-weight:700}.course-outline-lesson{text-align:left;width:100%;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:8px 16px 8px 20px;font-size:.88rem;line-height:1.4;transition:background .15s,color .15s;display:block}.course-outline-lesson:hover{background:var(--overlay);color:var(--text-primary)}.course-outline-lesson.active{color:var(--primary,var(--cyan));border-left:2px solid var(--primary,var(--cyan));background:#2dd4bf26;padding-left:18px;font-weight:600}.course-outline-answer{color:var(--secondary,var(--purple));padding-left:28px;font-size:.78rem;font-style:italic}.course-outline-answer.active{color:var(--secondary,var(--purple));border-left-color:var(--secondary,var(--purple));background:#34d39926}.course-outline-answer-icon{width:16px;height:16px;color:var(--secondary,var(--purple));background:#34d39940;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin-right:6px;font-size:.6rem;font-style:normal;font-weight:700;display:inline-flex}[dir=rtl] .course-outline-answer{padding-left:16px;padding-right:28px}[dir=rtl] .course-outline-answer-icon{margin-left:6px;margin-right:0}.btn-nav{border:1px solid var(--overlay-stronger);background:var(--overlay);width:44px;height:44px;color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;justify-content:center;align-items:center;font-size:1.6rem;line-height:1;transition:all .2s;display:flex}.btn-nav:hover:not(:disabled){background:var(--overlay-strong);color:var(--text-primary)}.btn-nav:disabled{opacity:.25;cursor:not-allowed}.btn-play-pause{border:2px solid var(--overlay-stronger);background:var(--overlay);width:56px;height:56px;color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;transition:all .2s;display:flex}.btn-play-pause:hover:not(:disabled){border-color:var(--primary,var(--cyan));background:#2dd4bf26;transform:scale(1.08)}.btn-play-pause.active{border-color:var(--primary,var(--cyan));background:#2dd4bf33;box-shadow:0 0 20px #2dd4bf4d}.btn-play-pause.countdown{border-color:var(--secondary,var(--purple));background:#34d39933;box-shadow:0 0 20px #34d3994d}.btn-play-pause.countdown:hover:not(:disabled){border-color:var(--secondary,var(--purple));background:#34d3994d}.btn-play-pause:disabled{opacity:.5;cursor:not-allowed}.play-button-wrapper{width:56px;height:56px;position:relative}.play-button-wrapper .btn-play-pause{z-index:1;position:relative}.countdown-ring{z-index:2;pointer-events:none;width:calc(100% + 8px);height:calc(100% + 8px);position:absolute;inset:-4px}.countdown-ring-bg{fill:none;stroke:var(--overlay);stroke-width:3px}.countdown-ring-fill{fill:none;stroke:var(--secondary,var(--purple));stroke-width:3px;stroke-linecap:round}.settings-toggle-container{border-top:1px solid var(--overlay);margin-top:20px;padding-top:20px}.settings-toggle-label{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-toggle-text{flex-direction:column;gap:4px;display:flex}.settings-toggle-title{color:var(--text,#fff);font-size:.95rem;font-weight:500}.settings-toggle-desc{color:var(--text-muted,#ffffff80);font-size:.8rem}.settings-toggle-switch{flex-shrink:0;position:relative}.settings-toggle-switch input{opacity:0;width:0;height:0;position:absolute}.settings-toggle-track{background:var(--overlay-strong);border-radius:12px;width:44px;height:24px;transition:background .2s;display:block;position:relative}.settings-toggle-switch.active .settings-toggle-track{background:var(--primary,var(--cyan))}.settings-toggle-thumb{background:var(--text-primary);border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:2px;left:2px}.settings-toggle-switch.active .settings-toggle-thumb{transform:translate(20px)}.settings-modal{max-width:520px;padding:56px 32px 32px;position:relative}.settings-modal h2{margin-bottom:4px}.settings-modal>p{margin-bottom:24px}.settings-modal-close{width:32px;height:32px;color:var(--text-muted,#ffffff8c);cursor:pointer;top:14px;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex;position:absolute;inset-inline-start:14px}.settings-modal-close:hover{background:var(--overlay);color:var(--text-primary)}.settings-saving-indicator{text-align:center;color:var(--text-muted,#ffffff80);margin-top:20px;font-size:.85rem}.settings-section+.settings-section{border-top:1px solid var(--overlay);margin-top:24px;padding-top:20px}.settings-section .voice-select-container{margin-bottom:14px}.settings-section .settings-toggle-container{margin-top:14px;padding-top:14px}.settings-section-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted,#ffffff8c);margin:0 0 12px;font-size:.7rem;font-weight:600}.settings-section-subtitle{color:var(--text,#fff);opacity:.7;margin:-8px 0 14px;font-size:.85rem}.settings-logo-row{align-items:center;gap:14px;display:flex}.settings-logo-preview{background:var(--overlay-weak);border:1px dashed var(--overlay-stronger);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.settings-logo-preview img{object-fit:contain;max-width:100%;max-height:100%}.settings-logo-empty{color:var(--text-muted,#fff6);font-size:.7rem}.settings-logo-actions{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.settings-logo-label{color:var(--text,#fff);font-size:.9rem;font-weight:500}.settings-logo-desc{color:var(--text-muted,#ffffff80);margin-bottom:8px;font-size:.75rem;line-height:1.4}.settings-logo-buttons{flex-wrap:wrap;gap:8px;display:flex}.settings-btn-compact{border:1px solid var(--overlay-stronger);background:var(--overlay);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:6px 14px;font-size:.85rem;font-weight:500;transition:background .15s,border-color .15s}.settings-btn-compact:hover:not(:disabled){background:var(--overlay-stronger)}.settings-btn-compact:disabled{opacity:.5;cursor:not-allowed}.settings-btn-compact-danger{color:#ff8a8a;border-color:#ff6b6b4d}.settings-btn-compact-danger:hover:not(:disabled){background:#ff6b6b1f;border-color:#ff6b6b80}.settings-logo-error{color:#ff8a8a;margin-top:6px;font-size:.78rem}[dir=rtl] .player-sidebar-left{border-right:none;border-left:1px solid var(--overlay)}[dir=rtl] .player-sidebar-right{border-left:none;border-right:1px solid var(--overlay)}[dir=rtl] .sidebar-toggle-left{border-left:none;border-right:1px solid var(--overlay);border-radius:6px 0 0 6px;left:0;right:auto}[dir=rtl] .player-sidebar-left.collapsed .sidebar-toggle-left{left:auto;right:4px}[dir=rtl] .sidebar-toggle-right{border-right:none;border-left:1px solid var(--overlay);border-radius:0 6px 6px 0;left:auto;right:0}[dir=rtl] .player-sidebar-right.collapsed .sidebar-toggle-right{left:4px;right:auto}[dir=rtl] .course-outline-lesson{text-align:right;padding:8px 20px 8px 16px}[dir=rtl] .course-outline-lesson.active{border-left:none;border-right:2px solid var(--primary,var(--cyan));padding-left:16px;padding-right:18px}[dir=rtl] .player-step-title,[dir=rtl] .player-step-content{text-align:start}.segmented-progress,.title-dropdown,.outline-drawer,.outline-drawer-backdrop,.mobile-gesture-overlay,.mobile-play-btn,.btn-hamburger{display:none}@media(max-width:768px){.player-desktop-layout,.user-menu,.settings-btn,.app-brand{display:none!important}.segmented-progress{z-index:20;padding:8px 8px 0;padding-top:calc(env(safe-area-inset-top,0px) + 8px);gap:3px;display:flex;position:fixed;top:0;left:0;right:0}.segmented-progress-bar{background:var(--overlay-stronger);border-radius:1.5px;flex:1;height:3px;transition:background .3s}.segmented-progress-bar.completed{background:var(--primary,var(--cyan))}.segmented-progress-bar.active{background:linear-gradient(90deg,var(--primary,var(--cyan)),var(--primary,var(--cyan)))}@supports (color:color-mix(in lab,red,red)){.segmented-progress-bar.active{background:linear-gradient(90deg,var(--primary,var(--cyan)),color-mix(in srgb,var(--primary,var(--cyan))40%,transparent))}}.segmented-progress-bar.active{animation:2s ease-in-out infinite segmented-pulse}@keyframes segmented-pulse{0%,to{opacity:.7}50%{opacity:1}}.mobile-top-bar{z-index:18;background:linear-gradient(to bottom,var(--chrome-bg,#0009)0%,transparent 100%);align-items:center;gap:8px;height:44px;margin-top:16px;display:flex;position:fixed;top:0;left:0;right:0;padding:0 12px!important;padding-top:env(safe-area-inset-top,0px)!important}.mobile-btn-back{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;display:flex;padding:0!important}.btn-hamburger{background:var(--overlay);border:1px solid var(--overlay-stronger);width:36px;height:36px;color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.mobile-gesture-overlay{z-index:8;-webkit-tap-highlight-color:transparent;display:block;position:absolute;inset:0}.mobile-play-btn{z-index:10;background:var(--chrome-bg,#00000073);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--overlay-strong);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;animation:.2s fadeIn;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.title-dropdown{z-index:19;flex:1;justify-content:center;min-width:0;display:flex;position:relative}.title-dropdown-pill{background:var(--overlay);border:1px solid var(--overlay-strong);color:var(--text-primary);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:16px;align-items:center;gap:4px;min-width:0;max-width:100%;padding:4px 12px;font-size:.8rem;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.title-dropdown-pill-active{background:var(--chrome-bg,#000000bf);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-color:var(--overlay-stronger)}.title-dropdown-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.title-dropdown-chevron{opacity:.6;flex-shrink:0;font-size:.75rem;transition:transform .25s;display:inline-block;transform:rotate(90deg)}.title-dropdown-chevron-up{transform:rotate(-90deg)}.title-dropdown-panel{background:var(--chrome-bg,#000000bf);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--overlay);border-radius:16px;max-height:50vh;margin-top:8px;position:absolute;top:100%;left:-28px;right:-28px;overflow-y:auto}.title-dropdown-content{color:var(--text-secondary);padding:16px;font-size:.9rem;line-height:1.6}.title-dropdown-content .highlight{background:var(--primary,var(--cyan))}@supports (color:color-mix(in lab,red,red)){.title-dropdown-content .highlight{background:color-mix(in srgb,var(--primary,var(--cyan))22%,transparent)}}.title-dropdown-content .highlight{color:var(--text-primary);border-radius:4px;padding:2px 6px;font-weight:500}.outline-drawer-backdrop{z-index:25;background:#00000080;display:block;position:fixed;inset:0}.outline-drawer{z-index:26;flex-direction:column;width:280px;transition:transform .3s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.outline-drawer-open{transform:translate(0)}.outline-drawer .course-outline-panel{flex:1;width:100%;padding-top:0;position:relative;overflow-y:auto}.outline-drawer-header{padding:calc(env(safe-area-inset-top,0px) + 16px) 16px 12px;background:var(--chrome-bg,#000000a6);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--overlay);flex-shrink:0}.outline-drawer-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:700;display:block;overflow:hidden}.outline-drawer-footer{padding:12px 16px;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px);border-top:1px solid var(--overlay);background:var(--chrome-bg,#000000a6);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex-shrink:0}.outline-drawer-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:8px;font-size:.78rem;display:block;overflow:hidden}.outline-drawer-signout{background:var(--overlay);border:1px solid var(--overlay-strong);width:100%;color:var(--text-secondary);cursor:pointer;text-align:center;border-radius:8px;padding:8px;font-size:.85rem;display:block}[dir=rtl] .outline-drawer{left:auto;right:0;transform:translate(100%)}[dir=rtl] .outline-drawer-open{transform:translate(0)}[dir=rtl] .mobile-top-bar{padding:0 12px!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.auth-box{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:40px;max-width:420px;width:100%;box-shadow:0 20px 60px #0000004d}.auth-box h1{font-size:2rem;background:linear-gradient(90deg,var(--cyan),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:10px;text-align:center}.auth-box .subtitle{color:var(--text-muted);text-align:center;margin-bottom:30px;font-size:.95rem}.auth-tabs{display:flex;margin-bottom:25px;border-bottom:1px solid rgba(255,255,255,.1)}.auth-tab{flex:1;padding:12px;background:transparent;border:none;color:#888;font-size:1rem;cursor:pointer;transition:all .3s ease;position:relative}.auth-tab:hover{color:var(--text-primary)}.auth-tab.active{color:var(--cyan)}.auth-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--purple))}.form-group{margin-bottom:20px}.form-group label{display:block;color:var(--text-muted);margin-bottom:8px;font-size:.9rem}.form-group input{width:100%;padding:14px 16px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#ffffff0d;color:var(--text-primary);font-size:1rem;outline:none;transition:border-color .3s ease}.form-group input:focus{border-color:var(--cyan)}.form-group input::placeholder{color:#666}.auth-btn{width:100%;padding:14px;border:none;border-radius:10px;background:linear-gradient(135deg,var(--cyan),var(--purple));color:var(--text-primary);font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.auth-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px #2dd4bf4d}.auth-btn:disabled{opacity:.5;cursor:not-allowed}.auth-error{background:#f4433633;border:1px solid rgba(244,67,54,.5);color:var(--error);padding:12px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.auth-success{background:#4caf5033;border:1px solid rgba(76,175,80,.5);color:var(--success);padding:12px;border-radius:8px;margin-bottom:20px;font-size:.9rem}.auth-divider{display:flex;align-items:center;margin:25px 0;color:#666;font-size:.85rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.auth-divider span{padding:0 15px}.social-btn{width:100%;padding:12px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:#ffffff0d;color:var(--text-primary);font-size:.95rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.social-btn:hover{background:#ffffff1a;border-color:#ffffff4d}.social-btn svg{width:20px;height:20px}.user-menu{position:fixed;top:20px;right:70px;display:flex;align-items:center;gap:10px;z-index:100}.user-email{color:var(--text-muted);font-size:.85rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{padding:8px 16px;border:1px solid rgba(255,255,255,.2);border-radius:20px;background:#ffffff0d;color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:#f4433633;border-color:var(--error);color:var(--error)}.hidden{display:none!important}.catalog-container{min-height:100vh;padding:40px 20px 100px;max-width:1200px;margin:0 auto}.catalog-title{font-size:2.8rem;background:linear-gradient(90deg,var(--cyan),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px;font-weight:700}.catalog-subtitle{color:var(--text-muted);font-size:1.15rem}.catalog-error{background:#f4433626;border:1px solid rgba(244,67,54,.5);color:var(--error);padding:16px 20px;border-radius:10px;margin-bottom:24px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.catalog-toolbar-actions{display:flex;align-items:center;gap:8px}.catalog-language-filter{font-size:.85rem;padding:6px 12px;border-radius:8px;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.15);cursor:pointer}.course-card-meta{margin-bottom:10px}.course-card-language{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:28px;margin-bottom:48px}.catalog-empty{grid-column:1 / -1;text-align:center;padding:80px 20px;color:var(--text-muted);font-size:1.1rem;line-height:2}.course-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease;position:relative}.course-card-clickable{cursor:pointer}.course-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0006}.course-card-accent{height:6px;width:100%;background:linear-gradient(90deg,var(--cyan),var(--purple))}.course-card-actions{position:absolute;top:14px;right:14px;display:flex;gap:6px;z-index:2}[dir=rtl] .course-card-actions{right:auto;left:14px}.course-card-icon-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:none;background:#ffffff14;color:#ffffff80;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.course-card-icon-btn:hover{background:#ffffff26;color:#ffffffe6}.course-card-icon-btn-danger:hover{background:#f4433633;color:#f44336e6}.course-card-body{padding:28px}.course-card-title{font-size:1.5rem;font-weight:700;margin-bottom:12px;color:var(--text-primary)}.course-card-description{color:var(--text-muted);line-height:1.6;margin-bottom:24px;font-size:.95rem}.course-card-description:last-child{margin-bottom:0}.course-card-skeleton{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:28px;animation:pulse 1.5s ease-in-out infinite}.skeleton-bar{background:#ffffff14;border-radius:4px}.analytics-dialog{background:var(--surface-1, #1e2035);border:1px solid rgba(255,255,255,.12);border-radius:16px;width:min(860px,96vw);max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.analytics-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.1);gap:12px}.analytics-title{font-size:15px;font-weight:600;color:var(--text-primary)}.analytics-subtitle{font-size:12px;color:var(--text-muted);margin-top:2px}.analytics-loading,.analytics-error,.analytics-empty{padding:40px 24px;text-align:center;color:var(--text-muted);font-size:14px}.analytics-error{color:#f87171}.analytics-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.07)}.analytics-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px 16px}.analytics-card-label{font-size:10px;font-weight:600;color:#ffffff59;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.analytics-card-value{font-size:26px;font-weight:700;line-height:1}.analytics-card-sub{font-size:11px;color:#ffffff4d;margin-top:4px}.analytics-card-purple{color:#a78bfa}.analytics-card-green{color:#4ade80}.analytics-card-amber{color:#fbbf24}.analytics-card-blue{color:#60a5fa}.analytics-table-wrap{flex:1;overflow-y:auto;padding:16px 20px}.analytics-section-label{font-size:10px;font-weight:600;color:#ffffff4d;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.analytics-table{width:100%;border-collapse:collapse;font-size:13px}.analytics-table thead th{text-align:left;font-size:10px;font-weight:600;color:#ffffff4d;text-transform:uppercase;letter-spacing:.06em;padding:0 10px 8px;border-bottom:1px solid rgba(255,255,255,.07)}.analytics-table tbody tr{border-bottom:1px solid rgba(255,255,255,.04)}.analytics-table tbody tr:hover{background:#ffffff08}.analytics-table tbody td{padding:8px 10px;color:#ffffffb3}.analytics-email{font-size:12px;color:#ffffff8c!important}.analytics-dots{display:flex;gap:3px;align-items:center}.analytics-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.analytics-dot-done{background:#6366f1}.analytics-dot-empty{background:#ffffff1f}.learners-dialog{background:var(--surface-1, #1a1b2e);border:1px solid rgba(255,255,255,.12);border-radius:16px;width:min(940px,96vw);max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.learners-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.learners-title{font-size:15px;font-weight:600;color:var(--text-primary)}.learners-subtitle{font-size:12px;color:var(--text-muted);margin-top:2px}.learners-body{display:grid;grid-template-columns:230px 1fr;flex:1;min-height:0;overflow:hidden}.learners-list-panel{border-right:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;overflow:hidden}.learners-search{padding:12px 12px 8px;flex-shrink:0}.learners-search-input{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:7px;padding:6px 10px;color:var(--text-primary);font-size:12px;outline:none}.learners-search-input::placeholder{color:#ffffff40}.learners-list-items{flex:1;overflow-y:auto;padding:4px 8px 8px;display:flex;flex-direction:column;gap:2px}.learners-item{padding:9px 10px;border-radius:8px;cursor:pointer;border:1px solid transparent}.learners-item:hover{background:#ffffff0a}.learners-item.active{background:#6366f11f;border-color:#6366f14d}.learners-item-email{font-size:12px;color:#ffffffb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.learners-item.active .learners-item-email{color:#c7d2fe}.learners-item-meta{font-size:11px;color:#ffffff4d;margin-top:3px;display:flex;gap:6px}.learners-meta-dot{color:#ffffff26}.learners-detail-panel{display:flex;flex-direction:column;overflow:hidden}.learners-detail-top{padding:20px 24px 16px;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0}.learners-identity{display:flex;align-items:center;gap:14px;margin-bottom:16px}.learners-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;color:#fff;flex-shrink:0}.learners-name{font-size:15px;font-weight:600;color:var(--text-primary)}.learners-since{font-size:12px;color:var(--text-muted);margin-top:2px}.learners-summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.learners-course-list{flex:1;overflow-y:auto;padding:16px 24px}.learners-course-rows{display:flex;flex-direction:column;gap:6px}.learners-course-row{display:flex;align-items:center;gap:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:9px;padding:11px 14px}.learners-course-title{flex:1;font-size:13px;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.learners-bar-wrap{width:80px;height:4px;background:#ffffff14;border-radius:2px;overflow:hidden;flex-shrink:0}.learners-bar-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,#6366f1,#8b5cf6)}.learners-pct{font-size:12px;color:#fff6;flex-shrink:0;width:30px;text-align:right}.learners-time{font-size:11px;color:#ffffff4d;flex-shrink:0;width:48px;text-align:right}.learners-sessions{font-size:11px;color:#ffffff40;flex-shrink:0;width:24px;text-align:right}.step-editor-overlay{position:fixed;inset:0;background:#000000d9;z-index:300;display:flex;align-items:stretch}.step-editor-container{display:flex;flex:1;overflow:hidden}.step-editor-panel{width:50%;display:flex;flex-direction:column;background:var(--background, #12131f);border-right:1px solid var(--overlay);overflow-y:auto}.step-editor-panel-header{padding:12px 20px;border-bottom:1px solid var(--overlay);background:var(--surface, #1a1b2e);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.step-editor-panel-header h2{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.step-editor-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.step-editor-header-actions .btn{padding:5px 12px;font-size:.78rem}.step-editor-panel-scroll{flex:1;overflow-y:auto;padding-bottom:16px}.step-editor-field{display:flex;flex-direction:column;gap:8px;padding:16px 20px 0}.step-editor-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.step-editor-textarea{background:var(--surface-elevated, #1e2035);border:1px solid var(--overlay-strong);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-family:inherit;line-height:1.6;padding:12px;resize:vertical;transition:border-color .2s ease;min-height:100px}.step-editor-textarea:focus{outline:none;border-color:var(--overlay-stronger)}.step-editor-code{font-family:Menlo,Monaco,Courier New,monospace;font-size:.82rem;min-height:220px}.step-editor-error{margin:12px 20px 0;padding:10px 14px;background:#f4433626;border:1px solid rgba(244,67,54,.4);border-radius:8px;color:#f44336;font-size:.85rem}.step-editor-model-select{background:var(--surface-elevated, #1e2035);border:1px solid var(--overlay-strong);border-radius:8px;color:var(--text-secondary);font-size:.82rem;padding:6px 10px;cursor:pointer;transition:border-color .2s ease}.step-editor-model-select:focus{outline:none;border-color:var(--overlay-stronger)}.step-editor-model-select:disabled{opacity:.5;cursor:not-allowed}.step-editor-tabs{display:flex;border-bottom:1px solid var(--overlay);background:var(--surface, #1a1b2e);flex-shrink:0}.step-editor-tab{padding:8px 16px;font-size:.78rem;font-weight:600;letter-spacing:.04em;color:var(--text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:color .15s,border-color .15s}.step-editor-tab:hover{color:var(--text-primary)}.step-editor-tab--active{color:#2dd4bf;border-bottom-color:#2dd4bf}.step-editor-tab-content{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:12px 20px}.step-editor-tab-textarea{flex:1;resize:none;min-height:0}.step-editor-narration-sections{flex:1;overflow-y:auto}.step-editor-narration-row-header{display:flex;align-items:center;gap:8px}.step-editor-narration-name-input{flex:1;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text-muted);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-family:inherit;padding:4px 8px;margin-left:-8px;transition:border-color .15s,background .15s,color .15s}.step-editor-narration-name-input:hover{border-color:var(--overlay);color:var(--text-secondary)}.step-editor-narration-name-input:focus{outline:none;background:var(--surface-elevated, #1e2035);border-color:var(--overlay-stronger);color:var(--text-primary)}.step-editor-narration-remove-btn{flex-shrink:0;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--overlay-strong);border-radius:6px;color:var(--text-muted);font-size:1.05rem;line-height:1;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.step-editor-narration-remove-btn:hover{color:#f44336;border-color:#f4433699;background:#f443361a}.step-editor-narration-add-wrap{padding:16px 20px}.step-editor-preview{width:50%;display:flex;flex-direction:column;background:var(--background, #0d0e1a);padding:16px;gap:12px}.step-editor-preview-header{display:flex;align-items:center;justify-content:space-between}.step-editor-preview-label{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin:0}.step-editor-play-btn{padding:6px 14px;font-size:.82rem}.step-editor-preview-illustration{flex:1;border-radius:12px;overflow:hidden;border:1px solid var(--overlay)}.course-completion{position:fixed;inset:0;background:linear-gradient(135deg,var(--background, #1a1a2e) 0%,var(--surface-elevated, var(--surface, #16213e)) 100%);color:var(--text-primary);display:flex;align-items:center;justify-content:center;z-index:50}.course-completion-content{text-align:center;padding:40px;animation:completion-fade-in .6s ease}@keyframes completion-fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.completion-checkmark{width:80px;height:80px;margin:0 auto 32px}.completion-check-svg{width:100%;height:100%}.completion-circle{fill:none;stroke:var(--primary, var(--cyan));stroke-width:2;stroke-dasharray:157;stroke-dashoffset:157;animation:completion-circle-draw .6s ease .2s forwards}@keyframes completion-circle-draw{to{stroke-dashoffset:0}}.completion-check{fill:none;stroke:var(--primary, var(--cyan));stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:48;stroke-dashoffset:48;animation:completion-check-draw .4s ease .7s forwards}@keyframes completion-check-draw{to{stroke-dashoffset:0}}.completion-title{font-size:2.5rem;font-weight:700;background:linear-gradient(90deg,var(--primary, var(--cyan)),var(--secondary, var(--purple)));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px}.completion-course-name{font-size:1.2rem;color:var(--text-primary, #fff);margin-bottom:8px}.completion-subtitle{color:var(--text-muted, rgba(255,255,255,.5));font-size:1rem;margin-bottom:32px}.completion-btn{padding:12px 32px;font-size:1rem}.cp-pane{display:flex;flex-direction:column;height:100%;min-height:0;color:#e0e0e0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.cp-head{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08)}.cp-avatar{width:26px;height:26px;border-radius:8px;flex-shrink:0;background:linear-gradient(135deg,#2dd4bf,#34d399);display:flex;align-items:center;justify-content:center;font-size:.9rem}.cp-head-title{font-weight:700;font-size:.9rem;color:#fff}.cp-head-sub{font-size:.68rem;color:#6b6d80}.cp-head-spacer{flex:1}.cp-icon-btn{width:30px;height:30px;border-radius:8px;border:none;background:none;color:#a0a0a0;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.cp-icon-btn:hover{background:#ffffff14;color:#fff}.cp-history{border-bottom:1px solid rgba(255,255,255,.08);background:#00000040;padding:8px;max-height:240px;overflow-y:auto}.cp-history-title{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:#6b6d80;padding:4px 8px}.cp-history-empty{font-size:.78rem;color:#6b6d80;padding:8px}.cp-history-item{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:8px 10px;border-radius:8px;border:none;background:none;cursor:pointer}.cp-history-item:hover{background:#ffffff0d}.cp-history-item-title{font-size:.82rem;color:#e0e0e0;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp-history-item-meta{font-size:.7rem;color:#6b6d80}.cp-messages{flex:1;overflow-y:auto;padding:16px 14px;display:flex;flex-direction:column;gap:14px}.cp-empty{color:#6b6d80;font-size:.84rem;line-height:1.5;text-align:center;margin:auto 12px}.cp-msg{display:flex;flex-direction:column;gap:4px;max-width:94%}.cp-msg--user{align-self:flex-end;align-items:flex-end}.cp-msg--ai{align-self:flex-start}.cp-bubble{font-size:.86rem;line-height:1.5;padding:10px 13px;border-radius:14px;white-space:pre-wrap;word-break:break-word}.cp-msg--user .cp-bubble{background:#2dd4bf24;border:1px solid rgba(45,212,191,.25);color:#fff;border-bottom-right-radius:4px}.cp-msg--ai .cp-bubble{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#e0e0e0;border-bottom-left-radius:4px}.cp-silent-ctx{font-size:.66rem;color:#6b6d80}.cp-agent-tag{font-size:.66rem;font-weight:600;color:#34d399}.cp-agent-arrow{color:#6b6d80}.cp-thinking{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#a0a0a0;font-style:italic}.cp-spin{width:12px;height:12px;border:2px solid rgba(45,212,191,.3);border-top-color:#2dd4bf;border-radius:50%;animation:cp-spin .7s linear infinite}@keyframes cp-spin{to{transform:rotate(360deg)}}.cp-error{font-size:.8rem;color:#ff9b92;background:#f443361a;border:1px solid rgba(244,67,54,.25);border-radius:8px;padding:8px 10px}.cp-card{border:1px solid rgba(52,211,153,.3);background:linear-gradient(180deg,#34d3990f,#ffffff05);border-radius:12px;overflow:hidden}.cp-card-head{padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.08)}.cp-card-title{font-size:.78rem;font-weight:600;color:#fff}.cp-card-body{padding:8px 10px;display:flex;flex-direction:column;gap:10px}.cp-hunk{display:flex;flex-direction:column;gap:4px}.cp-hunk-head{display:flex;align-items:center;gap:8px}.cp-hunk-target{font-size:.62rem;color:#6b6d80;background:#ffffff0d;padding:1px 6px;border-radius:4px;font-family:JetBrains Mono,ui-monospace,monospace}.cp-hunk-status{font-size:.62rem;color:#4caf50}.cp-hunk-status--fail{color:#fc0}.cp-hunk-note{color:#a0a0a0;font-size:.76rem;line-height:1.4}.cp-diff{border-radius:6px;overflow:hidden}.cp-diff-line{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.72rem;line-height:1.5;padding:1px 8px;white-space:pre-wrap;word-break:break-word}.cp-diff-del{background:#f443361a;color:#ff9b92}.cp-diff-del:before{content:"− ";color:#f44336}.cp-diff-add{background:#4caf501f;color:#b6f0b8}.cp-diff-add:before{content:"+ ";color:#4caf50}.cp-card-actions{display:flex;gap:8px;padding:10px 12px;border-top:1px solid rgba(255,255,255,.08)}.cp-card-foot{padding:9px 12px;border-top:1px solid rgba(255,255,255,.08);font-size:.78rem;color:#a0a0a0}.cp-card-foot--ok{color:#4caf50}.cp-card-foot--muted{color:#6b6d80}.cp-btn{font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:8px;cursor:pointer;border:1px solid var(--border, rgba(255, 255, 255, .14));background:var(--overlay, rgba(255, 255, 255, .05));color:var(--text-secondary, #e0e0e0)}.cp-btn-apply{border:none;background:var(--primary, #2dd4bf);color:#06251f}.cp-btn-apply:hover{filter:brightness(1.08)}.cp-btn-ghost:hover{color:var(--text-primary, #fff)}.cp-btn:disabled{opacity:.5;cursor:default}.cp-composer{border-top:1px solid rgba(255,255,255,.08);padding:12px 14px}.cp-input-row{display:flex;align-items:flex-end;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:8px 8px 8px 12px}.cp-input-row:focus-within{border-color:#2dd4bf80}.cp-textarea{flex:1;background:none;border:none;outline:none;resize:none;color:#fff;font-family:inherit;font-size:.86rem;line-height:1.4;max-height:120px}.cp-textarea::placeholder{color:#6b6d80}.cp-textarea:disabled{color:#6b6d80}.cp-send-btn{width:32px;height:32px;border-radius:9px;border:none;flex-shrink:0;background:linear-gradient(135deg,#2dd4bf,#34d399);color:#07221d;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.cp-send-btn:disabled{opacity:.5;cursor:default}.cp-hint{font-size:.66rem;color:#6b6d80;margin-top:6px;text-align:right}.cp-code-block{background:#0b0c14;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;margin-bottom:12px}.cp-code-head{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.7rem;color:#a0a0a0;padding:7px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:#ffffff05}.cp-code-block pre{padding:12px 14px;overflow-x:auto;max-height:320px;overflow-y:auto;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.74rem;line-height:1.6;color:#cdd3e0;white-space:pre}.cp-narr-empty{font-size:.8rem;color:var(--text-muted, #6b6d80)}.cp-narr-section{margin-bottom:12px}.cp-narr-section:last-child{margin-bottom:0}.cp-narr-key{display:inline-block;font-family:var(--font-mono, "JetBrains Mono", ui-monospace, monospace);font-size:.66rem;color:var(--primary, #34d399);background:var(--overlay, rgba(255, 255, 255, .08));padding:1px 7px;border-radius:5px;margin-bottom:4px}.cp-narr-text{font-size:.82rem;line-height:1.6;color:var(--text-primary, #e0e0e0)}.cp-narr-placeholder{color:var(--text-muted, #6b6d80);font-style:italic}.cp-editable-view{cursor:text;border-radius:6px;transition:background .12s}.cp-editable-view:hover{background:var(--overlay, rgba(255, 255, 255, .05))}.cp-editable-edit{padding:6px}.cp-edit-area{width:100%;background:var(--overlay, rgba(255, 255, 255, .06));border:1px solid var(--primary, rgba(45, 212, 191, .5));border-radius:8px;padding:8px 10px;color:var(--text-primary, #fff);font-family:inherit;font-size:.82rem;line-height:1.5;resize:vertical;outline:none}.cp-edit-mono{font-family:var(--font-mono, "JetBrains Mono", ui-monospace, monospace);font-size:.74rem}.cp-edit-actions{display:flex;gap:8px;margin-top:8px}.cp-hook-chip{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin:0 2px;font-family:var(--font-mono, "JetBrains Mono", ui-monospace, monospace);font-size:.62rem;font-weight:700;color:var(--primary, #34d399);background:var(--overlay, rgba(255, 255, 255, .1));border:1px solid var(--border, rgba(255, 255, 255, .2));border-radius:5px;vertical-align:baseline;cursor:help}.cp-hook-chip:hover{background:var(--overlay-strong, rgba(255, 255, 255, .16))}.cp-kp-row{display:flex;align-items:flex-start;gap:6px}.cp-kp-row .cp-editable-view,.cp-kp-row .cp-editable-edit{flex:1;min-width:0}.cp-kp-del{flex-shrink:0;background:none;border:none;color:var(--text-muted, #6b6d80);cursor:pointer;font-size:.9rem;line-height:1;padding:2px 5px;border-radius:4px}.cp-kp-del:hover{color:#ff9b92;background:#f443361f}.cp-kp-add{margin-top:8px;background:none;border:1px dashed var(--border, rgba(255, 255, 255, .2));color:var(--text-secondary, #a0a0a0);font-size:.78rem;padding:4px 10px;border-radius:7px;cursor:pointer}.cp-kp-add:hover{color:var(--text-primary, #fff)}.cp-slide-list{padding:2px 0 8px}.cp-slide-muted{font-size:.78rem;color:var(--text-muted, #6b6d80);padding:4px 16px 4px 28px}.cp-outline-step{display:flex;align-items:center;gap:6px;width:100%;text-align:left;font-size:.82rem;color:var(--text-secondary, #a0a0a0);padding:5px 12px 5px 26px;border:none;background:none}.cp-outline-step:hover{background:var(--overlay, rgba(255, 255, 255, .06));color:var(--text-primary, #fff)}.cp-outline-step--active{background:#2dd4bf26;color:var(--primary, #2dd4bf)}.cp-outline-step-icon{width:16px;text-align:center;flex-shrink:0;font-size:.8rem}.cp-outline-step-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.cp-drag-handle{flex-shrink:0;color:var(--text-muted, #5a5c70);font-size:.78rem;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;line-height:1}.cp-drag-handle:active{cursor:grabbing}.cp-outline-step-btn{flex-shrink:0;opacity:0;background:none;border:none;color:var(--text-muted, #6b6d80);font-size:.9rem;line-height:1;padding:2px 5px;border-radius:4px;cursor:pointer;transition:opacity .12s}.cp-outline-step:hover .cp-outline-step-btn{opacity:1}.cp-outline-step-btn:hover{background:var(--overlay-strong, rgba(255, 255, 255, .12));color:var(--text-primary, #fff)}.cp-outline-step-del:hover{color:#ff9b92;background:#f443361f}.cp-name-row{position:relative}.cp-name-edit-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);opacity:0;background:none;border:none;cursor:pointer;line-height:1;color:var(--text-muted, #6b6d80);font-size:.82rem;padding:3px 5px;border-radius:4px;transition:opacity .12s}.cp-name-row:hover .cp-name-edit-btn{opacity:1}.cp-name-edit-btn:hover{background:var(--overlay, rgba(255, 255, 255, .1));color:var(--text-primary, #fff)}.cp-outline-name-input{display:block;width:100%;box-sizing:border-box;background:var(--overlay, rgba(255, 255, 255, .08));border:1px solid rgba(45,212,191,.5);border-radius:6px;color:var(--text-primary, #fff);font-family:inherit;font-size:.88rem;padding:6px 8px;margin:2px 8px;outline:none}.player-copilot-code{width:100%;height:100%;overflow-y:auto;padding:16px 18px}.player-copilot-narration{flex-shrink:0;max-height:30vh;overflow-y:auto;padding:12px 18px;border-top:1px solid var(--chrome-border, rgba(255, 255, 255, .1));background:var(--chrome-bg, rgba(0, 0, 0, .35))}.cp-narr-strip-title{font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted, #6b6d80);margin-bottom:8px}.player-code-toggle{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:10px;cursor:pointer;border:1px solid var(--chrome-border, rgba(255, 255, 255, .14));background:var(--overlay-weak, rgba(255, 255, 255, .06));color:var(--text-secondary, #e0e0e0)}.player-code-toggle:hover{background:var(--overlay, rgba(255, 255, 255, .1));color:var(--text-primary, #fff)}.player-code-toggle.active{background:#2dd4bf33;color:var(--primary, #2dd4bf);border-color:#2dd4bf73}.builder-theme-picker{display:inline-flex;align-items:center;gap:8px;margin-right:8px;font-size:.85rem;color:var(--text-muted)}.builder-theme-picker__select{background:#ffffff14;color:var(--text-primary);border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:6px 10px;font-size:.85rem;cursor:pointer}.builder-theme-picker__select:disabled{opacity:.6;cursor:progress}.builder-theme-picker__manage{background:#ffffff14;color:var(--text-primary);border:1px solid rgba(255,255,255,.18);border-radius:8px;width:30px;height:30px;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.builder-theme-picker__manage:hover{background:#ffffff24}.themes-manager-overlay{position:fixed;inset:0;background:#000c;z-index:400;display:flex;align-items:center;justify-content:center;padding:24px}.themes-manager-dialog{background:#1e2035;border:1px solid rgba(255,255,255,.15);border-radius:16px;width:min(1280px,100%);height:min(840px,95vh);display:flex;flex-direction:column;overflow:hidden}.themes-manager-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.1);font-weight:600}.themes-manager-body{flex:1;display:grid;grid-template-columns:220px 1fr 1fr;min-height:0}.themes-manager-list{border-right:1px solid rgba(255,255,255,.1);padding:14px;display:flex;flex-direction:column;gap:10px;overflow-y:auto}.themes-manager-list ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.themes-manager-new{width:100%}.themes-manager-list-item{width:100%;text-align:left;background:transparent;border:1px solid transparent;color:var(--text-primary);padding:8px 10px;border-radius:8px;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:space-between;gap:8px}.themes-manager-list-item:hover{background:#ffffff0f}.themes-manager-list-item.active{background:#ffffff1a;border-color:#ffffff2e}.themes-manager-list-mode{font-size:.7rem;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.themes-manager-list-mode.mode-dark{background:#6366f140;color:#c7d2fe}.themes-manager-list-mode.mode-light{background:#fbbf2433;color:#fde68a}.themes-manager-editor{display:flex;flex-direction:column;padding:16px;gap:12px;min-height:0;border-right:1px solid rgba(255,255,255,.1)}.themes-manager-row{display:flex;gap:12px}.themes-manager-row label{flex:1;display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--text-muted)}.themes-manager-row input,.themes-manager-row select{background:#ffffff0f;border:1px solid rgba(255,255,255,.16);color:var(--text-primary);border-radius:8px;padding:8px 10px;font-size:.9rem}.themes-manager-hint{font-size:.75rem;color:var(--text-muted)}.themes-manager-hint code{background:#ffffff14;padding:1px 5px;border-radius:4px;font-family:var(--font-mono);font-size:.7rem}.themes-manager-css{flex:1;min-height:240px;background:#0d0f1a;color:#e5e7eb;font-family:var(--font-mono);font-size:.82rem;line-height:1.55;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:12px;resize:none;white-space:pre;tab-size:2}.themes-manager-css:focus{outline:none;border-color:#6366f199}.themes-manager-error{background:#f4433626;border:1px solid rgba(244,67,54,.4);color:#fecaca;padding:8px 12px;border-radius:8px;font-size:.8rem}.themes-manager-actions{display:flex;gap:8px}.themes-manager-actions .btn-danger{margin-left:auto;background:#f4433633;color:#fecaca;border:1px solid rgba(244,67,54,.5)}.themes-manager-actions .btn-danger:hover:not(:disabled){background:#f443364d}.themes-manager-actions .btn-danger:disabled{opacity:.4;cursor:not-allowed}.themes-manager-preview-wrap{padding:16px;display:flex;flex-direction:column;gap:8px;min-height:0}.themes-manager-preview-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.themes-manager-preview{flex:1;display:grid;grid-template-columns:200px 1fr;background:var(--background);border:1px solid var(--border);border-radius:12px;overflow:hidden;color:var(--text-primary);min-height:0}.themes-manager-preview-sidebar{background:var(--surface);border-right:1px solid var(--border);padding:14px;display:flex;flex-direction:column;gap:6px}.themes-manager-preview-sidebar-title{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.themes-manager-preview-sidebar-item{padding:7px 10px;border-radius:6px;font-size:.8rem;color:var(--text-secondary);background:var(--overlay-weak)}.themes-manager-preview-sidebar-item.active{background:var(--overlay);color:var(--text-primary)}.themes-manager-preview-main{padding:18px;display:flex;flex-direction:column;gap:12px;overflow-y:auto}.themes-manager-preview-main .step-title{font-size:1.4rem;color:var(--primary);margin:0}.themes-manager-preview-main .step-content{font-size:.95rem;line-height:1.6;color:var(--text-secondary)}.themes-manager-preview-main .step-content .highlight{background:color-mix(in srgb,var(--primary) 22%,transparent);color:var(--text-primary);padding:1px 6px;border-radius:4px}.themes-manager-preview-main .key-points{background:color-mix(in srgb,var(--primary) 12%,transparent);border:1px solid var(--border);border-radius:10px;padding:12px 16px;font-size:.85rem}.themes-manager-preview-main .key-points strong{display:block;margin-bottom:6px;color:var(--text-primary)}.themes-manager-preview-main .key-points ul{margin:0;padding-left:18px;color:var(--text-secondary)}.themes-manager-preview-buttons{display:flex;gap:10px}.themes-manager-preview-buttons .btn-primary{background:var(--primary);color:var(--on-primary);border:none;padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer}.themes-manager-preview-buttons .btn-secondary{background:var(--overlay);color:var(--text-primary);border:1px solid var(--border);padding:8px 16px;border-radius:8px;cursor:pointer}.themes-manager-preview-chips{display:flex;gap:8px;flex-wrap:wrap}.themes-manager-preview-chip{font-size:.75rem;padding:4px 10px;border-radius:999px;font-weight:600}.themes-manager-preview-chip.success{background:color-mix(in srgb,var(--accent-success) 22%,transparent);color:var(--accent-success)}.themes-manager-preview-chip.warn{background:color-mix(in srgb,var(--accent-warning) 22%,transparent);color:var(--accent-warning)}.themes-manager-preview-chip.warm{background:color-mix(in srgb,var(--accent-warm) 22%,transparent);color:var(--accent-warm)}@media(max-width:960px){.themes-manager-body{grid-template-columns:180px 1fr}.themes-manager-preview-wrap{display:none}}.builder-overlay{position:fixed;inset:0;background:#000000d9;z-index:200;display:flex;align-items:stretch}.builder-confirm-overlay{position:absolute;inset:0;background:#000000b3;z-index:300;display:flex;align-items:center;justify-content:center}.builder-confirm-dialog{background:#1e2035;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:32px;max-width:400px;width:90%;text-align:center}.builder-confirm-dialog h3{font-size:1.4rem;margin-bottom:12px;color:#fff}.builder-confirm-dialog p{color:var(--text-muted);margin-bottom:24px}.builder-confirm-actions{display:flex;gap:12px;justify-content:center}.builder-container{display:flex;flex-direction:column;flex:1;overflow:hidden;background:#12131f}.builder-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid rgba(255,255,255,.1);background:#1a1b2e}.builder-title{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.1rem;color:#fff}.builder-phase-badge{font-size:.75rem;padding:3px 10px;border-radius:12px;font-weight:600}.phase-analysis{background:#2dd4bf33;color:#2dd4bf}.phase-design{background:#34d39933;color:#6ee7b7}.phase-development{background:#ffc10733;color:#ffc107}.phase-implementation{background:#4caf5033;color:#4caf50}.builder-header-actions{display:flex;align-items:center}.builder-tabs-mobile{display:none;border-bottom:1px solid rgba(255,255,255,.08)}@media(max-width:768px){.builder-tabs-mobile{display:flex}}.builder-tab{flex:1;padding:12px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:.9rem;transition:all .2s ease}.builder-tab.active{color:var(--cyan);border-bottom:2px solid var(--cyan)}.builder-body{display:flex;flex:1;overflow:hidden}.builder-chat-panel{display:flex;flex-direction:column;flex:0 0 40%;border-right:1px solid rgba(255,255,255,.08);overflow:hidden}.builder-preview-panel{flex:1;overflow-y:auto;padding:24px}@media(max-width:768px){.builder-chat-panel,.builder-preview-panel{flex:1}.builder-panel-hidden{display:none}}.builder-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px}.builder-message{display:flex}.builder-message-user{justify-content:flex-end}.builder-message-assistant{justify-content:flex-start}.builder-message-bubble{max-width:80%;padding:12px 16px;border-radius:16px;font-size:.9rem;line-height:1.6}.builder-message-user .builder-message-bubble{background:#2dd4bf26;border:1px solid rgba(45,212,191,.25);color:#e0e0e0}.builder-message-assistant .builder-message-bubble{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#e0e0e0}.builder-thinking{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-style:italic}.builder-error{background:#f4433626;border:1px solid rgba(244,67,54,.3);color:var(--error);padding:10px 14px;border-radius:8px;font-size:.85rem}.builder-input-area{border-top:1px solid rgba(255,255,255,.08);padding:16px}.builder-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.builder-suggestion-chip{background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:20px;color:#e0e0e0;font-size:.82rem;padding:6px 14px;cursor:pointer;transition:background .15s,border-color .15s;line-height:1.3}.builder-suggestion-chip:hover{background:#ffffff1f;border-color:#ffffff4d}.builder-input-container{display:flex;gap:8px;align-items:flex-end}.chat-attach{margin-bottom:8px}.chat-attach-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.chat-attach-chip{display:inline-flex;align-items:center;gap:4px;background:#2dd4bf1f;border:1px solid rgba(45,212,191,.35);color:var(--text-primary);font-size:.78rem;padding:3px 8px;border-radius:14px;max-width:220px}.chat-attach-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.chat-attach-chip-remove{background:none;border:none;color:var(--text-muted);font-size:.95rem;cursor:pointer;padding:0 2px;line-height:1}.chat-attach-chip-remove:hover{color:var(--error)}.chat-attach-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.chat-attach-btn{background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text-muted);font-size:.78rem;padding:4px 10px;cursor:pointer;transition:color .15s,border-color .15s}.chat-attach-btn:hover:not(:disabled){color:var(--cyan);border-color:#2dd4bf4d}.chat-attach-btn:disabled{opacity:.5;cursor:not-allowed}.chat-attach-url-input{flex:1;min-width:160px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:var(--text-primary);font-size:.82rem;padding:4px 8px}.chat-attach-error{font-size:.78rem;color:var(--error);margin-top:4px}.builder-textarea{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:10px 14px;color:#fff;font-size:.9rem;resize:none;font-family:inherit;transition:border-color .2s ease}.builder-textarea:focus{outline:none;border-color:#2dd4bf66}.builder-textarea:disabled{opacity:.5}.builder-send-btn{padding:10px 20px;background:linear-gradient(135deg,var(--cyan),var(--purple));border:none;border-radius:10px;color:#fff;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .2s ease}.builder-send-btn:disabled{opacity:.4;cursor:not-allowed}.builder-hint{color:var(--text-muted);font-size:.75rem;margin-top:6px;text-align:right}.builder-preview-placeholder{display:flex;align-items:center;justify-content:center;height:100%;min-height:300px;color:var(--text-muted);text-align:center;font-size:1rem;padding:40px}.spec-form{display:flex;flex-direction:column;height:100%}.spec-form-header{padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:20px}.spec-form-title{font-size:1.15rem;font-weight:700;color:#fff;margin:0 0 6px}.spec-form-subtitle{font-size:.85rem;color:var(--text-muted);margin:0}.spec-form-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:18px;padding-bottom:20px}.spec-field-label{display:block;font-size:.78rem;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.spec-field-input{width:100%;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:9px 12px;color:#fff;font-size:.88rem;font-family:inherit;transition:border-color .2s}.spec-field-input:focus{outline:none;border-color:#2dd4bf66}.spec-field-input:disabled{opacity:.5}.spec-field-select{flex:1;min-width:0;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:9px 12px;color:#fff;font-size:.88rem;font-family:inherit;cursor:pointer;transition:border-color .2s;appearance:none}.spec-field-select:focus{outline:none;border-color:#2dd4bf66}.spec-field-select:disabled{opacity:.5}.spec-field-custom{display:flex;gap:6px;align-items:stretch}.spec-field-custom .spec-field-input{flex:1;min-width:0}.spec-field-toggle{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text-muted);font-size:.85rem;width:36px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.spec-field-toggle:hover{background:#ffffff1a;color:#fff}.spec-field-toggle:disabled{opacity:.4;cursor:not-allowed}.spec-objectives{display:flex;flex-direction:column;gap:8px}.spec-objective-row{display:flex;gap:6px;align-items:center}.spec-objective-row .spec-field-input{flex:1}.spec-objective-remove{background:none;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:var(--text-muted);font-size:1.1rem;width:30px;height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s}.spec-objective-remove:hover{color:var(--error);border-color:#f443364d}.spec-objective-add{background:none;border:1px dashed rgba(255,255,255,.15);border-radius:8px;color:var(--text-muted);font-size:.82rem;padding:7px 12px;cursor:pointer;transition:color .15s,border-color .15s}.spec-objective-add:hover{color:var(--cyan);border-color:#2dd4bf4d}.spec-field-subtitle{font-size:.78rem;color:var(--text-muted);margin:0 0 8px}.references-empty{font-size:.82rem;color:var(--text-muted);font-style:italic;padding:6px 2px}.references-row{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.08);background:#ffffff05}.references-icon{font-size:1rem;line-height:1.3;flex-shrink:0}.references-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.references-name{font-size:.88rem;color:var(--text-primary);word-break:break-word}.references-url{font-size:.78rem;color:var(--cyan);text-decoration:none;word-break:break-all}.references-url:hover{text-decoration:underline}.references-summary{font-size:.78rem;color:var(--text-muted);line-height:1.4}.references-badge{font-size:.65rem;font-weight:600;letter-spacing:.04em;padding:2px 6px;border-radius:4px;background:#7b2ff72e;color:var(--purple);align-self:flex-start}.references-add-row{display:flex;gap:6px;align-items:stretch;margin-top:6px}.references-add-row .spec-field-input{flex:1;min-width:0}.references-error{font-size:.78rem;color:var(--error);padding:4px 2px}.spec-form-footer{padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.spec-approve-btn{width:100%;padding:12px 24px;font-size:.95rem;font-weight:600;border-radius:10px;background:linear-gradient(135deg,var(--cyan),var(--purple));border:none;color:#fff;cursor:pointer;transition:opacity .2s}.spec-approve-btn:disabled{opacity:.5;cursor:not-allowed}.builder-illustration-preview{margin-top:24px;height:300px;border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.builder-success{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:300px;text-align:center;gap:16px}.builder-success h3{font-size:2rem;color:var(--success)}.builder-success p{color:var(--text-muted)}.outline-editor{display:flex;flex-direction:column;gap:16px}.outline-header{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px}.outline-title{font-size:1.4rem;font-weight:700;color:var(--cyan);margin-bottom:8px}.outline-description{color:var(--text-muted);font-size:.9rem;line-height:1.5}.outline-audience{color:var(--text-muted);font-size:.85rem;margin-top:8px}.outline-audience span{color:var(--purple);font-weight:600}.outline-modules{display:flex;flex-direction:column;gap:10px}.outline-module{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.outline-module-header{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff08}.outline-module-header:hover{background:#ffffff0f}.outline-module-toggle{color:var(--text-muted);font-size:.8rem;width:16px}.outline-module-num{color:var(--purple);font-size:.8rem;font-weight:600;white-space:nowrap}.outline-module-input{flex:1;background:transparent;border:none;color:#fff;font-size:.95rem;font-weight:600;font-family:inherit;cursor:text}.outline-module-input:focus{outline:none}.outline-lessons{padding:8px 16px 12px;display:flex;flex-direction:column;gap:6px}.outline-module-description{color:var(--text-muted);font-size:.82rem;line-height:1.45;padding:2px 10px 8px;margin:0}.outline-lesson-block{display:flex;flex-direction:column}.outline-lesson{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;background:#ffffff05}.outline-lesson-objectives{margin:2px 0 4px 40px;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}.outline-lesson-objectives li{color:var(--text-muted);font-size:.78rem;line-height:1.4;padding-left:12px;position:relative}.outline-lesson-objectives li:before{content:"·";position:absolute;left:0;color:var(--purple);font-weight:700}.outline-lesson-refs{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0 24px}.outline-lesson-ref{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;padding:2px 8px;border-radius:10px;background:#7b2ff71f;border:1px solid rgba(123,47,247,.3);color:var(--text-primary);max-width:280px}.outline-lesson-ref-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.outline-lesson-ref-note{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-style:italic}.outline-lesson-ref-note:before{content:"— ";margin:0 2px 0 4px}.lesson-refs-section{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08)}.lesson-refs-row{display:flex;align-items:center;gap:6px;padding:4px 0}.lesson-refs-name{font-size:.82rem;color:var(--text-primary);flex-shrink:0;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-refs-row .spec-field-input{flex:1;min-width:0}.lesson-refs-attach{display:flex;gap:6px}.outline-lesson-num{color:var(--text-muted);font-size:.8rem;width:20px;text-align:right}.outline-lesson-input{flex:1;background:transparent;border:none;color:#e0e0e0;font-size:.85rem;font-family:inherit}.outline-lesson-input:focus{outline:none}.content-preview-pane h1,.content-preview-pane h2,.content-preview-pane h3,.content-preview-pane h4{color:#fff;margin:.6em 0 .3em}.content-preview-pane h1{font-size:1.3rem}.content-preview-pane h2{font-size:1.15rem}.content-preview-pane h3{font-size:1.05rem}.content-preview-pane p{margin:.4em 0}.content-preview-pane ul,.content-preview-pane ol{padding-left:1.4em;margin:.4em 0}.content-preview-pane li{margin:.2em 0}.content-preview-pane strong{color:#fff}.content-preview-pane code{background:#ffffff14;padding:1px 5px;border-radius:4px;font-size:.85em}.content-preview-pane pre{background:#ffffff0f;padding:10px;border-radius:6px;overflow-x:auto;font-size:.82em}.outline-generate-btn{width:28px;height:28px;border-radius:6px;background:#2dd4bf1a;border:1px solid rgba(45,212,191,.2);color:var(--cyan);cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.outline-generate-btn:hover:not(:disabled){background:#2dd4bf33}.outline-generate-btn.generated{background:#4caf5033;border-color:#4caf5066;color:var(--success)}.outline-generate-btn:disabled{opacity:.5;cursor:not-allowed}.content-progress-list{padding:16px 20px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1}.content-progress-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#ffffff0a;border-radius:8px;border:1px solid rgba(255,255,255,.06)}.content-progress-status{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.experience-builder{padding:20px;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.experience-module{border:1px solid rgba(255,255,255,.1);border-radius:10px;overflow:hidden;flex-shrink:0}.experience-module-title{padding:12px 16px;background:#ffffff0f;font-weight:600;font-size:.9rem;color:var(--cyan);letter-spacing:.02em}.experience-lesson-row{padding:10px 16px;border-top:1px solid rgba(255,255,255,.05)}.experience-lesson-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:32px}.experience-lesson-title{font-size:.875rem;color:var(--text-secondary);flex:1;min-width:0}.experience-planned-badge{color:var(--text-muted);font-size:.8rem;flex-shrink:0}.experience-planning-status{display:flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.8rem;flex-shrink:0}.experience-components{margin-top:8px;padding-left:12px;display:flex;flex-direction:column;gap:6px}.experience-component-item{display:flex;align-items:center;gap:8px;padding:7px 12px;background:#ffffff08;border-radius:6px;font-size:.82rem;border:1px solid rgba(255,255,255,.04)}.component-type-tag{color:var(--text-muted);font-family:monospace;font-size:.78rem;flex-shrink:0}.component-title{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary)}.component-actions{display:flex;align-items:center;flex-shrink:0}.status-done,.status-saved{color:var(--success);font-size:.8rem;font-weight:600}.btn-plan,.btn-generate-svg{padding:4px 12px;font-size:.8rem;border-radius:6px;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s;flex-shrink:0}.btn-plan:disabled,.btn-generate-svg:disabled{opacity:.4;cursor:not-allowed}.btn-plan{background:#2dd4bf1f;color:var(--cyan);border:1px solid rgba(45,212,191,.25)}.btn-plan:hover:not(:disabled){background:#2dd4bf38;border-color:#2dd4bf73}.btn-generate-svg{background:#34d3991f;color:var(--purple);border:1px solid rgba(52,211,153,.25)}.btn-generate-svg:hover:not(:disabled){background:#34d39938;border-color:#34d39973}.experience-translate-section{border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:16px;margin-top:8px;flex-shrink:0}.experience-translate-header{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.experience-translate-controls{display:flex;gap:10px;align-items:center}.experience-translate-select{flex:1;padding:8px 12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:var(--text-primary);font-size:.875rem;outline:none}.experience-translate-select:focus{border-color:var(--cyan)}.experience-translate-select option{background:#1a1a2e}.experience-translate-progress{margin-top:12px;display:flex;flex-direction:column;gap:4px}@media print{.builder-overlay{position:static;background:none;display:block}.builder-container{overflow:visible;background:#fff;color:#000}.builder-header,.builder-chat-panel,.builder-tabs-mobile,.builder-header-actions{display:none!important}.builder-body{display:block;overflow:visible}.builder-preview-panel{overflow:visible;width:100%}.experience-builder{overflow:visible;padding:0;min-height:auto}.experience-module{break-inside:avoid;overflow:visible;border-color:#ccc}.experience-lesson-row{break-inside:avoid}.content-progress-list{overflow:visible}}
