@import"https://fonts.googleapis.com/css2?family=Merriweather:ital,wght@0,300;0,400;0,700;1,400&family=Inter:wght@400;500;600;700&display=swap";:root{--color-primary: #ea580c;--color-primary-dark: #c2410c;--color-secondary: #0f172a;--color-text-main: #111827;--color-text-muted: #4b5563;--color-bg-light: #fff7ed;--color-bg-white: #ffffff;--color-border: #e5e7eb;--font-heading: "Merriweather", serif;--font-body: "Inter", sans-serif}.landing-page{min-height:100vh;background-color:var(--color-bg-white);color:var(--color-text-main);font-family:var(--font-body);overflow-x:hidden}.landing-nav{display:flex;justify-content:space-between;align-items:center;padding:.8rem 5%;max-width:1400px;margin:0 auto;border-bottom:1px solid var(--color-border);background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:100}.nav-brand{display:flex;align-items:center;gap:12px;text-decoration:none}.nav-logo-img{height:38px;width:auto;object-fit:contain}.nav-buttons{display:flex;gap:16px;align-items:center}.nav-link{color:var(--color-text-muted);text-decoration:none;font-weight:500;transition:color .2s}.nav-link:hover{color:var(--color-primary)}.nav-btn{padding:8px 20px;border-radius:4px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;font-family:var(--font-body)}.nav-btn.primary{background-color:var(--color-secondary);color:#fff;border:2px solid var(--color-secondary)}.nav-btn.primary:hover{background-color:var(--color-primary);border-color:var(--color-primary)}.hero-section{max-width:1400px;margin:0 auto;padding:20px 5% 40px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;min-height:calc(100vh - 140px)}.hero-content{animation:fadeIn 1s ease-out}.hero-supertitle{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--color-primary);margin-bottom:16px;display:block;font-size:.85rem}.hero-title{font-family:var(--font-heading);font-size:3.5rem;font-weight:900;line-height:1.1;color:var(--color-secondary);margin:0 0 24px}.hero-title i{font-style:italic;font-weight:400;color:var(--color-primary)}.hero-description{font-size:1.25rem;color:var(--color-text-muted);line-height:1.6;margin:0 0 32px;max-width:90%}.hero-cta{display:flex;gap:16px}.cta-btn{padding:14px 28px;border-radius:4px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.cta-btn.primary{background-color:var(--color-primary);color:#fff;border:2px solid var(--color-primary)}.cta-btn.primary:hover{background-color:var(--color-secondary);border-color:var(--color-secondary)}.cta-btn.secondary{background:transparent;color:var(--color-secondary);border:2px solid var(--color-border)}.cta-btn.secondary:hover{border-color:var(--color-secondary)}.ticker-wrap{width:100%;background-color:var(--color-secondary);overflow:hidden;padding:12px 0;white-space:nowrap;border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.ticker-item{display:inline-block;padding-left:100%;animation:ticker 40s linear infinite;color:#fff;font-family:var(--font-body);font-weight:700;text-transform:uppercase;letter-spacing:.15em;font-size:.9rem}@keyframes ticker{0%{transform:translateZ(0)}to{transform:translate3d(-100%,0,0)}}.hero-visual-logo{display:flex;justify-content:center;align-items:center;padding:30px;background:radial-gradient(circle,#fff7ed,#fff 70%);border-radius:50%;box-shadow:0 0 40px #ea580c1a;position:relative;aspect-ratio:1;max-width:450px;margin:0 auto}.hero-visual-logo:before{content:"";position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;border-radius:50%;background:radial-gradient(circle,var(--color-primary) 0%,transparent 70%);z-index:-1;opacity:.3;filter:blur(25px);animation:pulse-glow 3s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:.7;transform:scale(1.1)}}.hero-logo-large{width:100%;max-width:400px;height:auto;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.1));transition:transform .5s ease}.hero-logo-large:hover{transform:scale(1.02) rotate(1deg)}.units-section{padding:100px 5%;background-color:#fff}.section-container{max-width:1400px;margin:0 auto}.section-header-row{margin-bottom:60px;display:flex;justify-content:space-between;align-items:center;gap:40px}.section-header-text{max-width:700px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.section-header-logo{flex-shrink:0}.header-badge-logo{height:200px;width:auto;border-radius:12px;box-shadow:0 10px 30px #0000001a;transform:rotate(3deg);transition:transform .3s ease;border:4px solid white}.header-badge-logo:hover{transform:rotate(0) scale(1.05)}.section-label{color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-size:.8rem;margin-bottom:0;display:inline-block;background:var(--color-bg-light);padding:4px 12px;border-radius:20px}.section-title{font-family:var(--font-heading);font-size:2.5rem;color:var(--color-secondary);margin:0;line-height:1.2}.section-subtitle{font-size:1.1rem;color:#4b5563;line-height:1.6}.units-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:40px}.unit-card{border:1px solid var(--color-border);transition:transform .3s ease;display:flex;flex-direction:column;height:100%;background:#fff}.unit-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #0000000d;border-color:var(--color-primary)}.unit-image{height:240px;background-color:#f3f4f6;background-size:cover;background-position:center;border-bottom:1px solid var(--color-border)}.unit-content{padding:32px;display:flex;flex-direction:column;flex:1}.unit-category{color:var(--color-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;margin-bottom:12px}.unit-title{font-family:var(--font-heading);font-size:1.5rem;font-weight:700;margin-bottom:12px;color:var(--color-secondary);line-height:1.3}.unit-description{color:var(--color-text-muted);line-height:1.6;margin-bottom:24px;font-size:.95rem}.unit-meta{margin-top:auto;display:flex;gap:16px;padding-top:20px;border-top:1px solid var(--color-border);font-size:.85rem;color:var(--color-text-muted)}.benefits-section{padding:100px 5%;background-color:var(--color-bg-light);border-top:1px solid var(--color-border)}.split-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;max-width:1400px;margin:0 auto}.benefit-list{list-style:none;padding:0;margin:32px 0}.benefit-item{display:flex;gap:16px;margin-bottom:24px}.check-icon{color:var(--color-primary);font-size:1.25rem}.benefit-text strong{display:block;color:var(--color-secondary);margin-bottom:4px;font-family:var(--font-heading)}.benefit-text{color:var(--color-text-muted);font-size:1rem;line-height:1.5}.ui-mockup{background:#fff;border-radius:8px;box-shadow:0 30px 60px -10px #0000001a;padding:24px;border:1px solid var(--color-border)}.mockup-row{height:12px;background:#f3f4f6;border-radius:6px;margin-bottom:16px;width:100%}.mockup-row:nth-child(1){width:40%;height:20px;margin-bottom:32px;background:var(--color-secondary)}.mockup-row:nth-child(2){width:80%}.mockup-row:nth-child(3){width:90%}.mockup-row:nth-child(4){width:70%}.cta-section{padding:120px 5%;text-align:center;background:var(--color-secondary);color:#fff}.cta-container{max-width:700px;margin:0 auto}.cta-title{font-family:var(--font-heading);font-size:3rem;margin-bottom:24px}.cta-text{font-size:1.25rem;color:#fffc;margin-bottom:40px}.landing-footer{padding:60px 5% 40px;background:#fff;border-top:1px solid var(--color-border)}.footer-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.copyright{color:var(--color-text-muted);font-size:.9rem}@media (max-width: 1024px){.hero-section{grid-template-columns:1fr;text-align:center}.hero-visual{order:-1;height:300px;margin-bottom:40px}.hero-card-float{display:none}.split-layout{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;position:relative;overflow:hidden;background:linear-gradient(135deg,#0f172a,#1e293b,#334155);color:#1e293b}.login-background{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0}.bg-blob{position:absolute;border-radius:50%;filter:blur(80px);opacity:.5;animation:float 20s ease-in-out infinite}.blob-1{width:600px;height:600px;background:linear-gradient(180deg,#ea580c,#fb923c);top:-200px;left:-100px;animation-delay:0s}.blob-2{width:500px;height:500px;background:linear-gradient(180deg,#3b82f6,#60a5fa);bottom:-150px;right:-100px;animation-delay:-10s}.blob-3{width:400px;height:400px;background:linear-gradient(180deg,#f59e0b,#fcd34d);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:-5s}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,10px) scale(1.02)}}.login-card{position:relative;z-index:1;width:100%;max-width:440px;padding:40px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px;border:1px solid rgba(255,255,255,.5);box-shadow:0 25px 50px -12px #00000080;animation:cardEntrance .6s cubic-bezier(.34,1.56,.64,1)}@keyframes cardEntrance{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-branding{text-align:center;margin-bottom:32px}.login-logo{margin-bottom:8px;animation:logoEntrance .8s ease-out .2s backwards}@keyframes logoEntrance{0%{opacity:0;transform:scale(.5) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0)}}.login-title{margin:0;font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,#ea580c,#fb923c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-family:Merriweather,serif}.login-subtitle{margin:8px 0 0;font-size:.9rem;color:#64748b}.login-tabs{display:flex;gap:4px;padding:4px;background:#f1f5f9;border-radius:12px;margin-bottom:28px}.login-tab{flex:1;padding:12px 16px;border:none;background:transparent;font-size:.9rem;font-weight:600;color:#64748b;cursor:pointer;border-radius:10px;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:6px}.login-tab:hover:not(.active){color:#0f172a;background:#fffc}.login-tab.active{color:#fff;background:#0f172a;box-shadow:0 4px 12px #0f172a4d}.tab-icon{font-size:1rem}.login-form{animation:formSlideIn .4s ease-out}@keyframes formSlideIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.input-group{position:relative;margin-bottom:20px}.input-group input{width:100%;padding:16px;font-size:1rem;border:2px solid #e2e8f0;border-radius:12px;background:#fff;transition:all .3s ease;outline:none;color:#0f172a}.input-group input:focus{border-color:#ea580c;box-shadow:0 0 0 4px #ea580c1a}.input-group input.code-input{font-family:Fira Code,Consolas,monospace;letter-spacing:2px;font-size:1.2rem;text-align:center;text-transform:uppercase}.input-group label{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:1rem;color:#94a3b8;pointer-events:none;transition:all .3s ease;background:#fff;padding:0 4px}.input-group input:focus+label,.input-group input:not(:placeholder-shown)+label{top:0;font-size:.8rem;color:#ea580c;font-weight:600}.input-hint{font-size:.8rem;color:#64748b;margin-top:6px;padding-left:4px}.form-description{font-size:.9rem;color:#64748b;margin-bottom:16px;line-height:1.5}.login-btn{width:100%;padding:16px 24px;font-size:1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;position:relative;overflow:hidden}.login-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.login-btn:hover:before{opacity:1}.login-btn.primary{background:linear-gradient(135deg,#0f172a,#334155);color:#fff;box-shadow:0 4px 14px #0f172a4d}.login-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0f172a66}.login-btn.success{background:linear-gradient(135deg,#ea580c,#f97316);color:#fff;box-shadow:0 4px 14px #ea580c4d}.login-btn.success:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ea580c66}.login-btn.teacher{background:#fff;color:#0f172a;border:2px solid #e2e8f0;box-shadow:0 4px 12px #0000000d}.login-btn.teacher:hover{border-color:#0f172a;transform:translateY(-2px)}.login-btn:disabled{opacity:.7;cursor:not-allowed;transform:none!important}.btn-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-error{background:#fef2f2;border:1px solid #fee2e2;border-left:4px solid #ef4444;color:#991b1b;padding:14px 16px;border-radius:10px;margin-bottom:20px;font-size:.9rem;display:flex;align-items:flex-start;gap:10px;animation:errorSlideIn .3s ease-out}@keyframes errorSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-icon{font-size:1.1rem;flex-shrink:0}@media (max-width: 480px){.login-card{padding:28px 20px;border-radius:20px}.login-title{font-size:1.5rem}.login-tab{padding:10px 8px;font-size:.85rem}.tab-icon{display:none}}.teacher-section{animation:formSlideIn .4s ease-out}.teacher-sub-tabs{display:flex;gap:4px;margin-bottom:20px;padding:3px;background:#f1f5f9;border-radius:10px}.sub-tab{flex:1;padding:10px 16px;border:none;background:transparent;font-size:.85rem;font-weight:500;color:#64748b;cursor:pointer;border-radius:8px;transition:all .2s ease}.sub-tab:hover:not(.active){background:#ffffff80}.sub-tab.active{background:#fff;color:#0f172a;box-shadow:0 2px 8px #0000000d;font-weight:600}.quiz-container{background:#fff;padding:1.5rem;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 4px #0000000d;margin-bottom:2rem;display:flex;flex-direction:column;gap:1.5rem}.quiz-header-meta{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:#64748b;font-weight:500}.quiz-progress-track{width:120px;height:6px;background:#f1f5f9;border-radius:3px;overflow:hidden}.quiz-progress-fill{height:100%;background:#3b82f6;border-radius:3px;transition:width .3s ease}.quiz-question{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0;line-height:1.4}.quiz-grid{display:flex;flex-direction:column;gap:12px;width:100%}.quiz-option-tile{display:flex;align-items:center;gap:16px;padding:16px;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .15s ease;position:relative;-webkit-user-select:none;user-select:none;min-height:60px}.quiz-option-tile:hover:not(.disabled):not(.correct):not(.incorrect){border-color:#94a3b8;background-color:#f8fafc;transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.quiz-option-tile.selected{border-color:#3b82f6;background-color:#eff6ff;box-shadow:0 0 0 2px #3b82f633}.quiz-option-tile.correct{border-color:#22c55e;background-color:#f0fdf4;color:#14532d;cursor:default}.quiz-option-tile.incorrect{border-color:#ef4444;background-color:#fef2f2;color:#7f1d1d;opacity:.9;cursor:default}.quiz-option-tile.disabled{opacity:.6;cursor:default;background-color:#f1f5f9}.option-marker{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#e2e8f0;color:#64748b;border-radius:6px;font-weight:700;font-size:.95rem;flex-shrink:0}.quiz-option-tile.selected .option-marker{background:#bfdbfe;color:#1e40af}.quiz-option-tile.correct .option-marker{background:#bbf7d0;color:#14532d}.quiz-option-tile.incorrect .option-marker{background:#fecaca;color:#7f1d1d}.option-content{flex:1;font-size:1rem;font-weight:500;line-height:1.5}.option-status-icon{font-size:1.25rem;flex-shrink:0}.quiz-footer{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.quiz-feedback-box{padding:1rem;border-radius:8px;animation:fadeIn .3s ease;font-size:.95rem;line-height:1.5}.quiz-feedback-box.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.quiz-feedback-box.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.quiz-nav-controls{display:flex;justify-content:space-between;margin-top:.5rem}.quiz-nav-btn{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid transparent;font-size:.95rem}.quiz-nav-btn.primary{background-color:#3b82f6;color:#fff}.quiz-nav-btn.primary:hover:not(:disabled){background-color:#2563eb}.quiz-nav-btn.secondary{background-color:#fff;border-color:#cbd5e1;color:#64748b}.quiz-nav-btn.secondary:hover:not(:disabled){background-color:#f1f5f9;color:#334155}.quiz-nav-btn:disabled{opacity:.5;cursor:not-allowed}.quiz-nav-btn.completed{background-color:#10b981;color:#fff;cursor:default}.myth-reality-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;width:100%}.myth-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000d;transition:transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;height:100%}.myth-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #00000014}.myth-content{padding:1.5rem;flex:1}.myth-statement-text{font-size:1.1rem;color:#1e293b;margin:0 0 1.5rem;line-height:1.5;font-weight:600}.myth-actions{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.myth-option-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;border:2px solid #e2e8f0;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s ease}.myth-option-btn .icon{font-size:1.5rem;margin-bottom:.25rem}.myth-option-btn .label{font-weight:600;font-size:.9rem;color:#64748b}.myth-option-btn:hover:not(:disabled){border-color:#94a3b8;background:#f8fafc}.myth-option-btn.selected{border-width:2px}.myth-option-btn.dimmed{opacity:.4}.myth-option-btn.myth.correct{background:#fdf2f8;border-color:#db2777;color:#be185d}.myth-option-btn.reality.correct{background:#ecfdf5;border-color:#059669;color:#047857}.myth-explanation-wrapper{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(0,1,0,1)}.myth-explanation-wrapper.show{max-height:300px}.myth-explanation-box{padding:1.5rem;background:#f1f5f9;border-top:1px solid #e2e8f0}.myth-explanation-box.correct{background:#f0fdf4;border-top-color:#86efac}.myth-explanation-box.incorrect{background:#fef2f2;border-top-color:#fecaca}.feedback-badge{display:inline-block;font-size:.75rem;text-transform:uppercase;font-weight:800;letter-spacing:.05em;padding:4px 8px;border-radius:4px;margin-bottom:.5rem;background:#cbd5e1;color:#475569}.myth-explanation-box.correct .feedback-badge{background:#bbf7d0;color:#166534}.myth-explanation-box.incorrect .feedback-badge{background:#fecaca;color:#991b1b}/*!
* Quill Editor v1.3.7
* https://quilljs.com/
* Copyright (c) 2014, Jason Chen
* Copyright (c) 2013, salesforce.com
*/.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.mindmap-container{display:flex;flex-direction:column;background:#f8fafc;border-radius:16px;border:1px solid #e2e8f0;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d;min-height:600px;overflow:hidden;position:relative}.mindmap-word-bank-column{position:sticky;top:0;z-index:50;width:100%;display:flex;flex-direction:column;gap:10px;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:12px 20px;border-bottom:1px solid #e2e8f0;box-shadow:0 4px 6px -1px #00000005}.word-bank-header{display:flex;justify-content:space-between;align-items:center}.word-bank-header h4{margin:0;font-size:.9rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:8px}.word-bank-badge{background:#e0e7ff;color:#4338ca;font-size:.75rem;padding:2px 8px;border-radius:99px;font-weight:700}.word-bank-pool{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;min-height:36px;align-items:center}.word-bank-item{background:#fff;padding:6px 14px;border-radius:99px;font-size:.85rem;font-weight:500;cursor:grab;color:#334155;border:1px solid #e2e8f0;box-shadow:0 2px 4px #00000005;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;-webkit-user-select:none;user-select:none}.word-bank-item:hover{border-color:#cbd5e1;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000000d;color:#1e293b}.word-bank-item:active{cursor:grabbing}.word-bank-item.selected{background-color:#eef2ff;color:#4f46e5;border-color:#818cf8;box-shadow:0 0 0 3px #6366f133}.word-bank-item.dragging{opacity:.4;background:#f1f5f9;border-style:dashed;box-shadow:none}.word-bank-item.add-btn{padding:4px 10px;color:#6366f1;border:1px dashed #6366f1;background:transparent;cursor:pointer;font-weight:700}.word-bank-item.add-btn:hover{background:#eef2ff;transform:translateY(-1px)}.word-bank-item.adding{padding:4px 10px;border:1px solid #6366f1;background:#fff;cursor:default;transform:none;box-shadow:0 0 0 2px #6366f11a}.word-bank-item.adding:hover{transform:none}.bank-input-pill{border:none;outline:none;font-size:.85rem;width:100px;background:transparent;color:#334155;font-family:inherit}.word-bank-footer{margin-left:auto;display:flex;align-items:center;gap:16px}.mindmap-area{display:flex;flex-direction:column;align-items:center;padding:30px 20px;flex:1;background-image:radial-gradient(#e2e8f0 1px,transparent 1px);background-size:24px 24px}.mindmap-root{display:flex;flex-direction:column;align-items:center;margin-bottom:30px;position:relative;z-index:10}.root-node{background:radial-gradient(120% 120% at 50% 0%,#6366f1,#4338ca);color:#fff;padding:14px 36px;border-radius:12px;font-weight:800;font-size:1.25rem;box-shadow:0 20px 25px -5px #4338ca4d,0 8px 10px -6px #4338ca1a;text-align:center;min-width:200px;border:3px solid #fff;letter-spacing:-.01em}.root-connector-vertical{width:4px;height:30px;background-color:#cbd5e1;margin-bottom:0;border-radius:4px}.mindmap-branches{display:flex;justify-content:center;gap:20px;width:100%;position:relative;align-items:flex-start}.branches-crossbar{position:absolute;top:-15px;left:0;right:0;height:4px;background-color:#cbd5e1;border-radius:99px;margin:0 auto}.category-branch{display:flex;flex-direction:column;align-items:center;flex:1;min-width:180px;position:relative;transition:flex-grow .3s ease}.branch-connector-vertical{width:4px;height:15px;background-color:#cbd5e1;margin-bottom:0;position:absolute;top:-15px}.category-node{padding:12px 20px;border-radius:10px;font-weight:700;font-size:1rem;text-align:center;width:100%;color:#fff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000000f;position:relative;z-index:2;margin-bottom:16px;cursor:pointer;transition:all .2s ease;border:2px solid rgba(255,255,255,.2)}.category-node:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.category-node.can-drop-target{box-shadow:0 0 0 4px #6366f166;transform:scale(1.02)}.category-children{display:flex;flex-direction:column;gap:8px;width:100%;min-height:80px;padding:4px 0 16px 20px;position:relative}.tree-line-guide{position:absolute;left:10px;top:-16px;bottom:20px;width:2px;background:#cbd5e1;z-index:0}.child-node{background:#fff;padding:8px 12px;border-radius:6px;font-size:.85rem;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;display:flex;justify-content:space-between;align-items:center;cursor:grab;position:relative;z-index:2;transition:all .2s}.child-node:hover{border-color:#cbd5e1;transform:translate(4px);box-shadow:0 4px 6px -1px #0000000d}.child-node.selected{border-color:#6366f1;background-color:#eef2ff}.child-node:before{content:"";position:absolute;left:-22px;top:50%;width:22px;height:2px;background:#cbd5e1;z-index:-1}.custom-word-input{border:1px solid #cbd5e1;box-shadow:0 1px 2px #0000000d;font-size:.85rem;padding:6px 10px}.mindmap-submit-btn{background:#10b981;color:#fff;border:none;font-weight:600;border-radius:99px;padding:6px 16px!important;font-size:.85rem!important;cursor:pointer;transition:all .2s;box-shadow:0 4px 6px -1px #10b98133}.mindmap-submit-btn:hover{background:#059669;transform:translateY(-1px);box-shadow:0 10px 15px -3px #10b9814d}.mindmap-submit-btn:disabled{background:#cbd5e1;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 900px){.mindmap-branches{flex-direction:column}.tree-line-guide{display:block}.branches-crossbar{display:none}}.peer-exchange-component{max-width:800px;margin:0 auto}.peer-exchange-component h3{color:#1e40af;font-size:1.25rem;margin:0 0 1rem}.peer-exchange-submit{background:#fff;border-radius:16px;padding:24px;border:1px solid #e5e7eb;box-shadow:0 4px 6px -1px #0000000d}.peer-exchange-prompt{background:linear-gradient(135deg,#dbeafe,#e0e7ff);padding:16px 20px;border-radius:12px;margin-bottom:20px;border-left:4px solid #3b82f6;font-size:1rem;color:#1e40af;line-height:1.5}.peer-exchange-prompt:before{content:"💭 "}.peer-exchange-editor-wrapper{margin-bottom:16px}.peer-exchange-editor-wrapper .ql-editor{min-height:120px;font-size:1rem}.peer-exchange-progress{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:.875rem;color:#64748b}.peer-exchange-progress-bar{flex:1;height:6px;background:#f1f5f9;border-radius:3px;margin-right:12px;overflow:hidden}.peer-exchange-progress-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#22c55e);transition:width .3s ease}.peer-exchange-progress-fill.complete{background:#22c55e}.peer-exchange-word-count{font-weight:600;white-space:nowrap}.peer-exchange-word-count.complete{color:#16a34a}.peer-exchange-review{display:flex;flex-direction:column;gap:24px}.peer-exchange-section{background:#fff;border-radius:16px;padding:24px;border:1px solid #e5e7eb;box-shadow:0 4px 6px -1px #0000000d}.peer-exchange-section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.peer-exchange-section-icon{font-size:1.5rem}.peer-exchange-section-title{font-weight:600;color:#374151;font-size:1.1rem}.peer-exchange-author{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:.875rem;color:#6b7280}.peer-exchange-author-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#818cf8,#a78bfa);display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;font-weight:600}.peer-exchange-author-avatar.anonymous{background:linear-gradient(135deg,#9ca3af,#6b7280)}.peer-exchange-statement{background:#f8fafc;padding:16px 20px;border-radius:12px;font-size:1rem;line-height:1.6;color:#1e293b;border:1px solid #e2e8f0;margin-bottom:16px}.peer-exchange-statement p{margin:0}.peer-exchange-comment-area{margin-top:16px}.peer-exchange-comment-label{font-weight:600;color:#374151;margin-bottom:8px;display:block;font-size:.95rem}.peer-exchange-comment-label:before{content:"✍️ "}.peer-exchange-received-comments{margin-top:20px;padding-top:20px;border-top:1px dashed #d1d5db}.peer-exchange-comment-item{background:linear-gradient(135deg,#fffbeb,#fef3c7);padding:16px 20px;border-radius:12px;border-left:4px solid #f59e0b;margin-top:12px}.peer-exchange-comment-header{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:.85rem;color:#92400e}.peer-exchange-comment-content{color:#78350f;line-height:1.5}.peer-exchange-waiting{text-align:center;padding:40px 20px;color:#6b7280}.peer-exchange-waiting-icon{font-size:3rem;margin-bottom:16px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.peer-exchange-waiting-text{font-size:1.1rem;font-weight:500}.peer-exchange-save-status{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px;font-size:.85rem;color:#10b981}.peer-exchange-save-status:before{content:"✓"}.line-a-slide{font-family:Source Sans Pro,sans-serif;background-color:#f8fafc;color:#1e293b;padding:20px;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 10px 25px #0000000d;display:flex;flex-direction:column;height:100%;min-height:600px}.line-a-header{margin-bottom:20px;border-bottom:3px solid #0f766e;padding-bottom:10px}.line-a-title{font-size:24px;font-weight:700;color:#0f766e;margin:0}.line-a-content{display:flex;gap:24px;flex-grow:1}.line-a-col{flex:1;display:flex;flex-direction:column;gap:20px}.line-a-card{background-color:#fff;border-radius:10px;padding:18px;box-shadow:0 4px 12px #0000000d;border:1px solid #e2e8f0}.task-header{display:flex;align-items:center;margin-bottom:12px}.task-icon{background-color:#e6f7f5;color:#0f766e;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-right:12px;font-size:1.2rem;flex-shrink:0}.task-label{font-size:18px;font-weight:600;color:#0f766e;margin:0}.task-text{font-size:15px;line-height:1.5;color:#334155}.mindmap-prompt{font-size:13px;line-height:1.5;color:#334155;margin-bottom:16px;background-color:#f0f9ff;border-left:4px solid #0f766e;padding:12px 16px;border-radius:6px;font-weight:500}.questions-wrapper{background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000000d;height:100%;overflow:hidden;padding:20px;border:1px solid #e2e8f0}.question-item{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #f1f5f9}.question-item:last-child{border-bottom:none}.question-text{font-weight:600;color:#0f766e;margin-bottom:10px;display:block}.question-input{width:100%;padding:12px;border:2px solid #e2e8f0;border-radius:8px;background-color:#f8fafc;transition:all .2s;resize:vertical;min-height:80px}.question-input:focus{border-color:#0f766e;background-color:#fff;outline:none}.saved-badge{font-size:.75rem;color:#10b981;display:flex;align-items:center;gap:4px;margin-top:5px}.sidebar-nav{width:250px;background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;overflow:hidden;height:fit-content;max-height:calc(100vh - 4rem);transition:width .3s ease}.sidebar-nav.collapsed{width:80px}.sidebar-header{padding:1.25rem;border-bottom:1px solid #f3f4f6;background:#f9fafb;flex-shrink:0}.header-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;min-height:28px}.sidebar-title{font-size:1.1rem;font-weight:700;color:#111827;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapse-toggle-btn{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;display:flex;align-items:center;justify-content:center}.collapse-toggle-btn:hover{background:#e5e7eb;color:#374151}.overall-progress{margin-top:.75rem}.progress-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:#10b981;border-radius:3px;transition:width .5s ease}.progress-text{font-size:.8rem;color:#6b7280;font-weight:500}.sidebar-sections{overflow-y:auto;flex:1}.sidebar-section{border-bottom:1px solid #f3f4f6}.section-header{padding:12px 16px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;background:#fff;transition:background .2s}.section-header:hover{background:#f9fafb}.section-title{font-weight:600;color:#374151;font-size:.95rem}.section-chevron{color:#9ca3af;transition:transform .2s ease;display:flex;align-items:center}.section-chevron.rotated{transform:rotate(180deg)}.sidebar-step-list{list-style:none;padding:0;margin:0;overflow-y:auto}.sidebar-section .sidebar-step-list{background:#fdfdfd}.sidebar-step-item{padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;cursor:pointer;border-left:3px solid transparent;transition:all .2s ease;position:relative}.sidebar-section .sidebar-step-item{padding-left:1.75rem}.sidebar-step-item:hover{background:#f9fafb}.sidebar-step-item.active{background:#eff6ff;border-left-color:#3b82f6}.sidebar-step-item.locked{opacity:.6;cursor:not-allowed;background:#f9fafb}.step-item-icon{width:28px;height:28px;border-radius:50%;background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;flex-shrink:0}.sidebar-step-item.active .step-item-icon{background:#3b82f6;color:#fff}.sidebar-step-item.completed .step-item-icon{background:#10b981;color:#fff}.step-item-content{flex:1;min-width:0}.step-item-label{font-size:.95rem;color:#374151;font-weight:500;margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-step-item.active .step-item-label{color:#1d4ed8;font-weight:600}.step-progress{height:4px;background:#e5e7eb;border-radius:2px;overflow:hidden;margin-top:6px}.step-progress-fill{height:100%;background:#3b82f6;border-radius:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .3s ease-out forwards}.sidebar-nav.collapsed .sidebar-step-item{justify-content:center;padding:1rem .5rem}.card{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem;transition:all .2s ease;border:1px solid var(--border-color)}.card-padding-sm{padding:1rem}.card-padding-md{padding:1.5rem}.card-padding-lg{padding:2rem}.card-shadow-none{box-shadow:none}.card-shadow-sm{box-shadow:var(--shadow-sm)}.card-shadow-md{box-shadow:var(--shadow-md)}.card-shadow-lg{box-shadow:var(--shadow-lg)}.card-border{border:1px solid var(--border-color)}.card-rounded{border-radius:var(--radius-lg)}.card-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.card-title{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary)}.card-content{color:var(--text-primary)}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:var(--radius-sm)}.skeleton-circle{border-radius:50%}.skeleton-animated{animation:skeleton-loading 1.5s infinite}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-lines{width:100%}.assignment-loading,.assignment-error{max-width:800px;margin:2rem auto}.error-message{color:var(--danger-color);font-weight:500;padding:1rem;background:#ef44441a;border-radius:var(--radius-md);border-left:4px solid var(--danger-color)}.cover-page-container{max-width:1200px;margin:0 auto;padding:1.5rem}.cover-page-main{padding:0;background:transparent;box-shadow:none}#app-container.sidebar-layout{display:grid;grid-template-columns:300px 1fr;gap:1.5rem;transition:grid-template-columns .3s ease}#app-container.sidebar-layout.sidebar-collapsed{grid-template-columns:80px 1fr}.sidebar-wrapper{position:sticky;top:1.5rem;height:fit-content}.step-content{display:flex;flex-direction:column;gap:1rem}.step-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:.5rem;margin-bottom:.5rem}.step-header-content{flex:1}.step-description{margin:.25rem 0 0;color:var(--text-secondary);font-size:.95rem}.step-status-badge{background:#10b9811a;color:var(--success-color);padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;white-space:nowrap;border:1px solid rgba(16,185,129,.2)}.step-elements{display:flex;flex-direction:column;gap:1.5rem}@media (min-width: 900px){.step-elements{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.gated-wrapper,.element-wrapper{min-width:0}.gated-wrapper.type-header,.gated-wrapper.type-quiz,.gated-wrapper.type-multi_quiz,.gated-wrapper.type-matching_game,.gated-wrapper.type-true_false,.gated-wrapper.type-myth_reality,.gated-wrapper.type-mindmap,.gated-wrapper.type-timeline,.gated-wrapper.type-reflective_canvas,.gated-wrapper.type-drag_drop_rank,.gated-wrapper.type-fill_in_blanks,.gated-wrapper.type-line_a_task,.gated-wrapper.type-line_b_activity,.gated-wrapper.type-line_c_activity,.gated-wrapper.type-html_template,.gated-wrapper.type-hierarchical-mindmap,.gated-wrapper.type-statement_picker,.gated-wrapper.type-storyboard,.gated-wrapper.type-meme_generator,.gated-wrapper.type-role_play{grid-column:1 / -1!important}.step-elements>:only-child{grid-column:1 / -1}}.step-controls{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.step-btn.prev{background:var(--bg-tertiary);color:var(--text-primary)}.step-btn.next{background:var(--primary-color);color:#fff}.step-btn.summary-btn{background:var(--secondary-color);color:#fff}.summary-view{max-width:800px;margin:0 auto}.preview-banner{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba;padding:12px 15px;border-radius:var(--radius-md);margin-bottom:15px;display:flex;align-items:center;gap:10px;font-size:.9rem;animation:slideInUp .3s ease-out}.preview-mode{pointer-events:none;opacity:.6;filter:grayscale(.8);-webkit-user-select:none;user-select:none}.preview-mode h1,.preview-mode h2,.preview-mode h3{opacity:.8;filter:none}@media (max-width: 768px){#app-container.sidebar-layout,#app-container.sidebar-layout.sidebar-collapsed{grid-template-columns:1fr}.sidebar-wrapper{position:fixed;top:0;left:-300px;height:100%;width:280px;background:var(--bg-primary);box-shadow:2px 0 10px #0000001a;z-index:1000;transition:left .3s ease;padding:1.5rem}.sidebar-wrapper.open{left:0}.step-controls{flex-direction:column;gap:1rem;align-items:stretch}.step-controls>div{display:flex;gap:1rem}}.gated-wrapper{position:relative;height:100%;transition:all .3s ease}.gated-wrapper.locked .gated-content{filter:blur(5px);opacity:.6;pointer-events:none;-webkit-user-select:none;user-select:none}.gated-overlay{position:absolute;top:0;left:0;right:0;bottom:0;z-index:10;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#ffffff4d}.lock-message{background:#fff;padding:15px 25px;border-radius:50px;box-shadow:0 4px 15px #0000001a;display:flex;align-items:center;gap:10px;font-weight:600;color:#64748b;border:1px solid #e2e8f0}.tag-filter-container{margin-bottom:20px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.tag-filter-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tag-filter-title{font-size:.9rem;font-weight:600;color:#475569;display:flex;align-items:center;gap:6px}.tag-filter-clear{font-size:.75rem;color:#64748b;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s}.tag-filter-clear:hover{background:#e2e8f0;color:#334155}.tag-filter-categories{display:flex;flex-direction:column;gap:12px}.tag-category{display:flex;flex-direction:column;gap:6px}.tag-category-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.tag-pills{display:flex;flex-wrap:wrap;gap:6px}.tag-pill{display:inline-flex;align-items:center;padding:4px 10px;font-size:.8rem;font-weight:500;border-radius:16px;cursor:pointer;transition:all .2s ease;border:1px solid transparent;-webkit-user-select:none;user-select:none}.tag-pill.aspekte{background:#eff6ff;color:#3b82f6;border-color:#bfdbfe}.tag-pill.aspekte:hover,.tag-pill.aspekte.selected{background:#3b82f6;color:#fff;border-color:#3b82f6}.tag-pill.externe{background:#f0fdf4;color:#22c55e;border-color:#bbf7d0}.tag-pill.externe:hover,.tag-pill.externe.selected{background:#22c55e;color:#fff;border-color:#22c55e}.tag-pill.lernprodukt{background:#faf5ff;color:#a855f7;border-color:#e9d5ff}.tag-pill.lernprodukt:hover,.tag-pill.lernprodukt.selected{background:#a855f7;color:#fff;border-color:#a855f7}.assignment-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.assignment-tag-badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:500;border-radius:12px}.assignment-tag-badge.aspekte{background:#eff6ff;color:#2563eb}.assignment-tag-badge.externe{background:#f0fdf4;color:#16a34a}.assignment-tag-badge.lernprodukt{background:#faf5ff;color:#9333ea}.active-filters-count{background:#3b82f6;color:#fff;font-size:.7rem;font-weight:600;padding:2px 6px;border-radius:10px;margin-left:6px}@media (max-width: 640px){.tag-filter-container{padding:12px}.tag-filter-categories{gap:8px}.tag-pill{padding:3px 8px;font-size:.75rem}}.assignment-card{display:block;text-decoration:none;color:inherit;transition:transform .2s ease}.assignment-card:hover{transform:translateY(-3px)}.assignment-card-skeleton{height:180px}.assignment-meta{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-secondary);margin-bottom:10px}.score-badge{background:var(--warning-color);color:#fff;padding:2px 6px;border-radius:var(--radius-sm);font-weight:600}.type-badge{background:var(--bg-tertiary);padding:2px 6px;border-radius:var(--radius-sm)}.progress-container{width:100%;height:6px;background:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:5px}.progress-fill{height:100%;background:var(--primary-color);transition:width .5s ease}.progress-text{font-size:.8rem;color:var(--text-secondary);text-align:right}.teacher-controls{margin-top:15px;display:flex;flex-direction:column;gap:8px}.start-session-btn{padding:8px;background:#4f46e5;color:#fff;border:none;border-radius:6px;font-weight:700;cursor:pointer}.assign-class-select{padding:8px;border-radius:6px;border:1px solid #d1d5db;cursor:pointer;width:100%}.tour-help-button{position:fixed;bottom:90px;right:20px;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#4f46e5,#6366f1);border:none;color:#fff;font-size:1.4rem;cursor:pointer;box-shadow:0 4px 15px #4f46e566;transition:all .3s ease;z-index:900;display:flex;align-items:center;justify-content:center}.tour-help-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4f46e580}.tour-help-button:active{transform:translateY(0)}.tour-help-button:before{content:"Tour starten";position:absolute;right:60px;background:#1e293b;color:#fff;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease}.tour-help-button:hover:before{opacity:1;visibility:visible}@keyframes tour-beacon-pulse{0%{box-shadow:0 0 #4f46e566}70%{box-shadow:0 0 0 15px #4f46e500}to{box-shadow:0 0 #4f46e500}}.react-joyride__beacon{animation:tour-beacon-pulse 2s infinite}.dashboard-container{max-width:1200px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:2rem;min-height:100vh;animation:pageEntrance .5s ease-out}@keyframes pageEntrance{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem;border-radius:20px;box-shadow:0 10px 40px #667eea4d;color:#fff;position:relative;overflow:hidden}.dashboard-header:before{content:"";position:absolute;top:-50%;right:-20%;width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);pointer-events:none}.dashboard-header:after{content:"";position:absolute;bottom:-30%;left:10%;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);pointer-events:none}.dashboard-header-content{position:relative;z-index:1}.dashboard-title{margin:0 0 .5rem;font-size:1.75rem;color:#fff;font-weight:700;display:flex;align-items:center;gap:12px}.dashboard-title-icon{font-size:2rem}.dashboard-subtitle{color:#ffffffe6;font-size:1rem}.dashboard-subtitle strong{color:#fff;background:#fff3;padding:2px 10px;border-radius:20px;font-weight:600}.sign-out-btn{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:12px;padding:.75rem 1.5rem;font-weight:500;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:1}.sign-out-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-2px)}.recovery-code-banner{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #a7f3d0;border-radius:16px;padding:20px 24px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;box-shadow:0 4px 20px #10b98126;animation:slideInUp .4s ease-out .2s backwards}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recovery-icon{font-size:2.5rem;animation:keyFloat 3s ease-in-out infinite}@keyframes keyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.recovery-content{flex:1}.recovery-title{margin:0 0 4px;color:#047857;font-size:1.1rem;font-weight:600}.recovery-text{margin:0;color:#065f46;font-size:.9rem}.recovery-code-box{background:#fff;padding:12px 24px;border-radius:12px;border:2px dashed #059669;font-family:Fira Code,Consolas,monospace;font-size:1.5rem;font-weight:700;color:#059669;letter-spacing:2px;box-shadow:0 4px 12px #0596691a;transition:all .3s ease}.recovery-code-box:hover{transform:scale(1.02);box-shadow:0 6px 20px #05966933}.active-sessions-panel{background:linear-gradient(135deg,#fff7ed,#ffedd5);padding:24px;border-radius:20px;border:1px solid #fed7aa;box-shadow:0 4px 20px #ea580c1a;animation:slideInUp .4s ease-out .1s backwards}.panel-title{margin:0 0 20px;color:#c2410c;font-size:1.2rem;font-weight:600;display:flex;align-items:center;gap:10px}.panel-badge{display:inline-block;width:10px;height:10px;background:#ef4444;border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.sessions-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.session-card{background:#fff;padding:20px;border-radius:16px;border:1px solid #fed7aa;box-shadow:0 4px 12px #0000000d;transition:all .3s ease;position:relative;overflow:hidden}.session-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#f97316,#ea580c)}.session-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a}.session-title{font-weight:700;font-size:1.1rem;color:#1f2937;margin-bottom:8px}.session-code-row{font-size:.9rem;color:#6b7280;margin-bottom:16px}.session-code{font-size:1.1rem;font-weight:700;color:#ea580c;font-family:monospace;background:#fff7ed;padding:2px 8px;border-radius:6px}.session-actions{display:flex;gap:10px}.join-session-btn{flex:1;padding:10px 16px;background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #ea580c4d}.join-session-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ea580c66}.end-session-btn{padding:10px 16px;background:#fff;border:1px solid #d1d5db;color:#6b7280;border-radius:10px;cursor:pointer;font-weight:500;transition:all .2s ease}.end-session-btn:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}.create-class-row{display:flex;gap:12px;margin-bottom:24px;align-items:center;flex-wrap:wrap}.section-label{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937}.new-class-input{padding:12px 16px;border-radius:12px;border:2px solid #e5e7eb;flex:1;max-width:300px;font-size:1rem;transition:all .3s ease}.new-class-input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 4px #10b9811a}.create-class-btn{padding:12px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #10b9814d}.create-class-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.classes-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:40px}.class-card-link{text-decoration:none}.class-card-item{background:#fff;padding:20px;border-radius:16px;border:1px solid #e5e7eb;color:#374151;box-shadow:0 4px 12px #0000000d;transition:all .3s ease;position:relative;overflow:hidden}.class-card-item:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#4f46e5,#7c3aed)}.class-card-item:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:#a5b4fc}.class-card-name{font-weight:700;font-size:1.15rem;color:#1f2937;margin-bottom:8px}.class-card-code{font-size:.85rem;color:#6b7280}.code-badge{font-family:monospace;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);padding:4px 10px;border-radius:8px;font-weight:600;color:#4f46e5}.join-class-panel{background:#fff;padding:28px;border-radius:20px;border:1px solid #e2e8f0;box-shadow:0 4px 20px #00000014;max-width:600px;margin-bottom:32px;animation:slideInUp .4s ease-out .3s backwards}.join-header{margin:0 0 20px;color:#1f2937;font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px}.join-form{display:flex;gap:12px;flex-wrap:wrap}.join-input{flex:1;padding:14px 16px;border:2px solid #e5e7eb;border-radius:12px;min-width:150px;font-size:1rem;transition:all .3s ease}.join-input:focus{outline:none;border-color:#0275d8;box-shadow:0 0 0 4px #0275d81a}.join-input.code-input{font-family:monospace;letter-spacing:1px;text-transform:uppercase}.join-submit-btn{background:linear-gradient(135deg,#0275d8,#0056b3);color:#fff;border:none;padding:14px 28px;border-radius:12px;cursor:pointer;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #0275d84d}.join-submit-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0275d866}.join-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.classes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.joined-class-link{text-decoration:none}.joined-class-card{background:#fff;padding:24px;border-radius:16px;border-left:5px solid #0ea5e9;box-shadow:0 4px 12px #0000000d;transition:all .3s ease}.joined-class-card:hover{transform:translateY(-4px) translate(4px);box-shadow:0 12px 24px #0000001a;border-left-color:#0284c7}.joined-class-name{font-weight:700;font-size:1.25rem;color:#0c4a6e;margin-bottom:6px}.joined-class-code{color:#64748b;font-size:.9rem}.view-tasks-link{margin-top:16px;color:#0284c7;font-size:.95rem;font-weight:600;display:inline-flex;align-items:center;gap:6px}.section-header{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.section-header h3{margin:0;font-size:1.25rem;color:#1f2937;font-weight:700;display:flex;align-items:center;gap:10px}.library-section{animation:slideInUp .4s ease-out .4s backwards}.library-title{margin:0 0 20px;font-size:1.25rem;color:#1f2937;font-weight:700;display:flex;align-items:center;gap:10px}.assignments-card{margin-bottom:2rem;background:transparent;box-shadow:none;border:none}.assignments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}@media (max-width: 768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:1.5rem}.dashboard-title{font-size:1.5rem}.sign-out-btn{width:100%;text-align:center}.recovery-code-banner{flex-direction:column;text-align:center;gap:16px}.recovery-code-box{font-size:1.25rem}.create-class-row{flex-direction:column;align-items:stretch}.new-class-input{max-width:100%}.sessions-grid,.classes-list,.classes-grid,.assignments-grid{grid-template-columns:1fr}.join-form{flex-direction:column}.join-input,.join-submit-btn{width:100%}}.student-sessions-panel{background:linear-gradient(135deg,#ecfeff,#cffafe);padding:24px;border-radius:20px;border:1px solid #a5f3fc;box-shadow:0 4px 20px #06b6d41a;margin-bottom:24px;animation:slideInUp .4s ease-out .2s backwards}.student-sessions-panel .panel-title{color:#0891b2}.student-sessions-panel .session-card{border-color:#a5f3fc}.student-sessions-panel .session-card:before{background:linear-gradient(180deg,#06b6d4,#0891b2)}.student-sessions-panel .join-session-btn{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 4px 12px #06b6d44d}.student-sessions-panel .join-session-btn:hover{box-shadow:0 6px 16px #06b6d466}.react-joyride__tooltip h3{font-size:1.1rem;color:#1e293b;font-weight:700}.react-joyride__tooltip p{font-size:.95rem;line-height:1.6;color:#475569}.react-joyride__tooltip ul{color:#475569;line-height:1.8}.react-joyride__progress{font-size:.8rem;color:#94a3b8}.live-tour-help-button{position:fixed;bottom:90px;right:20px;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#0ea5e9,#06b6d4);border:none;color:#fff;font-size:1.4rem;cursor:pointer;box-shadow:0 4px 15px #0ea5e966;transition:all .3s ease;z-index:900;display:flex;align-items:center;justify-content:center}.live-tour-help-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0ea5e980}.live-tour-help-button:active{transform:translateY(0)}.live-tour-help-button:before{content:"Tour starten";position:absolute;right:60px;background:#1e293b;color:#fff;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease}.live-tour-help-button:hover:before{opacity:1;visibility:visible}@keyframes live-tour-beacon-pulse{0%{box-shadow:0 0 #0ea5e966}70%{box-shadow:0 0 0 15px #0ea5e900}to{box-shadow:0 0 #0ea5e900}}.react-joyride__beacon{animation:live-tour-beacon-pulse 2s infinite}.tour-highlight{position:relative}.tour-highlight:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:2px dashed #0ea5e9;border-radius:12px;opacity:0;transition:opacity .3s ease;pointer-events:none}.tour-highlight:hover:after{opacity:1}.heatmap-container{overflow-x:auto;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:15px;margin-top:20px;box-shadow:0 1px 3px #0000000d}.heatmap-table{width:100%;border-collapse:collapse;font-size:.9rem}.heatmap-table th,.heatmap-table td{padding:10px;border-bottom:1px solid #f1f5f9;text-align:center}.heatmap-table th{text-align:left;font-weight:600;color:#64748b;background:#f8fafc}.heatmap-table th.col-header{text-align:center;min-width:40px;font-size:.8rem}.student-name-cell{text-align:left!important;font-weight:500;color:#1e293b;white-space:nowrap}.status-cell{height:30px;width:30px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.status-correct{background-color:#dcfce7;color:#166534;border:1px solid #86efac}.status-incorrect{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.status-submitted{background-color:#e0f2fe;color:#0369a1;border:1px solid #bae6fd;font-size:.8rem}.status-missing{background-color:#f3f4f6;color:#cbd5e0;border:1px solid #e2e8f0}.heatmap-row.interactive{cursor:pointer;transition:background-color .2s}.heatmap-row.interactive:hover{background-color:#f1f5f9}.heatmap-row.interactive:hover .student-name-cell{color:#0ea5e9;font-weight:700}.analytics-container{max-width:1200px;margin:0 auto;padding:20px}.analytics-header{margin-bottom:30px;text-align:center}.analytics-title{font-size:2.5rem;font-weight:800;margin-bottom:10px;background:linear-gradient(135deg,#6366f1,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.analytics-subtitle{color:#6b7280;font-size:1.1rem}.analytics-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:30px}.analytics-tab{padding:12px 24px;border-radius:50px;border:none;background:#f3f4f6;color:#4b5563;font-weight:600;cursor:pointer;transition:all .2s}.analytics-tab:hover{background:#e5e7eb}.analytics-tab.active{background:#4f46e5;color:#fff;box-shadow:0 4px 6px -1px #4f46e566}.analytics-section{animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.journey-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.journey-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a;border:1px solid #e5e7eb;transition:transform .2s}.journey-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.journey-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.journey-title{font-weight:700;font-size:1.1rem;color:#1f2937}.journey-badge{font-size:.75rem;padding:4px 8px;border-radius:4px;font-weight:600}.badge-completed{background:#dcfce7;color:#166534}.badge-started{background:#dbeafe;color:#1e40af}.badge-new{background:#f3f4f6;color:#6b7280}.journey-progress-container{height:8px;background:#f3f4f6;border-radius:4px;margin-bottom:10px;overflow:hidden}.journey-progress-bar{height:100%;background:linear-gradient(90deg,#4f46e5,#818cf8);transition:width .5s ease-out}.journey-stats{display:flex;justify-content:space-between;font-size:.9rem;color:#6b7280}.comparison-container{background:#fff;border-radius:16px;padding:25px;box-shadow:0 4px 6px -1px #0000001a}.comparison-chart{display:flex;align-items:flex-end;justify-content:space-around;height:300px;padding:20px 0;border-bottom:2px solid #e5e7eb;margin-top:30px}.bar-group{display:flex;flex-direction:column;align-items:center;gap:10px;width:60px}.bar{width:40px;border-radius:6px 6px 0 0;position:relative;transition:height .6s cubic-bezier(.34,1.56,.64,1);min-height:4px}.bar-value{position:absolute;top:-25px;left:50%;transform:translate(-50%);font-weight:700;font-size:.9rem}.bar-user{background:#4f46e5;color:#4f46e5}.bar-avg{background:#9ca3af;color:#6b7280}.bar-label{text-align:center;font-size:.85rem;color:#6b7280;font-weight:500}.comparison-legend{display:flex;justify-content:center;gap:20px;margin-top:20px;font-size:.9rem}.legend-item{display:flex;align-items:center;gap:6px}.legend-color{width:12px;height:12px;border-radius:2px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.achievement-card{background:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;text-align:center;border:2px solid #e5e7eb;transition:all .2s;opacity:.6;filter:grayscale(1)}.achievement-card.unlocked{border-color:#fbbf24;background:#fffbeb;opacity:1;filter:none;transform:scale(1.02);box-shadow:0 4px 15px #fbbf2433}.achievement-icon{font-size:3rem;margin-bottom:10px;display:inline-block}.achievement-card.unlocked .achievement-icon{animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.achievement-title{font-weight:700;margin-bottom:5px;color:#1f2937}.achievement-desc{font-size:.85rem;color:#6b7280}.empty-state{text-align:center;color:#6b7280;padding:40px;background:#fff;border-radius:12px}.admin-dashboard{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:2rem;color:#fff}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.admin-header h1{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:flex;align-items:center;gap:.75rem}.admin-header h1 span{font-size:1.75rem}.admin-logout-btn{padding:.6rem 1.25rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-size:.9rem;cursor:pointer;transition:all .2s ease}.admin-logout-btn:hover{background:#fff3;transform:translateY(-1px)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2.5rem}.admin-dashboard .stat-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-top:1px solid rgba(255,255,255,.1);border-radius:16px;padding:1.5rem;transition:all .3s ease;color:#fff}.admin-dashboard .stat-card:hover{transform:translateY(-4px);box-shadow:0 10px 40px #0000004d;border-color:#667eea66}.admin-dashboard .stat-card .stat-icon{font-size:2rem;margin-bottom:.75rem}.admin-dashboard .stat-card .stat-value{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:.25rem}.admin-dashboard .stat-card .stat-label{font-size:.9rem;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.teachers-section{background:#ffffff08;border-radius:20px;padding:2rem;border:1px solid rgba(255,255,255,.08)}.teachers-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.teachers-table{width:100%;border-collapse:separate;border-spacing:0}.teachers-table th,.teachers-table td{text-align:left;padding:1rem}.teachers-table th{color:#ffffff80;font-weight:500;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.1)}.teachers-table tr{transition:background .2s ease}.teachers-table tbody tr:hover{background:#ffffff0d}.teachers-table td{border-bottom:1px solid rgba(255,255,255,.05)}.teacher-name{font-weight:600;color:#fff}.teacher-email{color:#fff9;font-size:.9rem}.badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600}.badge-blue{background:#3b82f633;color:#60a5fa}.badge-green{background:#10b98133;color:#34d399}.badge-purple{background:#8b5cf633;color:#a78bfa}.admin-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem}.admin-loading .spinner{width:48px;height:48px;border:3px solid rgba(255,255,255,.1);border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.admin-loading p{color:#fff9;font-size:1rem}.empty-state{text-align:center;padding:3rem;color:#ffffff80}.empty-state-icon{font-size:3rem;margin-bottom:1rem}@media (max-width: 768px){.admin-dashboard{padding:1rem}.admin-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid{grid-template-columns:1fr 1fr}.teachers-table{font-size:.85rem}.teachers-table th,.teachers-table td{padding:.75rem .5rem}}.visibility-toggle{width:36px;height:36px;border-radius:8px;border:none;font-size:1.1rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center}.visibility-toggle.on{background:#10b98133;color:#34d399}.visibility-toggle.on:hover{background:#10b9814d}.visibility-toggle.off{background:#ef444433;color:#f87171}.visibility-toggle.off:hover{background:#ef44444d}.section-description{color:#fff9;margin-bottom:1.5rem;font-size:.95rem}.visibility-table td:nth-child(3),.visibility-table td:nth-child(4),.visibility-table th:nth-child(3),.visibility-table th:nth-child(4){text-align:center;width:100px}.teachers-section+.teachers-section{margin-top:2rem}.create-teacher-form{margin-top:1rem}.form-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.form-input{flex:1;min-width:150px;padding:.75rem 1rem;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-size:.95rem;transition:all .2s ease}.form-input::placeholder{color:#fff6}.form-input:focus{outline:none;border-color:#667eea99;background:#ffffff1f}.create-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.create-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #667eea66}.create-btn:disabled{opacity:.6;cursor:not-allowed}.teacher-message{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.teacher-message.success{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.teacher-message.error{background:#ef444426;color:#f87171;border:1px solid rgba(239,68,68,.3)}.generator-section{background:linear-gradient(135deg,#8b5cf614,#7c3aed0d)!important;border:1px solid rgba(139,92,246,.2)!important}.generator-section h2{background:linear-gradient(135deg,#a78bfa,#c4b5fd);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.generator-form{display:flex;flex-direction:column;gap:1.5rem}.generator-inputs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.generator-inputs .form-group{display:flex;flex-direction:column;gap:.5rem}.generator-inputs .form-group label{font-size:.85rem;font-weight:500;color:#ffffffb3}.generator-inputs .form-group.full-width{grid-column:1 / -1}.transcript-input{min-height:180px;resize:vertical;font-family:Monaco,Consolas,monospace;font-size:.9rem;line-height:1.5}.generate-btn{grid-column:1 / -1;background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important;font-size:1rem;padding:1rem 2rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.generate-btn:hover:not(:disabled){box-shadow:0 4px 20px #8b5cf666!important}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.generator-preview{background:#0000004d;border-radius:12px;border:1px solid rgba(139,92,246,.2);overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#8b5cf61a;border-bottom:1px solid rgba(139,92,246,.2)}.preview-header h3{font-size:1rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.preview-actions{display:flex;gap:.5rem}.preview-btn{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.85rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.4rem}.preview-btn:hover{background:#fff3}.preview-btn.primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:transparent}.preview-btn.primary:hover{transform:translateY(-1px);box-shadow:0 2px 10px #8b5cf64d}.json-preview{max-height:400px;overflow:auto;padding:1.25rem;margin:0;font-family:Monaco,Consolas,Courier New,monospace;font-size:.8rem;line-height:1.6;color:#e2e8f0;background:transparent}.json-preview code{white-space:pre-wrap;word-break:break-word}.preview-hint{padding:1rem 1.25rem;margin:0;font-size:.85rem;color:#fff9;background:#8b5cf60d;border-top:1px solid rgba(139,92,246,.1)}.preview-hint code{background:#8b5cf633;padding:.15rem .4rem;border-radius:4px;color:#c4b5fd;font-size:.8rem}@media (max-width: 768px){.generator-inputs{grid-template-columns:1fr}.preview-header{flex-direction:column;gap:1rem;align-items:flex-start}.preview-actions{width:100%}.preview-btn{flex:1;justify-content:center}}.badge-gray{background:#94a3b833;color:#94a3b8}.content-builder{display:flex;flex-direction:column;height:100vh;background-color:#f3f4f6;font-family:Inter,sans-serif}.builder-header{height:60px;background-color:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;padding:0 20px}.builder-header h1{font-size:1.25rem;font-weight:600;color:#111827;margin:0}.header-actions{display:flex;gap:10px}.builder-workspace{display:flex;flex:1;overflow:hidden}.builder-sidebar{width:300px;background-color:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow-y:auto}.sidebar-section{padding:15px;border-bottom:1px solid #f3f4f6}.sidebar-section h3{font-size:.75rem;text-transform:uppercase;color:#6b7280;margin-top:0;margin-bottom:10px;letter-spacing:.05em;font-weight:600}.builder-editor{flex:1;padding:20px;overflow-y:auto;border-right:1px solid #e5e7eb;background-color:#fff;max-width:500px}.builder-preview{flex:1.5;background-color:#f9fafb;display:flex;justify-content:center;padding:40px;overflow-y:auto}.device-frame{width:100%;max-width:480px;background-color:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;min-height:800px;border:1px solid #e5e7eb;padding:20px;overflow:hidden;position:relative}.step-item{display:flex;align-items:center;padding:8px 12px;margin-bottom:4px;border-radius:6px;cursor:pointer;transition:background-color .2s;border:1px solid transparent}.step-item:hover{background-color:#f3f4f6}.step-item.selected{background-color:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.step-item-actions{margin-left:auto;opacity:0;transition:opacity .2s}.step-item:hover .step-item-actions{opacity:1}.element-palette-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.element-type-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:15px;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;text-align:center;background:#fff}.element-type-card:hover{border-color:#3b82f6;background-color:#eff6ff;transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.element-type-icon{font-size:1.5rem;margin-bottom:5px}.element-type-label{font-size:.875rem;font-weight:500;color:#374151}.form-group{margin-bottom:15px}.form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:5px}.form-input,.form-textarea,.form-select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn{padding:8px 16px;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:background-color .2s;border:none}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover{background-color:#1d4ed8}.btn-secondary{background-color:#fff;border:1px solid #d1d5db;color:#374151}.btn-secondary:hover{background-color:#f9fafb}.btn-danger{color:#dc2626;background:none;padding:4px}.btn-danger:hover{background-color:#fee2e2;border-radius:4px}.element-list-item{display:flex;justify-content:space-between;align-items:center;padding:10px;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:8px;background-color:#fff;cursor:pointer}.element-list-item.selected{border-color:#3b82f6;background-color:#eff6ff}.mt-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.rules-box{border:1px solid #2563eb;background-color:#eff6ff;padding:15px;border-radius:8px;margin-bottom:20px}.q-focus-container{border:3px solid #333;background-color:#f4f4f4;padding:2rem;text-align:center;margin:20px 0;font-family:Georgia,serif;font-size:1.4rem;font-weight:700;box-shadow:5px 5px #0000001a}.write-line{border-bottom:1px solid #999;height:30px;margin-bottom:8px;width:100%}.source-table{width:100%;border-collapse:collapse}.source-table td{padding:10px;border:1px solid #999;vertical-align:top}.source-table th{padding:10px;text-align:left;background:#f0f0f0;border:1px solid #999}.alert-box{background-color:#fff3cd;border-left:5px solid #ffc107;padding:15px;margin-bottom:20px;color:#856404}.success-box{margin-top:30px;padding:15px;border-left:5px solid #10b981;background-color:#ecfdf5;color:#065f46;border-radius:4px}.print-btn{display:none}*,*:before,*:after{box-sizing:border-box}:root{--primary-color: #4f46e5;--primary-light: #818cf8;--primary-dark: #3730a3;--secondary-color: #06b6d4;--success-color: #10b981;--warning-color: #f59e0b;--danger-color: #ef4444;--text-primary: #1f2937;--text-secondary: #6b7280;--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--border-color: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.6}img,iframe,video{max-width:100%;height:auto}@media (max-width: 600px){body{padding:10px 10px 80px}main{padding:15px}}header{display:flex;justify-content:space-between;align-items:center;background-color:#fff;padding:10px 20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px}@media (max-width: 600px){header{flex-direction:column;gap:10px;text-align:center}}main{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%}.shake-animation{animation:shake .5s cubic-bezier(.36,.07,.19,.97) both}@keyframes popIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.popIn-animation{animation:popIn .4s ease forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-container{max-width:400px;margin:50px auto;padding:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center}.auth-container form input{width:100%;padding:10px;margin-bottom:10px;border:1px solid #ccc;border-radius:5px}.responsive-grid{width:100%}@media (max-width: 768px){.responsive-grid{grid-template-columns:1fr!important;gap:1rem}}#app-container.sidebar-layout{display:grid;grid-template-columns:280px 1fr;gap:20px;align-items:flex-start;min-width:0}main{background-color:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%;min-width:0;box-sizing:border-box}@media (max-width: 900px){#app-container.sidebar-layout{display:block}.sidebar-wrapper{display:none}}#sidebar-nav-container{position:sticky;top:20px;background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:20px}.sidebar-title{font-size:1.2em;color:#003876;margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.sidebar-step-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.sidebar-step-item{display:flex;align-items:center;gap:15px;padding:12px 15px;border-radius:8px;transition:all .3s ease;border:2px solid transparent;cursor:pointer}.sidebar-step-item:hover{background:#f4f7f9}.sidebar-step-item.active{background:#e8f0fe;border-color:#0275d8;font-weight:600}.sidebar-step-item.completed{background:#dff0d8;border-color:#5cb85c}.sidebar-step-item.locked{opacity:.5;cursor:not-allowed}.step-item-icon{width:30px;height:30px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;background:#e0e0e0;color:#666}.sidebar-step-item.active .step-item-icon{background:#0275d8;color:#fff}.sidebar-step-item.completed .step-item-icon{background:#5cb85c;color:#fff}.gated-section{border:1px solid #e0e0e0;border-radius:8px;padding:15px;margin-bottom:20px;background-color:#f9f9f9;transition:all .5s ease-in-out}.gated-section.locked{opacity:.5;pointer-events:none;filter:blur(2px)}.gated-section.unlocked{opacity:1;pointer-events:auto;filter:none}.accordion-section{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px;overflow:hidden}.accordion-header{background-color:#f9f9f9;padding:15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.accordion-header:hover{background-color:#f1f1f1}.accordion-content{max-height:0;overflow:hidden;padding:0 15px;transition:max-height .5s ease-out,padding .5s ease-out}.accordion-section.open .accordion-content{max-height:5000px;padding:15px;border-top:1px solid #e0e0e0}.drag-drop-container{display:flex;flex-direction:column;gap:20px;position:relative}.drop-zones-container{padding-bottom:20px}.drop-zone{background:#fff;border:2px dashed #cbd5e0;border-radius:8px;padding:15px;min-height:60px;transition:all .2s;display:flex;align-items:center;justify-content:space-between}.drop-zone.active{border-color:#4299e1;background:#ebf8ff}.drop-zone.filled{border-style:solid;border-color:#e2e8f0}.drop-zone.correct{border-color:#48bb78;background:#f0fff4}.drop-zone.incorrect{border-color:#f56565;background:#fff5f5}.sticky-pool-container{position:sticky;bottom:20px;background:#fffffff2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:15px;border-radius:12px;box-shadow:0 -4px 20px #0000001a;border:1px solid #e2e8f0;z-index:100;transition:transform .3s ease}.sticky-pool-container h4{margin:0 0 10px;font-size:.9em;color:#718096;text-transform:uppercase;letter-spacing:.05em}.item-pool{display:flex;flex-wrap:wrap;gap:10px}.draggable-item{background:#fff;border:1px solid #e2e8f0;padding:10px 16px;border-radius:20px;box-shadow:0 2px 4px #0000000d;cursor:grab;font-weight:500;-webkit-user-select:none;user-select:none;touch-action:none}.draggable-item.dragging{opacity:.5;cursor:grabbing;box-shadow:0 10px 20px #0000001a;transform:scale(1.05);z-index:9999}.drag-drop-controls{margin-top:20px;text-align:right}.activity-feedback{margin-top:15px;padding:12px;border-radius:5px;text-align:center;font-weight:500}.activity-feedback.correct{background-color:#dff0d8;color:#3c763d}.activity-feedback.incorrect{background-color:#f2dede;color:#a94442}.fill-blanks-component{padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.fill-blanks-wrapper{position:relative}.floating-word-bank{position:sticky;top:10px;background:#fff;padding:15px;border-radius:8px;box-shadow:0 4px 12px #00000014;border:1px solid #e2e8f0;z-index:90;margin-bottom:20px;transition:all .3s ease}.floating-word-bank.collapsed{padding:10px}.bank-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.bank-header h4{margin:0;font-size:.9em;color:#718096}.toggle-bank-btn{background:none;border:none;color:#4299e1;cursor:pointer;font-size:.85em;font-weight:600}.word-bank-items{display:flex;flex-wrap:wrap;gap:8px}.word-chip{background:#ebf8ff;color:#2b6cb0;padding:6px 12px;border-radius:16px;font-size:.9em;cursor:grab;border:1px solid #bee3f8;transition:all .2s}.word-chip:hover{background:#bee3f8;transform:translateY(-1px)}.word-chip.used{opacity:.4;background:#edf2f7;border-color:#cbd5e0;color:#a0aec0;cursor:default}.fill-blanks-text{background:#f8f9fa;padding:2rem;border-radius:8px;line-height:2;font-size:1.1rem;margin-bottom:2rem}.blank-input{display:inline-block;min-width:80px;border-bottom:2px solid #4299e1;padding:0 5px;margin:0 4px;color:#2b6cb0;font-weight:600;cursor:pointer;transition:background .2s}.blank-input:hover{background:#ebf8ff}.blank-input.filled{border-bottom-style:solid}.blank-input.correct{background:#c6f6d5;border-color:#48bb78;color:#22543d;cursor:default}.blank-input.incorrect{background:#fed7d7;border-color:#f56565;color:#742a2a;cursor:default}.fill-blanks-controls{display:flex;gap:1rem;align-items:center}.check-btn,.reset-btn{padding:.75rem 2rem;font-weight:600;border:none;border-radius:8px;cursor:pointer}.check-btn{background:#0275d8;color:#fff}.reset-btn{background:#6c757d;color:#fff}.matching-dnd-container{display:flex;flex-direction:column;gap:30px;margin-top:20px}@media (min-width: 768px){.matching-dnd-container{flex-direction:row;align-items:flex-start}}.terms-column{flex:1;display:flex;flex-direction:column;gap:15px;min-width:200px;background:#f8f9fa;padding:15px;border-radius:8px;border:1px solid #e9ecef;width:100%}.terms-column h4{margin:0 0 10px;color:#718096;font-size:.9em;text-transform:uppercase}.draggable-term{background:#fff;border:1px solid #cbd5e0;border-left:4px solid #4299e1;padding:15px;border-radius:6px;cursor:grab;font-weight:600;color:#2d3748;box-shadow:0 2px 4px #0000000d;transition:all .2s;touch-action:none}.draggable-term:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;border-color:#4299e1}.draggable-term.dragging{opacity:.5;cursor:grabbing}.definitions-column{flex:2;display:flex;flex-direction:column;gap:15px;width:100%}.drop-target-def{background:#fff;border:2px dashed #cbd5e0;border-radius:8px;padding:20px;transition:all .2s;position:relative;min-height:80px;display:flex;flex-direction:column;justify-content:center}.drop-target-def.active{background:#ebf8ff;border-color:#4299e1}.drop-target-def.matched{background:#f0fff4;border-style:solid;border-color:#48bb78}.drop-target-def.incorrect{background:#fff5f5;border-color:#f56565;animation:shake .4s}.def-text{color:#4a5568;line-height:1.5}.matched-term-chip{margin-top:10px;background:#48bb78;color:#fff;padding:8px 12px;border-radius:4px;font-weight:700;display:inline-block;align-self:flex-start;box-shadow:0 2px 4px #0000001a}.card-carousel-component{display:block;width:100%;max-width:100%;overflow:hidden;padding-bottom:20px;box-sizing:border-box}.carousel-viewport{width:100%;max-width:100%;overflow:hidden;padding:10px 0;margin:0}.carousel-track{display:flex;width:100%;transition:transform .4s cubic-bezier(.25,1,.5,1)}.carousel-slide{flex:0 0 100%;width:100%;max-width:100%;padding:0 4px;box-sizing:border-box;opacity:.4;transform:scale(.98);transition:all .4s ease}.carousel-slide.active{opacity:1;transform:scale(1)}.info-card{width:100%;box-sizing:border-box;padding:25px;background:#fff;border-radius:8px;border-left:5px solid #0275d8;box-shadow:0 4px 12px #00000014;height:100%;border-top:1px solid #eee;border-right:1px solid #eee;border-bottom:1px solid #eee;white-space:normal;overflow-wrap:break-word}.info-card h4{margin-top:0;font-size:1.4em;color:#333}.card-stat{margin-top:20px;padding-top:15px;border-top:1px solid #eee;display:flex;align-items:center;gap:15px}.stat-value{font-size:2.5em;font-weight:700;color:#0275d8}.carousel-dots-labeled{display:flex;justify-content:center;gap:10px;margin-top:25px;flex-wrap:wrap;width:100%;box-sizing:border-box}.dot-label{font-size:.9em;padding:8px 16px;border-radius:20px;background:#f1f5f9;color:#64748b;cursor:pointer;transition:all .2s ease;border:1px solid transparent;font-weight:500}.dot-label:hover{background:#e2e8f0;transform:translateY(-1px)}.dot-label.active{background:#0275d8;color:#fff;font-weight:600;box-shadow:0 2px 5px #0275d84d}.carousel-nav{display:flex;justify-content:center;margin-top:25px;width:100%}.complete-btn{background-color:#10b981;color:#fff;border:none;padding:12px 30px;border-radius:6px;cursor:pointer;font-weight:600;font-size:1rem;transition:background .2s}.complete-btn:hover{background-color:#059669}.complete-btn:disabled{background-color:#cbd5e0;cursor:not-allowed}.quiz-container .quiz-question{font-size:1.1em;font-weight:600;color:#003876;margin-bottom:15px}.quiz-grid{display:grid;grid-template-columns:1fr;gap:15px}@media (min-width: 600px){.quiz-grid.short-options{grid-template-columns:1fr 1fr}}.quiz-option-card{background:#fff;border:2px solid #e2e8f0;border-radius:10px;padding:20px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:10px;font-weight:500}.quiz-option-card:hover{border-color:#4299e1;background:#ebf8ff}.quiz-option-card.selected{border-color:#4299e1;background:#ebf8ff;box-shadow:0 0 0 3px #4299e133}.quiz-option-card.correct{border-color:#48bb78;background:#f0fff4;color:#22543d}.quiz-option-card.incorrect{border-color:#f56565;background:#fff5f5;color:#742a2a}.option-icon{font-size:1.2em;opacity:.7}.quiz-container .feedback{margin-top:15px;padding:15px;border-radius:5px;display:none}.quiz-container .feedback.show{display:block}.quiz-container .feedback.correct{background:#e8f5e9;color:#2e7d32}.quiz-container .feedback.incorrect{background:#ffebee;color:#c62828}.statement-card{background-color:#fff;padding:15px;margin-bottom:10px;border-radius:5px;border:1px solid #ddd}.tf-buttons button{margin-right:10px;padding:8px 12px;cursor:pointer;border-radius:4px;border:1px solid #ccc}.tf-buttons button.correct{background-color:#5cb85c;color:#fff;border-color:#4cae4c}.tf-buttons button.incorrect{background-color:#d9534f;color:#fff;border-color:#d43f3a}.audio-gating-component .audio-container{position:relative;width:100%;padding-top:56.25%;background:#e8e8e8;border-radius:10px;overflow:hidden;margin:15px 0}.audio-gating-component .audio-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.listening-indicator{margin-top:15px;padding:15px;background:#fff3cd;border-left:4px solid #ffc107;border-radius:5px;display:flex;align-items:center;gap:10px}.listening-indicator.completed{background:#d4edda;border-left-color:#28a745}.stat-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:20px}.stat-card{background:#fff;padding:25px;border-radius:10px;text-align:center;box-shadow:0 4px 15px #00000014;border-top:5px solid #5eb9b4;transition:all .3s ease;cursor:pointer}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #0000001f}.stat-number{font-size:2.5em;font-weight:700;color:#003876;margin-bottom:10px}.stat-detail{max-height:0;overflow:hidden;transition:max-height .4s ease-out,margin-top .4s ease-out}.stat-card.expanded .stat-detail{max-height:200px;margin-top:15px;padding-top:15px;border-top:2px solid #e0e0e0}.myth-reality-component{display:flex;flex-direction:column;gap:20px;margin-top:20px}.myth-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 15px #00000014;border:1px solid #ddd}.myth-statement{padding:20px;background:#fff3cd;border-left:5px solid #ffc107;font-size:1.1em;font-weight:600;color:#856404}.myth-buttons{display:grid;grid-template-columns:1fr 1fr}.myth-btn{padding:15px;border:none;background:#fff;cursor:pointer;font-size:1.05em;font-weight:600;border-top:1px solid #eee}.myth-btn:first-child{border-right:1px solid #eee}.myth-btn:hover:not(:disabled){background:#f8f9fa}.myth-btn.correct{background:#4caf50;color:#fff}.myth-btn.incorrect{background:#f44336;color:#fff}.myth-explanation{padding:20px;background:#f8f9fa;border-top:1px solid #eee;display:none}.myth-explanation.show{display:block}.myth-explanation.correct{background:#e8f5e9;color:#2e7d32}.myth-explanation.incorrect{background:#ffebee;color:#c62828}.timeline-visual{position:relative;padding:40px 0;margin:30px auto;max-width:800px}.timeline-line{position:absolute;left:50%;transform:translate(-50%);width:4px;height:100%;background:linear-gradient(180deg,#003876,#5eb9b4);top:0}.timeline-item{display:flex;margin-bottom:40px;position:relative;width:50%;opacity:0;animation:fadeInUp .6s ease-out forwards}.timeline-item.left{left:0;padding-right:30px;justify-content:flex-end;text-align:right}.timeline-item.right{left:50%;padding-left:30px;justify-content:flex-start}.timeline-card{background:#fff;padding:20px;border-radius:10px;box-shadow:0 4px 15px #0000001a;border:2px solid #5eb9b4;width:100%}.timeline-year{position:absolute;top:50%;transform:translateY(-50%);background:#003876;color:#fff;padding:8px 15px;border-radius:25px;font-weight:700;z-index:10}.timeline-item.left .timeline-year{right:-40px}.timeline-item.right .timeline-year{left:-40px}@media (max-width: 768px){.timeline-line{left:20px;transform:none}.timeline-item{width:100%;left:0!important;padding-left:50px!important;padding-right:0!important;text-align:left!important;justify-content:flex-start!important}.timeline-year{left:-10px!important;right:auto!important;font-size:.8em;padding:4px 8px}}.step-navigation{background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px}.step-progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:10px;margin-bottom:30px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#0275d8,#5cb85c);transition:width .5s ease}.step-indicators{display:flex;justify-content:space-between;align-items:flex-start;position:relative}.step-indicator{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;transition:all .3s ease}.step-circle{width:50px;height:50px;border-radius:50%;background:#e0e0e0;color:#666;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2em;margin-bottom:10px;transition:all .3s ease;border:3px solid transparent}.step-indicator.active .step-circle{background:#0275d8;color:#fff;border-color:#0275d8;box-shadow:0 0 0 4px #0275d833;transform:scale(1.1)}.step-indicator.completed .step-circle{background:#5cb85c;color:#fff;border-color:#5cb85c}.step-label{font-size:.9em;color:#666;text-align:center;max-width:120px}@media (max-width: 600px){.step-circle{width:35px;height:35px;font-size:.9em}.step-label{display:none}.step-navigation{padding:15px}}.step-content{background:#fff;padding:30px;border-radius:10px;box-shadow:0 2px 8px #0000001a;min-height:400px}.step-header{margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.step-controls{display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding-top:20px;border-top:2px solid #e0e0e0}.step-btn{padding:12px 30px;border:none;border-radius:5px;font-size:1.1em;font-weight:600;cursor:pointer;transition:all .3s ease}.step-btn.prev{background:#e0e0e0;color:#666}.step-btn.next{background:#0275d8;color:#fff}.step-btn:disabled{opacity:.5;cursor:not-allowed}.step-completion-status{padding:10px 20px;background:#fff3cd;border-left:4px solid #ffc107;border-radius:5px;color:#856404;font-weight:500}.step-completion-status.complete{background:#d4edda;border-left-color:#28a745;color:#155724}@media (max-width: 600px){.step-content{padding:15px}.step-btn{padding:10px 20px;font-size:1em}}.hierarchical-mindmap-component{padding:20px;background:#f8f9fa;border-radius:8px}.mindmap-header{margin-bottom:20px;border-bottom:1px solid #e0e0e0;padding-bottom:15px}.node-counter{display:inline-flex;align-items:center;gap:8px;background:#fff;padding:8px 16px;border-radius:20px;font-size:14px;box-shadow:0 2px 4px #0000001a;margin-top:10px}.mindmap-workspace{display:grid;grid-template-columns:250px 1fr;gap:20px;margin-bottom:20px}.word-bank{background:#fff;padding:16px;border-radius:8px;box-shadow:0 2px 8px #0000001a;align-self:start}.word-item{background:#e8f0fe;color:#333;padding:10px 14px;border:1px solid #d0d8e0;border-radius:6px;cursor:grab;transition:all .2s;font-weight:500;text-align:center}.mindmap-canvas{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:auto;min-height:500px}.tree-container{display:flex;flex-direction:column;align-items:flex-start;padding:20px}.tree-node{position:relative;padding-left:40px}.tree-node.root-node{padding-left:0}.node-content{display:flex;align-items:center;gap:8px;margin-bottom:10px;position:relative}.expand-toggle{width:24px;height:24px;border:2px solid var(--node-color, #bdc3c7);background:#fff;border-radius:50%;cursor:pointer;font-weight:700;color:var(--node-color, #7f8c8d);display:flex;align-items:center;justify-content:center}.node-label-wrapper{display:flex;align-items:center;gap:8px;background:var(--node-color, #3498db);color:#fff;padding:10px 16px;border-radius:8px;box-shadow:0 2px 6px #00000026;position:relative}.node-actions{display:flex;gap:4px;opacity:0;pointer-events:none;transition:opacity .2s}.node-label-wrapper:hover .node-actions{opacity:1;pointer-events:all}.node-children{padding-left:20px;border-left:2px solid #e0e0e0;transition:all .3s}.tree-node:before{content:"";position:absolute;top:12px;left:20px;width:20px;height:2px;background:#e0e0e0}.tree-node.root-node:before{display:none}@media (max-width: 768px){.mindmap-workspace{grid-template-columns:1fr}.word-bank{order:1}.mindmap-canvas{order:2}}.reflective-canvas-component{padding:1.5rem;background:#f8f9fa;border-radius:8px}.editor-container{background:#fff;border-radius:8px;height:200px}.ql-toolbar{border-top-left-radius:8px;border-top-right-radius:8px;background:#f1f3f5}.ql-container{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.prompt-meta{margin-top:.5rem;text-align:right;font-size:.9rem;color:#6c757d}.word-count.complete{color:#28a745;font-weight:600}@media print{header,.sidebar-wrapper,#sidebar-nav-container,.step-controls,.no-print,.step-navigation,button{display:none!important}body,#app-container,main{background:#fff;margin:0;padding:0;width:100%;display:block}#app-container.sidebar-layout{display:block}#assignment-container{box-shadow:none;border:none;width:100%;max-width:100%}body{color:#000}h3{page-break-after:avoid}.assignment-summary>div{page-break-inside:avoid}}.cover-image-component{margin-bottom:30px;border-radius:10px;overflow:hidden;background:#fff}.cover-image-component .image-container{width:100%;height:300px;background-size:cover;background-position:center;border-radius:10px}.cover-image-component.overlay-mode .image-container{height:400px;position:relative;display:flex;align-items:center;justify-content:center;text-align:center}.cover-image-component.overlay-mode .image-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080}.cover-image-component.overlay-mode .text-overlay{position:relative;z-index:2;color:#fff;padding:20px}.cover-image-component.overlay-mode h1{font-size:2.5em;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.cover-image-component.overlay-mode p{font-size:1.3em;margin:0;opacity:.9}.cover-page-container{position:relative;width:100%;min-height:80vh;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000001a;display:flex;flex-direction:column}.cover-background{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;z-index:0}.cover-content.overlay-mode{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;background:#0009;color:#fff;text-align:center;padding:40px}.cover-content.overlay-mode .cover-title{color:#fff;font-size:3em;margin-bottom:10px}.cover-content.overlay-mode .cover-subtitle{color:#e0e0e0;font-size:1.5em;font-weight:300}.cover-content.split-mode{position:relative;z-index:1;margin-top:300px;background:#fff;padding:40px;flex:1;text-align:center}.cover-content.split-mode .cover-title{color:#003876;font-size:2.5em;margin-bottom:10px}.cover-content.split-mode .cover-subtitle{color:#666;font-size:1.3em;font-weight:300}@media (max-width: 768px){.cover-content.overlay-mode .cover-title{font-size:2em}.cover-content.overlay-mode .cover-subtitle{font-size:1.2em}.cover-content.split-mode{margin-top:200px;padding:20px}.cover-content.split-mode .cover-title{font-size:2em}}.start-course-btn{margin-top:30px;padding:15px 40px;font-size:1.2em;font-weight:700;color:#fff;background:#0275d8;border:none;border-radius:50px;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 15px #0275d84d}.start-course-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0275d866;background:#025aa5}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px}.mobile-only{display:none}.desktop-only{display:block}@media (max-width: 900px){.mobile-only{display:block}.desktop-only{display:none}}#app-container{max-width:1200px;margin:0 auto;padding:1.5rem}#app-container.sidebar-layout{display:grid;grid-template-columns:300px 1fr;gap:1.5rem}#assignment-container{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:2rem}.step-content{margin-bottom:2rem}.step-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.step-controls{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.step-btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.step-btn.prev{background-color:var(--bg-tertiary);color:var(--text-primary)}.step-btn.next{background-color:var(--primary-color);color:#fff}.step-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.step-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}button,[role=button]{cursor:pointer;transition:all .2s ease}button:hover,[role=button]:hover{transform:translateY(-1px)}button:focus,[role=button]:focus{outline:none;box-shadow:0 0 0 3px #4f46e533}.clickable{cursor:pointer}.focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.box-shadow-sm{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.box-shadow-md{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.box-shadow-lg{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.radius-sm{border-radius:.25rem}.radius-md{border-radius:.375rem}.radius-lg{border-radius:.5rem}.radius-xl{border-radius:.75rem}.interactive-box{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;transition:all .2s ease;cursor:pointer;position:relative;overflow:hidden}.interactive-box:hover{border-color:var(--primary-light);transform:translateY(-3px);box-shadow:var(--box-shadow-md)}.interactive-box:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e533}.card-stat-hero{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:1.5rem 0;padding:1rem;background:linear-gradient(to bottom right,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.stat-ring{background:#fff;width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px #0000000d;border:4px solid #0ea5e9;margin-bottom:1rem}.stat-value{font-size:2rem;font-weight:800;color:#0369a1;line-height:1}.stat-label{font-size:1.1rem;color:#475569;font-weight:600;text-align:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}@keyframes pulseOnce{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes bounceHint{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-5px)}}@keyframes drawLine{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}.animate-fadeIn{animation:fadeIn .3s ease-out}.animate-slideInUp{animation:slideInUp .3s ease-out}.animate-slideInRight{animation:slideInRight .3s ease-out}.animate-pulse{animation:pulse .3s ease-out}.animate-shake{animation:shake .5s ease-out}.transition-all{transition:all .2s ease}.interactive-hover{transition:all .2s ease;position:relative}.interactive-hover:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}@media (max-width: 768px){#app-container.sidebar-layout{grid-template-columns:1fr}.sidebar-nav{position:fixed;top:0;left:-300px;height:100%;width:280px;background:var(--bg-primary);box-shadow:2px 0 10px #0000001a;z-index:1000;transition:left .3s ease;padding:1.5rem}.sidebar-nav.open{left:0}.mobile-menu-toggle{display:block;position:fixed;top:1rem;left:1rem;z-index:1001;background:var(--bg-primary);border:none;border-radius:50%;width:48px;height:48px;box-shadow:var(--shadow-md);display:flex;align-items:center;justify-content:center}.overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;display:none}.overlay.active{display:block}.quiz-options{grid-template-columns:1fr}.drag-drop-content{flex-direction:column}.item-pool{order:2}.drop-zones-container{order:1}}
