.XlNdMa_container{margin-top:1rem}.XlNdMa_buttonRow{gap:.5rem;margin-bottom:1rem;display:flex}.XlNdMa_primaryButton{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;flex:1;padding:.5rem 1rem;transition:opacity .2s}.XlNdMa_primaryButton:hover{opacity:.9}.XlNdMa_primaryButton:disabled{opacity:.5;cursor:not-allowed}.XlNdMa_formPanel{background:var(--panel-2);border-radius:8px;margin-bottom:1rem;padding:1rem}.XlNdMa_input,.XlNdMa_select{background:var(--panel);width:100%;color:var(--text);border:1px solid var(--glass-border);border-radius:4px;margin-bottom:.5rem;padding:.5rem}.XlNdMa_formActions{gap:.5rem;display:flex}.XlNdMa_successButton{background:var(--good);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:.5rem 1rem}.XlNdMa_cancelButton{background:var(--panel);color:var(--text);border:1px solid var(--glass-border);cursor:pointer;border-radius:4px;padding:.5rem 1rem}.XlNdMa_movingPanel{border:2px dashed var(--accent);background:#ffa5001a;border-radius:8px;margin-bottom:1rem;padding:1rem}.XlNdMa_movingTitle{margin:0 0 .5rem;font-weight:700}.XlNdMa_movingSubtitle{margin:0 0 .5rem}.XlNdMa_sectionTitle{color:var(--text);margin:1rem 0 .5rem}.XlNdMa_scrollContainer{max-height:50vh;overflow-y:auto}.XlNdMa_subjectCard{background:var(--panel-2);border-radius:8px;margin-bottom:1rem;padding:1rem}.XlNdMa_subjectHeader{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.XlNdMa_moveButtons{flex-direction:column;gap:.25rem;display:flex}.XlNdMa_arrowButton{cursor:pointer;opacity:1;background:0 0;border:none;font-size:.8rem;transition:opacity .2s}.XlNdMa_arrowButton:disabled{opacity:.3;cursor:not-allowed}.XlNdMa_subjectTitle{flex:1;margin:0}.XlNdMa_editInput{background:var(--panel);color:var(--text);border:1px solid var(--accent);border-radius:4px;flex:1;padding:.25rem .5rem}.XlNdMa_iconButton{cursor:pointer;background:0 0;border:none;font-size:1rem;transition:transform .2s}.XlNdMa_iconButton:hover{transform:scale(1.1)}.XlNdMa_moduleList{margin-left:2rem}.XlNdMa_moduleItem{background:var(--panel);border-radius:6px;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.5rem;display:flex}.XlNdMa_moduleArrowButtons{flex-direction:column;gap:.1rem;display:flex}.XlNdMa_moduleArrow{cursor:pointer;opacity:1;background:0 0;border:none;padding:0;font-size:.7rem;line-height:.7rem}.XlNdMa_moduleArrow:disabled{opacity:.3;cursor:not-allowed}.XlNdMa_moduleName{flex:1}.XlNdMa_moduleEditInput{background:var(--panel-2);color:var(--text);border:1px solid var(--accent);border-radius:4px;flex:1;padding:.25rem .5rem}.XlNdMa_smallIconButton{cursor:pointer;background:0 0;border:none;font-size:.9rem}.XlNdMa_errorMessage{color:var(--bad);background:#ff00001a;border-radius:4px;margin-top:.5rem;padding:.5rem}.XlNdMa_loadingMessage{color:var(--text);text-align:center;padding:1rem}:root{--bg:#0f0f23;--bg-gradient:linear-gradient(135deg,#0f0f23 0%,#1a1a3e 50%,#0f0f23 100%);--panel:#ffffff08;--panel-2:#ffffff0f;--panel-hover:#ffffff14;--text:#fff;--text-secondary:#e2e8f0;--muted:#94a3b8;--accent:#00ffd4;--accent-secondary:#ff006e;--accent-tertiary:#8b5cf6;--good:#0f8;--bad:#ff4757;--focus:gold;--gradient-neon:linear-gradient(135deg,#00ffd4 0%,#ff006e 50%,#8b5cf6 100%);--gradient-aurora:linear-gradient(135deg,#667eea 0%,#764ba2 25%,#f093fb 50%,#4facfe 75%,#00f2fe 100%);--gradient-cyber:linear-gradient(135deg,#0ff 0%,#f0f 50%,#0ff 100%);--glass-bg:#ffffff05;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px 0 #00ffd41a;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 10px 30px #00000026;--shadow-lg:0 20px 40px #0003;--shadow-glow:0 0 40px #00ffd433;--brain-gradient:linear-gradient(135deg,#ff69b4 0%,#ff1493 100%);--brain-shadow:drop-shadow(0 0 20px #ff69b480);--primary-teal:#00ffd4;--primary-dark:#00cca3;--primary-light:#4dffdb;--accent-coral:#ff006e;--accent-purple:#8b5cf6;--success-green:#0f8;--error-red:#ff4757;--warning-amber:gold;--gray-900:#0f0f23;--gray-700:#475569;--gray-100:#1e293b;--white:#fff;--gradient-medical:linear-gradient(135deg,#00ffd4 0%,#00cca3 100%);--gradient-sunset:linear-gradient(135deg,#ff006e 0%,#8b5cf6 100%);--safe-area-inset-top:env(safe-area-inset-top);--safe-area-inset-bottom:env(safe-area-inset-bottom);--neon-shadow-cyan:0 0 20px #00ffd480;--neon-shadow-pink:0 0 20px #ff006e80;--neon-shadow-purple:0 0 20px #8b5cf680;--visible-options:1}:root{--brain-rotate-duration:3s;--brain-pulse-duration:1.5s;--brain-pulse-homepage:2s;--sparkle-duration:3s;--shimmer-duration:2s;--float-gradient-duration:20s;--bounce-duration:2s;--transition-fast:.2s;--transition-normal:.3s;--transition-slow:.5s;--transition-very-slow:.8s;--delay-stagger:.1s;--delay-short:.3s;--delay-medium:.5s;--delay-long:1s}@keyframes brain-pulse{0%,to{filter:var(--brain-shadow)brightness(1);transform:scale(1)rotate(0)}50%{filter:var(--brain-shadow)brightness(1.2);transform:scale(1.1)rotate(-5deg)}}@keyframes sparkle{0%,to{filter:brightness()drop-shadow(0 0 #fff0)contrast(1.2);transform:translateY(0)rotate(0)}25%{filter:brightness(1.3)drop-shadow(0 0 6px #fff9)contrast(1.2);transform:translateY(0)rotate(-5deg)}50%{filter:brightness(1.6)drop-shadow(0 0 12px #ffffffe6)contrast(1.2);transform:translateY(0)rotate(5deg)}75%{filter:brightness(1.3)drop-shadow(0 0 6px #fff9)contrast(1.2);transform:translateY(0)rotate(-5deg)}}@keyframes shimmer{0%{opacity:0}50%{opacity:1}to{opacity:0}}@keyframes correct-pulse{0%{transform:scale(1)}50%{box-shadow:0 0 40px var(--good);transform:scale(1.05)}to{transform:scale(1)}}@keyframes incorrect-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes success-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes error-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)scale(.5)}50%{transform:translateY(-5px)scale(.5)}}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 15px #ff69b466)}50%{filter:drop-shadow(0 0 25px #ff69b4b3)}}@keyframes bounce{0%,to{transform:translateY(0)}25%{transform:translateY(-10px)}75%{transform:translateY(5px)}}@keyframes bounceIn{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes floatGradient{0%,to{transform:scale(1)rotate(0)}33%{transform:scale(1.1)rotate(120deg)}66%{transform:scale(.9)rotate(240deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}:root{--bg:#0f0f23;--bg-gradient:linear-gradient(135deg,#0f0f23 0%,#1a1a3e 50%,#0f0f23 100%);--panel:#ffffff08;--panel-2:#ffffff0f;--panel-hover:#ffffff14;--text:#fff;--text-secondary:#e2e8f0;--muted:#94a3b8;--accent:#00ffd4;--accent-secondary:#ff006e;--accent-tertiary:#8b5cf6;--good:#0f8;--bad:#ff4757;--focus:gold;--gradient-neon:linear-gradient(135deg,#00ffd4 0%,#ff006e 50%,#8b5cf6 100%);--gradient-aurora:linear-gradient(135deg,#667eea 0%,#764ba2 25%,#f093fb 50%,#4facfe 75%,#00f2fe 100%);--gradient-cyber:linear-gradient(135deg,#0ff 0%,#f0f 50%,#0ff 100%);--glass-bg:#ffffff05;--glass-border:#ffffff1a;--glass-shadow:0 8px 32px 0 #00ffd41a;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 10px 30px #00000026;--shadow-lg:0 20px 40px #0003;--shadow-glow:0 0 40px #00ffd433;--brain-gradient:linear-gradient(135deg,#ff69b4 0%,#ff1493 100%);--brain-shadow:drop-shadow(0 0 20px #ff69b480);--primary-teal:#00ffd4;--primary-dark:#00cca3;--primary-light:#4dffdb;--accent-coral:#ff006e;--accent-purple:#8b5cf6;--success-green:#0f8;--error-red:#ff4757;--warning-amber:gold;--gray-900:#0f0f23;--gray-700:#475569;--gray-100:#1e293b;--white:#fff;--gradient-medical:linear-gradient(135deg,#00ffd4 0%,#00cca3 100%);--gradient-sunset:linear-gradient(135deg,#ff006e 0%,#8b5cf6 100%);--safe-area-inset-top:env(safe-area-inset-top);--safe-area-inset-bottom:env(safe-area-inset-bottom);--neon-shadow-cyan:0 0 20px #00ffd480;--neon-shadow-pink:0 0 20px #ff006e80;--neon-shadow-purple:0 0 20px #8b5cf680}[data-theme=light]{--bg:#f8fafc;--bg-gradient:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 50%,#f0f9ff 100%);--panel:#ffffffe6;--panel-2:#ffffffb3;--panel-hover:#fffffff2;--text:#0f172a;--text-secondary:#334155;--muted:#64748b;--accent:#0891b2;--accent-secondary:#e11d48;--accent-tertiary:#7c3aed;--good:#10b981;--bad:#ef4444;--focus:#f59e0b;--gradient-neon:linear-gradient(135deg,#0891b2 0%,#e11d48 50%,#7c3aed 100%);--gradient-aurora:linear-gradient(135deg,#818cf8 0%,#a78bfa 25%,#e879f9 50%,#60a5fa 75%,#34d399 100%);--editor-border:#00ffd44d;--editor-active:#00ffd41a;--zone-hover:#ffa5004d;--zone-placed:#00ff884d;--zone-error:#ff47574d;--glass-bg:#fffc;--glass-border:#0000001a;--glass-shadow:0 8px 32px 0 #0891b21a;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 10px 30px #00000014;--shadow-lg:0 20px 40px #0000001a;--shadow-glow:0 0 40px #0891b226;--brain-gradient:linear-gradient(135deg,#ec4899 0%,#db2777 100%);--brain-shadow:drop-shadow(0 0 15px #ec48994d);--neon-shadow-cyan:0 0 15px #0891b24d;--neon-shadow-pink:0 0 15px #e11d484d;--neon-shadow-purple:0 0 15px #7c3aed4d}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-optical-sizing:auto;letter-spacing:-.011em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 20%,#00ffd408,#0000 50%),radial-gradient(circle at 80% 80%,#ff006e08,#0000 50%),radial-gradient(circle at 40% 20%,#8b5cf608,#0000 50%);font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,sans-serif;transition:background .3s,color .3s;position:relative;overflow-x:hidden}.theme-toggle{z-index:1000;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);cursor:pointer;border-radius:16px;align-items:center;width:60px;height:32px;padding:4px;transition:all .3s;display:flex;position:fixed;top:20px;right:20px}.theme-toggle:hover{background:var(--panel-hover);box-shadow:var(--shadow-glow)}.theme-toggle-switch{background:var(--gradient-neon);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;transition:transform .3s cubic-bezier(.68,-.55,.265,1.55);display:flex}[data-theme=light] .theme-toggle-switch{transform:translate(28px)}.theme-toggle-switch:before{content:"🌙"}[data-theme=light] .theme-toggle-switch:before{content:"☀️"}.app{min-height:100vh;padding:calc(var(--safe-area-inset-top) + 20px)12px calc(var(--safe-area-inset-bottom) + 20px)12px;z-index:2;flex-direction:column;width:100%;max-width:1200px;margin:0 auto;display:flex;position:relative;overflow-x:hidden}.app>header{text-align:center;flex-shrink:0;width:100%;margin-bottom:48px;position:relative;overflow:hidden}.header-layout{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;width:100%;min-height:4rem;padding-left:4rem;padding-right:1rem;display:flex}.header-spacer{flex:none;width:1rem}.header-title-main{text-align:left;flex:auto;min-width:0;max-width:100%;margin:0 .5rem;position:relative}.app>header h1,.header-title-main{letter-spacing:-.02em;text-overflow:ellipsis;flex-wrap:nowrap;justify-content:center;align-items:center;gap:.15em;width:100%;min-width:0;margin:0 0 8px;font-family:-apple-system,BlinkMacSystemFont,Space Grotesk,Segoe UI,sans-serif;font-size:clamp(.75rem,4vw,3rem);font-weight:800;display:inline-flex;position:relative;overflow:hidden}.header-actions{flex:none;justify-content:flex-end;align-items:center;gap:.5rem;min-width:0;display:flex}.brain-emoji{filter:var(--brain-shadow);animation:bounce var(--bounce-duration)ease-in-out infinite;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial;font-size:1em;display:inline-block;position:relative}.brain-emoji:first-child{animation-delay:0s}.brain-emoji:last-child{animation-delay:1s}.tooth-emoji{filter:brightness(1.2)contrast(1.3);-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial;margin:0 -.05em;font-size:.85em;display:inline-block;position:relative;top:.1em}.app>header h1 .title-text{background:var(--gradient-neon);-webkit-text-fill-color:transparent;text-shadow:0 2px 40px #00ffd44d;-webkit-background-clip:text;background-clip:text;display:inline-block}.subtitle{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;padding:0 1rem;font-size:1.125rem;font-weight:500;display:flex}.subtitle span{display:inline-block}.courses-container{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:32px;display:grid}.course-card{background:var(--panel);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);cursor:pointer;border-radius:24px;padding:32px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.course-card:before{content:"";background:var(--gradient-neon);opacity:.8;height:2px;transition:transform .5s;position:absolute;top:0;left:0;right:0;transform:translate(-100%)}.course-card:hover:before{transform:translate(0)}.course-card:hover{background:var(--panel-hover);border-color:var(--accent);box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-8px)scale(1.02)}.course-card:active{transform:scale(.98)}.course-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.course-icon{background:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;transition:all .3s;display:flex;box-shadow:0 4px 12px #ff69b44d}.course-card:hover .course-icon{transform:rotate(10deg)scale(1.1);box-shadow:0 6px 20px #ff69b480}.course-title{color:var(--text);letter-spacing:-.02em;margin:0 0 4px;font-family:-apple-system,BlinkMacSystemFont,Space Grotesk,Segoe UI,sans-serif;font-size:1.5rem;font-weight:700}.course-subtitle{color:var(--muted);letter-spacing:.02em;font-size:.875rem;font-weight:500}.modules-list{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.module-btn,.home-btn,.modul-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--accent);border:1px solid var(--accent);text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#00ffd41a,#ff006e1a);border-radius:12px;padding:10px 20px;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:inline-block;position:relative;overflow:hidden}.module-btn:before{content:"";background:radial-gradient(circle,var(--accent)0%,transparent 70%);border-radius:50%;width:0;height:0;transition:width .5s,height .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.module-btn:hover:before{width:150%;height:150%}.module-btn:hover{border-color:var(--accent);color:var(--text);box-shadow:var(--shadow-md),var(--neon-shadow-cyan);text-decoration:none;transform:translateY(-2px)scale(1.05)}.module-btn:active{transform:scale(.98)}.module-btn.coming-soon{opacity:.3;pointer-events:none;background:var(--panel);border-color:var(--glass-border);color:var(--muted)}.stats{background:var(--glass-bg);border:1px solid var(--glass-border);color:var(--muted);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;align-items:center;gap:12px;margin-top:20px;padding:16px;font-size:.875rem;display:flex}.progress-mini{background:var(--panel);border-radius:99px;flex:1;height:6px;position:relative;overflow:hidden}.progress-mini>div{background:var(--gradient-neon);height:100%;box-shadow:var(--neon-shadow-cyan);transition:width .5s cubic-bezier(.175,.885,.32,1.275);position:relative}.progress-mini>div:after{content:"";background:linear-gradient(90deg,#0000,#fff9);width:20px;animation:2s infinite shimmer;position:absolute;top:0;bottom:0;right:0}.app>footer{text-align:center;color:var(--muted);letter-spacing:.02em;margin-top:48px;font-size:.875rem}.wrap{z-index:2;max-width:1200px;min-height:100vh;margin:32px auto;padding:0 20px;position:relative}.module-header{margin-bottom:32px}.module-header h1{background:var(--gradient-neon);-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin:0;font-family:-apple-system,BlinkMacSystemFont,Space Grotesk,Segoe UI,sans-serif;font-size:2.5rem;font-weight:700}.module-header .row{grid-template-columns:auto 1fr auto;align-items:center;gap:16px;display:grid}.module-header .row h1{text-align:center}.mut{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-top:8px;font-size:.875rem}.card{background:var(--panel);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);border-radius:24px;margin-top:24px;padding:32px;position:relative;overflow:hidden}.card>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.progress{flex:1;max-width:300px}.bar{background:var(--panel-2);border-radius:99px;height:8px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.bar>div{background:var(--gradient-neon);height:100%;box-shadow:var(--neon-shadow-cyan);transition:width .5s cubic-bezier(.175,.885,.32,1.275)}.question{color:var(--text);letter-spacing:-.01em;margin:24px 0;font-family:-apple-system,BlinkMacSystemFont,Space Grotesk,Segoe UI,sans-serif;font-size:1.375rem;font-weight:600;line-height:1.5}.options{gap:12px;margin:24px 0;padding:0;list-style:none;display:grid}.option{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:16px;align-items:center;min-height:56px;padding:16px 16px 16px 48px;font-size:1rem;line-height:1.5;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden}.option:before{content:"";background:var(--panel);border:2px solid var(--glass-border);border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.option:hover{background:var(--panel-hover);border-color:var(--accent);box-shadow:var(--shadow-md),var(--neon-shadow-cyan);transform:translate(8px)}.option:hover:before{border-color:var(--accent);box-shadow:0 0 10px var(--accent)}.option.selected{border-color:var(--accent);background:linear-gradient(135deg,#00ffd41a,#00ffd40d);box-shadow:0 0 30px #00ffd433}.option.selected:before{background:var(--accent);border-color:var(--accent);box-shadow:0 0 20px var(--accent)}.option.chosen{border-color:var(--accent-tertiary);background:linear-gradient(135deg,#8b5cf61a,#8b5cf60d);box-shadow:0 0 20px #8b5cf633}.option.chosen:before{background:var(--accent-tertiary);border-color:var(--accent-tertiary);box-shadow:0 0 15px var(--accent-tertiary);content:"✓";color:var(--bg);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.option.chosen.selected{border-color:var(--accent);background:linear-gradient(135deg,#8b5cf626,#00ffd41a);box-shadow:0 0 30px #00ffd44d}.option.correct{border-color:var(--good);background:linear-gradient(135deg,#00ff881a,#00ff880d);animation:.6s correct-pulse}.option.correct:before{background:var(--good);border-color:var(--good);content:"✓";color:var(--bg);justify-content:center;align-items:center;font-weight:700;display:flex}.option.incorrect{border-color:var(--bad);background:linear-gradient(135deg,#ff47571a,#ff47570d);animation:.5s incorrect-shake}.option.incorrect:before{background:var(--bad);border-color:var(--bad);content:"✕";color:var(--bg);justify-content:center;align-items:center;font-weight:700;display:flex}.status{text-transform:uppercase;letter-spacing:.05em;margin:20px 0;font-size:1rem;font-weight:600}.status.good{color:var(--good);text-shadow:0 0 20px var(--good)}.status.bad{color:var(--bad);text-shadow:0 0 20px var(--bad)}.explain{border-left:4px solid var(--accent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:pre-wrap;color:var(--text);box-shadow:var(--shadow-md);background:linear-gradient(135deg,#00ffd40d,#00ffd405);border-radius:16px;margin-top:20px;padding:20px 24px;font-size:.9375rem;line-height:1.6;animation:.5s slideIn}button{background:var(--gradient-neon);color:var(--bg);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-md);border:none;border-radius:12px;padding:12px 24px;font-size:.9375rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}button:before{content:"";background:#ffffff4d;width:0;height:300%;transition:width .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}button:hover:before{width:300%}button:hover{box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px)}button:active{transform:scale(.98)}.card>footer{justify-content:space-between;gap:16px;margin-top:32px;display:flex}textarea{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);width:100%;min-height:400px;color:var(--text);resize:vertical;border-radius:16px;padding:20px;font-family:SF Mono,Monaco,Cascadia Code,JetBrains Mono,Courier New,monospace;font-size:.875rem;transition:all .3s}textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-md),var(--neon-shadow-cyan);outline:none}.code,.technical{background:linear-gradient(135deg,#00ffd41a,#00ffd40d);border-radius:4px;padding:2px 6px;font-family:SF Mono,Monaco,Cascadia Code,JetBrains Mono,Courier New,monospace;font-size:.875em}.image-editor{gap:2rem;display:grid}.image-selector{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:16px;align-items:center;gap:1rem;padding:1.5rem;display:flex}.image-selector select{background:var(--panel);color:var(--text);border:1px solid var(--glass-border);border-radius:8px;flex:1;padding:.75rem;font-size:1rem;transition:all .3s}.image-selector select:focus{border-color:var(--accent);box-shadow:0 0 20px var(--accent);outline:none}.image-preview{border:2px dashed var(--accent);background:var(--glass-bg);cursor:crosshair;border-radius:16px;min-height:400px;transition:all .3s;position:relative;overflow:hidden}.image-preview:hover{border-color:var(--accent);box-shadow:0 0 30px var(--accent)}.image-preview img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.drop-zone{background:var(--gradient-neon);border:2px solid var(--white);width:140px;height:48px;color:var(--bg);cursor:move;box-shadow:var(--shadow-md);border-radius:8px;justify-content:center;align-items:center;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute}.drop-zone:hover{box-shadow:var(--shadow-lg),var(--shadow-glow);transform:scale(1.1)}.drop-zone-delete{background:var(--bad);width:24px;height:24px;color:var(--bg);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;transition:transform .2s;display:flex;position:absolute;top:-10px;right:-10px}.drop-zone-delete:hover{transform:scale(1.2)}.quiz-drop-zone{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px dashed var(--accent);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-width:140px;min-height:48px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:absolute}.quiz-drop-zone:hover:not(.filled){border-color:var(--accent);box-shadow:0 0 30px var(--accent);background:linear-gradient(135deg,#00ffd41a,#00ffd40d);transform:scale(1.05)}.quiz-drop-zone.filled{background:var(--gradient-neon);color:var(--bg);box-shadow:var(--shadow-md);border-style:solid;border-color:#0000}.quiz-drop-zone.correct{background:linear-gradient(135deg,var(--good),var(--success-green));box-shadow:var(--shadow-md),0 0 20px var(--good);animation:.5s success-bounce}.quiz-drop-zone.wrong{background:linear-gradient(135deg,var(--bad),var(--error-red));box-shadow:var(--shadow-md),0 0 20px var(--bad);animation:.5s error-shake}.quiz-drop-zone.active{border-color:var(--focus);box-shadow:0 0 40px var(--focus);z-index:100;transform:scale(1.1);min-width:240px!important}.zone-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:500}.remove-btn{background:var(--bad);width:24px;height:24px;color:var(--bg);cursor:pointer;box-shadow:var(--shadow-sm);border:none;border-radius:50%;padding:0;font-size:16px;font-weight:700;line-height:1;transition:transform .2s;position:absolute;top:-10px;right:-10px}.remove-btn:hover{transform:scale(1.2)}.correct-answer{color:var(--good);text-transform:uppercase;letter-spacing:.05em;text-shadow:0 0 10px var(--good);font-size:.8rem;font-weight:600}.draggable-answers{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:16px;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;padding:1.5rem;display:flex}.draggable-answer{background:var(--gradient-neon);color:var(--bg);cursor:move;-webkit-user-select:none;user-select:none;letter-spacing:.02em;box-shadow:var(--shadow-md);-webkit-touch-callout:none;touch-action:manipulation;border-radius:12px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:relative}.draggable-answer:hover{box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-4px)scale(1.05)}.draggable-answer.used{opacity:.3;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#333,#555)}.used-check{background:var(--good);width:20px;height:20px;color:var(--bg);box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;position:absolute;top:-6px;right:-6px}.edit-tabs{border-bottom:2px solid var(--glass-border);gap:.75rem;margin-bottom:1.5rem;padding-bottom:0;display:flex}.edit-tab{color:var(--muted);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;background:0 0;border:none;border-radius:12px 12px 0 0;padding:1rem 2rem;font-size:.9rem;font-weight:600;transition:all .3s;position:relative}.edit-tab:hover{background:var(--panel);color:var(--text)}.edit-tab.active{color:var(--accent);border-bottom:2px solid var(--accent);text-shadow:0 0 20px var(--accent);background:linear-gradient(135deg,#00ffd41a,#00ffd40d);margin-bottom:-2px}.suggestions-dropdown{background:var(--panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);z-index:1000;max-height:240px;box-shadow:var(--shadow-lg);border-top:none;border-radius:0 0 12px 12px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.suggestion-item{color:var(--text);cursor:pointer;border-bottom:1px solid var(--glass-border);padding:1rem 1.25rem;transition:all .2s}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover,.suggestion-item.selected{background:linear-gradient(135deg,#00ffd41a,#00ffd40d);padding-left:1.75rem}.suggestion-item.selected:before{content:"→ ";color:var(--accent);font-weight:700}.flex{display:flex}.between{justify-content:space-between}.small{font-size:.875rem}.hidden{display:none}.touch-hover{box-shadow:0 0 30px var(--accent);transform:scale(1.05);border-color:var(--accent)!important;background:linear-gradient(135deg,#00ffd41a,#00ffd40d)!important}.course-card{animation:.4s backwards fadeIn}.course-card:first-child{animation-delay:.1s}.course-card:nth-child(2){animation-delay:.2s}.course-card:nth-child(3){animation-delay:.3s}.course-card:nth-child(4){animation-delay:.4s}.mode-learning{--mode-color:var(--accent);--mode-bg:linear-gradient(135deg,#00ffd40d,#00ffd41a);--mode-accent:var(--accent)}.mode-practice{--mode-color:var(--accent-tertiary);--mode-bg:linear-gradient(135deg,#8b5cf60d,#8b5cf61a);--mode-accent:var(--accent-tertiary)}.mode-exam{--mode-color:var(--accent-secondary);--mode-bg:linear-gradient(135deg,#ff006e0d,#ff006e1a);--mode-accent:var(--accent-secondary)}.quiz-container,.login-container{gap:2.5rem;max-width:1400px;margin:0 auto;padding:clamp(2rem,5vw,3.5rem);display:grid}.image-container{aspect-ratio:16/10;box-shadow:var(--shadow-lg),var(--shadow-glow);border-radius:24px;position:relative;overflow:hidden}.image-container:before{content:"";pointer-events:none;background:linear-gradient(135deg,#0000,#00ffd40d);position:absolute;inset:0}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--panel);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--gradient-neon);box-shadow:var(--neon-shadow-cyan);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--gradient-sunset)}input,select,textarea,button{-webkit-text-size-adjust:100%;font-size:16px!important}@supports (-webkit-touch-callout:none){.quiz-drop-zone input{-webkit-appearance:none;font-size:16px}.card,.course-card,.quiz-drop-zone,.draggable-answers{-webkit-backdrop-filter:blur(20px)}}@media (max-width:768px){.courses-container{grid-template-columns:1fr}.header-layout{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:1rem}.header-spacer{display:none}.header-title-main{flex:100%;order:1;width:100%;margin:0}.header-actions{flex:100%;order:2;justify-content:center;gap:.5rem;width:100%}.app>header h1,.header-title-main{gap:.1em;font-size:clamp(1.25rem,6vw,2rem)}.brain-emoji{font-size:.85em}.tooth-emoji{margin:0 -.02em;font-size:.75em}.title-text{font-size:.95em}.header-actions button,.header-actions .module-btn{white-space:nowrap;flex-shrink:0;min-width:0;padding:.4rem .75rem;font-size:.78rem}.module-header h1{font-size:1.75rem}.quiz-drop-zone{min-width:160px!important;min-height:52px!important}.draggable-answer{min-height:48px;padding:1rem 1.5rem}.remove-btn{width:32px;height:32px;font-size:18px}.card{padding:20px}.option{padding:14px 14px 14px 44px}.module-header .row{text-align:center;grid-template-columns:1fr}.home-btn,.modul-btn{margin:0 auto}.theme-toggle{top:10px;right:10px}}@media (pointer:coarse){.quiz-drop-zone{min-width:120px!important;min-height:48px!important}.draggable-answer{min-height:48px;padding:1rem 1.75rem}.remove-btn{width:36px;height:36px;font-size:20px}.module-btn{padding:12px 24px;font-size:.9375rem}button{min-height:48px;font-size:1rem}}@media (max-width:600px){.app>header h1,.header-title-main{font-size:clamp(.9rem,5.5vw,1.75rem)}.brain-emoji:first-child,.brain-emoji:last-child{display:none}.header-actions button,.header-actions .module-btn{padding:.35rem .7rem;font-size:.75rem}}@media (max-width:480px){.app>header h1,.header-title-main{gap:.08em;font-size:clamp(.75rem,5vw,1.5rem)}.brain-emoji{font-size:.75em}.tooth-emoji{font-size:.65em;top:.05em}.header-layout{gap:.5rem;padding-top:.5rem;padding-left:3rem}.header-actions button,.header-actions .module-btn{padding:.3rem .55rem;font-size:.7rem}.subtitle{font-size:.85rem}}@media (max-width:380px){.header-layout{padding-top:3rem;padding-left:.5rem;padding-right:.5rem}.app>header h1,.header-title-main{font-size:clamp(.65rem,4.5vw,1.2rem)}.brain-emoji{font-size:.7em}.tooth-emoji{font-size:.6em}.header-actions button,.header-actions .module-btn{padding:.25rem .45rem;font-size:.65rem}.theme-toggle-btn{width:2.5rem;height:2.5rem;top:.5rem;left:.5rem}.subtitle{padding:0 .5rem;font-size:.75rem}}@media (min-width:768px) and (max-width:1024px){.app>header h1,.header-title-main{font-size:clamp(2rem,4.5vw,2.75rem)}.header-layout{gap:1rem}.header-actions button,.header-actions .module-btn{padding:.5rem 1rem;font-size:.85rem}}@media (min-width:1440px){.app,.wrap{max-width:1400px}.courses-container{grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.app>header h1,.header-title-main{font-size:clamp(2.5rem,3vw,4rem)}}.app-header{background:var(--panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);z-index:100;padding:1rem 0;position:sticky;top:0;box-shadow:0 2px 20px #0000001a}.header-content{justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:0 1rem;display:flex}.header-title{background:var(--gradient-neon);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;display:flex}.lab-icon:before{content:"🧪";filter:drop-shadow(0 0 10px #00ffd480);font-size:1.5rem}.tooth-icon:before{content:"🦷";filter:drop-shadow(0 0 10px #ff006e80);font-size:1.5rem}.accent{color:var(--accent);text-shadow:0 0 20px var(--accent)}.user-info{align-items:center;gap:.5rem;display:flex}.admin-gear-btn{cursor:pointer;filter:drop-shadow(0 0 10px #00ffd44d);background:0 0;border:none;padding:.5rem;font-size:1.5rem;transition:transform .3s}.admin-gear-btn:hover{filter:drop-shadow(0 0 20px #00ffd499);transform:rotate(90deg)}.logout-btn{color:var(--accent-secondary);border:1px solid var(--accent-secondary);cursor:pointer;background:#ff006e1a;border-radius:8px;padding:.5rem 1rem;font-size:.875rem;font-weight:600;transition:all .3s}.logout-btn:hover{background:var(--accent-secondary);color:var(--bg);transform:translateY(-2px);box-shadow:0 0 20px #ff006e80}.admin-panel-overlay{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);z-index:1000;width:500px;max-width:90vw;max-height:80vh;box-shadow:var(--shadow-lg),0 0 50px #00ffd41a;border-radius:16px;padding:2rem;animation:.3s slideIn;position:fixed;top:80px;right:20px;overflow-y:auto}.courses{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin:2rem 0;display:grid}.courses .modules{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.app-footer{text-align:center;border-top:1px solid var(--glass-border);color:var(--muted);margin-top:auto;padding:2rem}.footer-logo{margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.neon{filter:drop-shadow(0 0 10px)}.muted{color:var(--muted)}.enhanced-image-editor{gap:2rem;display:grid}input,select{background:var(--panel);width:100%;color:var(--text);border:1px solid var(--glass-border);border-radius:8px;padding:.75rem;font-size:1rem;transition:all .3s}input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 20px var(--accent);outline:none}.course-card,.card,.option,.module-btn,.draggable-answer,.quiz-drop-zone{will-change:transform}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{body{color:#000;background:#fff}.card{box-shadow:none;background:#fff;border:1px solid #ddd}button,.module-btn,.home-btn,.theme-toggle{display:none}}*{-webkit-tap-highlight-color:transparent}.enhanced-image-editor img{-webkit-user-select:none;user-select:none;-khtml-user-select:none;-o-user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;touch-action:none}@media (max-width:768px){.admin-panel-overlay{width:auto;left:10px;right:10px}.header-content{flex-direction:column;gap:.5rem}}.enhanced-image-quiz{box-sizing:border-box;--visible-options:1;width:100%;max-width:100%}.enhanced-image-quiz *{box-sizing:border-box}[data-theme=dark] .enhanced-image-quiz-mode-indicator{color:#ffffffe6;background:#282832cc;border-color:#fff3}[data-theme=light] .enhanced-image-quiz-mode-indicator{color:#000000d9;background:#fafafae6;border-color:#00000026}@media (max-width:480px){.enhanced-image-quiz{padding:0 .5rem}}@media (min-width:1440px){.enhanced-image-quiz{max-width:1200px;margin:0 auto}.enhanced-image-quiz-zone,.enhanced-image-quiz-popup{width:clamp(240px,30vw,340px)}.enhanced-image-quiz-image-container{max-width:900px}}@media (hover:none) and (pointer:coarse){.enhanced-image-quiz-zone,.enhanced-image-quiz-choice,.enhanced-image-quiz-suggestion{cursor:pointer;min-height:44px}.enhanced-image-quiz-choice:active,.enhanced-image-quiz-zone:active,.enhanced-image-quiz-suggestion:active{opacity:.8;transform:scale(.98)}}@media print{.enhanced-image-quiz-popup{display:none!important}.enhanced-image-quiz-zone{page-break-inside:avoid}}.enhanced-image-quiz-mode-indicator{background:var(--panel-2);color:var(--text);border:1px solid var(--glass-border);border-radius:8px;margin-bottom:1rem;padding:.75rem;font-size:.9rem}@media (max-width:480px){.enhanced-image-quiz-mode-indicator{border-radius:6px;margin-bottom:.8rem;padding:.6rem;font-size:.8rem}}.enhanced-image-quiz h3{margin-bottom:1rem;font-size:1.25rem}@media (max-width:480px){.enhanced-image-quiz h3{margin-bottom:.8rem;font-size:1.1rem}}@media (min-width:1024px){.enhanced-image-quiz h3{font-size:1.35rem}}.enhanced-image-quiz-choices-area{background:var(--panel-2);border:1px solid var(--glass-border);border-radius:8px;margin-bottom:1.5rem;padding:1rem}@media (max-width:480px){.enhanced-image-quiz-choices-area{border-radius:6px;margin-bottom:1rem;padding:.75rem}}@media (min-width:1024px){.enhanced-image-quiz-choices-area{padding:1.25rem}}.enhanced-image-quiz-choices-container{flex-wrap:wrap;gap:.5rem;display:flex}@media (max-width:480px){.enhanced-image-quiz-choices-container{gap:.4rem}}@media (min-width:1024px){.enhanced-image-quiz-choices-container{gap:.6rem}}.enhanced-image-quiz-choice{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s;transform:scale(1)}@media (max-width:480px){.enhanced-image-quiz-choice{border-radius:5px;align-items:center;min-height:44px;padding:.6rem .75rem;font-size:.8rem;display:inline-flex}}@media (min-width:1024px){.enhanced-image-quiz-choice{padding:.6rem 1.2rem;font-size:.9rem}}.enhanced-image-quiz-choice:active{opacity:.8;transform:scale(.95)}.enhanced-image-quiz-choice-available{opacity:1;cursor:pointer}.enhanced-image-quiz-choice-available-dark{background:#ff69b4;border:2px solid #ff69b4}.enhanced-image-quiz-choice-available-light{background:var(--good);border:2px solid var(--good)}.enhanced-image-quiz-choice-placed{background:var(--panel);opacity:.5;border:2px solid var(--glass-border);cursor:not-allowed}.enhanced-image-quiz-choice-dragged{transform:scale(1.1);box-shadow:0 4px 12px #ff69b44d}.enhanced-image-quiz-drag-hint{border-radius:6px;margin-top:.75rem;padding:.5rem;font-size:.85rem}@media (max-width:480px){.enhanced-image-quiz-drag-hint{border-radius:5px;margin-top:.6rem;padding:.4rem;font-size:.75rem}}@media (min-width:1024px){.enhanced-image-quiz-drag-hint{padding:.6rem;font-size:.9rem}}.enhanced-image-quiz-drag-hint-dark{color:#ff69b4;background:#ff69b41a}.enhanced-image-quiz-drag-hint-light{color:var(--good);background:#00ff001a}.enhanced-image-quiz-image-container{width:fit-content;max-width:100%;margin:0 auto 1.5rem;display:block;position:relative}@media (max-width:480px){.enhanced-image-quiz-image-container{margin-bottom:1rem}}.enhanced-image-quiz-image{opacity:0;border-radius:8px;width:100%;max-width:100%;height:auto;transition:opacity .2s;display:block}@media (max-width:480px){.enhanced-image-quiz-image{border-radius:6px}}.enhanced-image-quiz-image-ready{opacity:1}.enhanced-image-quiz-image-placeholder{background:var(--panel-2);width:100%;max-width:400px;height:300px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;font-size:1.2rem;display:flex}@media (max-width:480px){.enhanced-image-quiz-image-placeholder{border-radius:6px;height:200px;font-size:1rem}}@media (min-width:768px) and (max-width:1023px){.enhanced-image-quiz-image-placeholder{height:250px}}.enhanced-image-quiz-zone{cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation;justify-content:center;align-items:center;width:clamp(80px,15vw,160px);height:36px;padding:.4rem .8rem;font-size:.75rem;font-weight:600;transition:all .2s;display:flex;position:absolute;transform:translate(-50%,-50%)}@media (min-width:768px){.enhanced-image-quiz-zone{width:clamp(100px,18vw,180px);height:38px;font-size:.8rem}}@media (min-width:1024px){.enhanced-image-quiz-zone{width:clamp(120px,15vw,200px);height:40px;padding:.5rem 1rem;font-size:.85rem}}@media (max-width:480px){.enhanced-image-quiz-zone{width:clamp(70px,25vw,140px);height:auto;min-height:36px;padding:.4rem .6rem;font-size:.7rem}}.enhanced-image-quiz-zone:active{opacity:.9;transform:translate(-50%,-50%)scale(.95)}.enhanced-image-quiz-zone-default{background:var(--panel);color:var(--text);border:2px solid var(--glass-border);z-index:1;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-selected-dark{background:var(--panel);color:var(--text);z-index:1;opacity:.3;border:2px solid #ff69b4;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-selected-light{background:var(--panel);color:var(--text);border:2px solid var(--accent);z-index:1;opacity:.3;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-placed-dark{color:#fff;z-index:1;background:#ff1493;border:2px solid #ff1493;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-placed-light{background:var(--accent-secondary);color:#fff;border:2px solid var(--accent-secondary);z-index:1;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-correct{background:var(--good);color:#fff;border:2px solid var(--good);z-index:1;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-incorrect{background:var(--bad);color:#fff;border:2px solid var(--bad);z-index:1;border-radius:6px;box-shadow:0 2px 8px #0003}.enhanced-image-quiz-zone-answer{opacity:.9;margin-top:.25rem;font-size:.75rem}.enhanced-image-quiz-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;background:#00000080;animation:.3s ease-out fadeIn;position:fixed;inset:0}.enhanced-image-quiz-popup-header{color:#fff;background:0 0;border-bottom:1px solid #ffffff4d;border-radius:24px 24px 0 0;justify-content:center;align-items:center;padding:1rem;font-weight:600;display:flex;position:relative}.enhanced-image-quiz-popup-header:before{content:"";background:#fff6;border-radius:2px;width:40px;height:4px;position:absolute;top:8px;left:50%;transform:translate(-50%)}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-popup-input{appearance:none;color:#fff;background:#fff3;border-bottom:1px solid #ffffff4d;border-radius:0}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-popup-input::placeholder{color:#fff9}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestions{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scroll-behavior:smooth;flex-direction:column;gap:.5rem;max-height:45vh;padding:1rem;display:flex;overflow-y:auto}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestions::-webkit-scrollbar{width:6px}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestions::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestions::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestions::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestion{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;cursor:pointer;touch-action:manipulation;align-items:center;min-height:48px;padding:.75rem 1rem;font-size:.95rem;display:flex}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestion:active{transform:scale(.98);background:#ffffff4d!important}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestion-counter{display:none}@media (max-width:768px) and (orientation:landscape){.enhanced-image-quiz-popup-mobile{max-height:75vh}.enhanced-image-quiz-popup-mobile .enhanced-image-quiz-suggestions{max-height:40vh}.enhanced-image-quiz-zone{height:36px;min-height:36px;padding:.4rem .6rem;font-size:.75rem}}@media (max-width:480px){.enhanced-image-quiz-zone-answer{margin-top:.2rem;font-size:.7rem}}@media (min-width:1024px){.enhanced-image-quiz-zone-answer{font-size:.8rem}}.enhanced-image-quiz-popup{z-index:1000;-webkit-backdrop-filter:blur(10px);background:#ff8c42;border:2px solid #ff6b1a;border-radius:16px;flex-direction:column;width:clamp(140px,50vw,200px);max-height:60vh;padding:0;display:flex;position:absolute;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0003}.enhanced-image-quiz-popup-mobile{-webkit-backdrop-filter:blur(10px);z-index:1000;background:#ff8c42;border:2px solid #ff6b1a;border-bottom:none;border-radius:24px 24px 0 0;width:100%;max-width:100%;max-height:70vh;margin:0;animation:.3s ease-out slideUp;position:fixed;box-shadow:0 -8px 32px #0003;inset:auto 0 0!important;transform:none!important}.enhanced-image-quiz-popup::-webkit-scrollbar{width:6px}.enhanced-image-quiz-popup::-webkit-scrollbar-track{background:#ffffff1a;border-radius:3px}.enhanced-image-quiz-popup::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.enhanced-image-quiz-popup::-webkit-scrollbar-thumb:hover{background:#fff6}@media (min-width:768px){.enhanced-image-quiz-popup:not(.enhanced-image-quiz-popup-mobile){width:clamp(140px,20vw,200px)}.enhanced-image-quiz-suggestions{padding:.75rem}}@media (min-width:1024px){.enhanced-image-quiz-popup:not(.enhanced-image-quiz-popup-mobile){width:clamp(160px,18vw,220px)}.enhanced-image-quiz-suggestions{padding:1rem}}@media (max-width:480px){.enhanced-image-quiz-popup:not(.enhanced-image-quiz-popup-mobile){border-radius:12px;width:clamp(120px,60vw,180px);max-height:50vh}}.enhanced-image-quiz-popup-input{color:#fff;background:#fff3;border:none;border-bottom:1px solid #ffffff4d;border-radius:16px 16px 0 0;width:100%;margin:0;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.enhanced-image-quiz-popup-input::placeholder{color:#fff9}.enhanced-image-quiz-popup-input:focus{background:#ffffff4d;outline:none}@media (max-width:480px){.enhanced-image-quiz-popup-input{padding:1rem;font-size:.9rem}}@media (min-width:1024px){.enhanced-image-quiz-popup-input{padding:.75rem 1rem;font-size:.9rem}}.enhanced-image-quiz-suggestions{background:0 0;flex:1;min-height:40px;padding:.5rem;position:relative;overflow-y:auto}@media (max-width:480px){.enhanced-image-quiz-suggestions{min-height:44px}}.enhanced-image-quiz-suggestion{cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:6px;margin:2px 0;padding:.5rem;font-size:.875rem;transition:all .15s}@media (max-width:480px){.enhanced-image-quiz-suggestion{border-radius:5px;align-items:center;min-height:44px;padding:.6rem;font-size:.8rem;display:flex}}@media (min-width:1024px){.enhanced-image-quiz-suggestion{padding:.55rem;font-size:.9rem}}.enhanced-image-quiz-suggestion-normal{color:#fff;background:#ffffff26;border:1px solid #fff3;font-weight:500;transition:all .2s}.enhanced-image-quiz-suggestion-normal:hover{background:#ffffff40;transform:scale(1.02)}.enhanced-image-quiz-suggestion-highlighted{color:#fff;background:#ffffff59;border:1px solid #fff6;font-weight:600}.enhanced-image-quiz-highlight{background:#ffff004d;border-radius:2px;padding:0 2px;font-weight:600}.enhanced-image-quiz-suggestion-counter{color:#fff9;text-align:center;margin-top:4px;padding:.5rem;font-size:.7rem}@media (max-width:480px){.enhanced-image-quiz-suggestion-counter{margin-top:3px;font-size:.65rem}}.enhanced-image-quiz-explanation{background:var(--panel-2);border-radius:8px;margin-top:1.5rem;padding:1rem;font-size:.9rem}@media (max-width:480px){.enhanced-image-quiz-explanation{border-radius:6px;margin-top:1rem;padding:.8rem;font-size:.85rem}}@media (min-width:1024px){.enhanced-image-quiz-explanation{padding:1.25rem;font-size:.95rem}}.enhanced-image-quiz-explanation strong{margin-bottom:.5rem;display:block}@media (max-width:480px){.enhanced-image-quiz-explanation strong{margin-bottom:.4rem;font-size:.9rem}}.login-page{background:linear-gradient(135deg,#1a1a2e,#16213e);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex;position:relative;overflow:hidden}.login-page:before{content:"";background:radial-gradient(circle at 20% 50%,var(--accent)0%,transparent 50%),radial-gradient(circle at 80% 80%,var(--accent-secondary)0%,transparent 50%),radial-gradient(circle at 40% 20%,var(--accent-tertiary)0%,transparent 50%);opacity:.05;animation:floatGradient var(--float-gradient-duration)ease-in-out infinite;pointer-events:none;position:absolute;inset:0}.loading-container{text-align:center;animation:.5s fadeIn}.brain-loader{margin-bottom:2rem}.brain-emoji-loading{filter:drop-shadow(0 0 30px #ffb6c180);font-size:10rem;animation:3s linear infinite rotate;display:inline-block}.loading-text{color:var(--text);letter-spacing:.05em;opacity:0;font-size:2.5rem;font-weight:700;animation:.8s .3s forwards fadeInUp}.loading-text .tooth-emoji{filter:brightness(1.2)contrast(1.3);-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial;margin:0 -.1em;font-size:.9em;display:inline-block;position:relative;top:.15em}.theme-toggle-btn{background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid var(--glass-border);cursor:pointer;z-index:100;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;transition:all .3s;display:flex;position:absolute;top:2rem;right:2rem}.theme-toggle-btn:hover{box-shadow:var(--shadow-glow);border-color:var(--accent);transform:rotate(180deg)scale(1.1)}.theme-icon{font-size:1.5rem}.login-container{z-index:1;width:100%;max-width:720px;animation:.5s fadeInUp;position:relative}.back-to-home{color:var(--text);background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--glass-border);border-radius:100px;align-items:center;gap:.5rem;margin-bottom:2rem;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.back-to-home:hover{box-shadow:var(--shadow-glow);border-color:var(--accent);transform:translate(-5px)}.back-arrow{font-size:1.2rem;transition:transform .3s}.back-to-home:hover .back-arrow{transform:translate(-3px)}.login-header{text-align:center;color:var(--text);margin-bottom:2rem}.logo-animation{margin-bottom:1rem}.logo-brain{animation:bounce var(--bounce-duration)ease-in-out infinite;font-size:5rem;display:inline-block;position:relative}.logo-brain:after{content:"🧠";filter:blur(20px);opacity:.5;animation:bounce var(--bounce-duration)ease-in-out infinite;position:absolute;top:0;left:0}.login-header h1{color:#fff;letter-spacing:-.02em;margin-bottom:.5rem;font-size:3rem;font-weight:800}.login-header h1 .tooth-emoji{animation:sparkle var(--sparkle-duration)ease-in-out infinite;filter:brightness(1.2)contrast(1.3);-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial;margin:0 -.1em;font-size:.9em;display:inline-block;position:relative;top:.15em}.login-header .subtitle{color:#fff;opacity:.9;letter-spacing:.05em;text-transform:uppercase;margin-top:1rem;font-size:.95rem;font-weight:400}.login-box{background:var(--panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);border-radius:24px;padding:3.5rem;position:relative;overflow:hidden}.login-box:before{content:"";background:radial-gradient(circle,var(--accent)0%,transparent 70%);opacity:.03;pointer-events:none;width:200%;height:200%;animation:30s linear infinite rotate;position:absolute;top:-50%;left:-50%}.login-box.success-state{text-align:center}.success-icon{margin-bottom:1rem;font-size:4rem;animation:.6s bounceIn}.email-highlight{color:var(--accent);margin:1rem 0;font-size:1.1rem;font-weight:700}.helper-text{color:var(--muted);margin:1rem 0;font-size:.9rem}.welcome-section{margin-bottom:2rem}.welcome-section h2{color:var(--text);margin-bottom:.5rem;font-size:2rem;font-weight:700}.login-description{color:var(--text-secondary);font-size:1.05rem;line-height:1.6}.alert-banner{border-radius:12px;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem;padding:1rem;animation:.3s slideInLeft;display:flex}.alert-banner.warning{background:#ffc1071a;border:1px solid #ffc1074d}.alert-icon{flex-shrink:0;font-size:1.2rem}.alert-banner strong{color:var(--text);margin-bottom:.25rem;display:block}.alert-banner p{color:var(--text-secondary);margin:0;font-size:.9rem}.login-methods,.login-section{margin-bottom:1.5rem}.section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:1rem;font-weight:600;display:block}.input-with-button{gap:.5rem;display:flex}.modern-input{background:var(--glass-bg);border:2px solid var(--glass-border);color:var(--text);border-radius:12px;flex:1;padding:1rem 1.25rem;font-size:1.05rem;transition:all .3s}.modern-input:focus{border-color:var(--accent);background:var(--panel-hover);outline:none;box-shadow:0 0 0 4px #00ffd41a}.modern-input.error{border-color:var(--bad);animation:.3s shake}.modern-input::placeholder{color:var(--muted)}.send-btn{background:var(--gradient-neon);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:0 2rem;font-size:1.05rem;font-weight:600;transition:all .3s}.send-btn:hover:not(:disabled){box-shadow:var(--shadow-glow);transform:translateY(-2px)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.divider{text-align:center;margin:2.5rem 0;position:relative}.divider:before{content:"";background:linear-gradient(90deg,transparent,var(--glass-border),transparent);height:1px;position:absolute;top:50%;left:0;right:0}.divider span{background:var(--panel);color:var(--muted);padding:0 1.5rem;font-size:.95rem;font-weight:500;position:relative}.social-logins{gap:.75rem;display:flex}.social-btn{border:2px solid var(--glass-border);background:var(--glass-bg);color:var(--text);cursor:pointer;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex;position:relative;overflow:hidden}.social-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.social-btn.github{border-color:#24292e}.social-btn.github:hover{color:#fff;background:#24292e}.social-btn.github svg{fill:currentColor}.social-btn.passkey{border-color:var(--glass-border);position:relative}.social-btn.passkey:disabled{opacity:.6;cursor:not-allowed}.passkey-icon{font-size:1.2rem}.coming-soon-badge{background:var(--gradient-neon);color:#fff;text-transform:uppercase;letter-spacing:.02em;border-radius:6px;padding:.2rem .4rem;font-size:.65rem;font-weight:700;position:absolute;top:-8px;right:-8px}.registration-section{padding-top:.5rem}.code-input-wrapper{gap:.5rem;display:flex}.code-input{background:var(--glass-bg);border:2px solid var(--glass-border);letter-spacing:.1em;text-align:center;color:var(--text);text-transform:uppercase;border-radius:12px;flex:1;padding:1rem;font-size:1.2rem;font-weight:700;transition:all .3s}.code-input:focus{border-color:var(--accent);background:var(--panel-hover);outline:none;box-shadow:0 0 0 4px #00ffd41a}.code-input.error{border-color:var(--bad)}.validate-btn{background:var(--accent);color:var(--gray-900);cursor:pointer;border:none;border-radius:12px;padding:0 1.5rem;font-weight:700;transition:all .3s}.validate-btn:hover:not(:disabled){box-shadow:var(--neon-shadow-cyan);background:var(--primary-dark);transform:translateY(-2px)}.validate-btn:disabled{opacity:.5;cursor:not-allowed}.code-success{background:#00ff881a;border:2px solid #00ff884d;border-radius:12px;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;animation:.3s slideInLeft;display:flex}.success-badge{color:var(--good);font-size:.9rem;font-weight:700}.code-display{color:var(--text);letter-spacing:.05em;font-size:1.1rem;font-weight:700}.info-banner{background:#2196f31a;border:1px solid #2196f34d;border-radius:12px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.info-icon{font-size:1.2rem}.form-group input{background:var(--glass-bg);border:2px solid var(--glass-border);width:100%;color:var(--text);border-radius:12px;padding:.875rem 1rem;font-size:1rem;transition:all .3s}.form-group input.error{border-color:var(--bad)}.error-message{color:var(--bad);margin-top:.5rem;font-size:.875rem;animation:.3s shake}.helper-text{color:var(--muted);margin-top:.75rem;font-size:.95rem}.primary-action-btn{background:var(--gradient-neon);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:.5rem;padding:1.25rem;font-size:1.1rem;font-weight:700;transition:all .3s}.primary-action-btn:hover:not(:disabled){box-shadow:var(--shadow-glow);transform:translateY(-2px)}.primary-action-btn:disabled{opacity:.5;cursor:not-allowed}.secondary-btn{width:100%;color:var(--accent);border:2px solid var(--glass-border);cursor:pointer;background:0 0;border-radius:12px;margin-top:.5rem;padding:1.25rem;font-size:1.05rem;font-weight:600;transition:all .3s}.secondary-btn:hover{background:var(--glass-bg);border-color:var(--accent);box-shadow:0 0 0 2px #00ffd41a}.spinner{animation:1s linear infinite spin;display:inline-block}.login-footer{text-align:center;color:var(--text);opacity:.8;margin-top:3rem;font-size:.95rem}.footer-links{justify-content:center;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.footer-links a{color:var(--text);text-decoration:none;transition:color .3s}.footer-links a:hover{color:var(--accent)}.dot{opacity:.4}.copyright{opacity:.6;margin:0;font-size:.8rem}@media (min-width:1024px){.login-container{max-width:800px}.login-box{padding:4rem}.login-header h1{font-size:3.5rem}}@media (max-width:768px){.login-container{max-width:540px}.login-box{padding:2.5rem}.brain-emoji-loading{font-size:6rem}}@media (max-width:480px){.login-box{padding:1.5rem}.login-header h1{font-size:2rem}.social-logins{flex-direction:column}.social-btn{width:100%}.theme-toggle-btn{top:1rem;right:1rem}.brain-emoji-loading{font-size:5rem}.modern-input,.code-input{padding:.875rem;font-size:1rem}.primary-action-btn,.secondary-btn{padding:1rem;font-size:1rem}}@media (min-width:481px){.social-logins{flex-direction:row!important}}.auth-container{background:var(--panel);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;max-width:440px;margin:0 auto;padding:2.5rem;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000004d,0 0 100px #00ffd40d}.auth-container:before{content:"";background:radial-gradient(circle,var(--accent)0%,transparent 70%);opacity:.03;width:200%;height:200%;animation:20s linear infinite rotate;position:absolute;top:-50%;right:-50%}.auth-container h2{color:var(--text);text-align:center;letter-spacing:-.02em;margin:0 0 2rem;font-size:1.75rem;font-weight:700;position:relative}.auth-subtitle{text-align:center;color:var(--muted);opacity:.8;margin:-1.5rem 0 1.5rem;font-size:.9rem}.auth-form{flex-direction:column;gap:1.5rem;display:flex;position:relative}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text);text-transform:uppercase;letter-spacing:.05em;opacity:.9;font-size:.875rem;font-weight:600}.form-group input{background:var(--panel-2);color:var(--text);border:1px solid var(--glass-border);border-radius:12px;padding:.875rem 1rem;font-size:1rem;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.form-group input::placeholder{color:var(--muted);opacity:.5}.form-group input:focus{border-color:var(--accent);background:#00ffd405;outline:none;box-shadow:0 0 0 3px #00ffd41a,0 0 20px #00ffd41a}.form-group input:disabled{opacity:.5;cursor:not-allowed;background:var(--panel)}.form-group small{color:var(--muted);opacity:.7;font-size:.85rem}.auth-buttons{flex-direction:column;gap:1rem;display:flex}.btn-primary,.btn-secondary{cursor:pointer;text-transform:uppercase;letter-spacing:.05em;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden}.btn-primary{background:linear-gradient(135deg,var(--accent)0%,#00cca3 100%);color:var(--bg);box-shadow:0 4px 15px #00ffd44d,0 0 30px #00ffd41a}.btn-primary:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:50%;left:-100%}.btn-primary:hover:before{left:100%}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #00ffd466,0 0 40px #00ffd433}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary{color:var(--text);border:2px solid var(--glass-border);background:0 0;position:relative}.btn-secondary:before{content:"";background:var(--panel-2);opacity:0;border-radius:10px;transition:opacity .3s;position:absolute;inset:0}.btn-secondary:hover:not(:disabled):before{opacity:1}.btn-secondary:hover:not(:disabled){border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}.btn-primary.btn-github,.btn-github{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#24292e,#1a1e22);border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);display:flex;position:relative;overflow:hidden;box-shadow:0 2px 10px #0003}.btn-primary.btn-github:hover:not(:disabled),.btn-github:hover:not(:disabled){background:linear-gradient(135deg,#1a1e22,#0d1117);transform:translateY(-2px);box-shadow:0 6px 20px #0006,0 0 40px #0003}.btn-passkey{background:linear-gradient(135deg,var(--accent-tertiary)0%,#7c3aed 100%);color:#fff}.btn-passkey:hover:not(:disabled){box-shadow:0 6px 20px #8b5cf666,0 0 40px #8b5cf633}.btn-primary:disabled,.btn-secondary:disabled{opacity:.4;cursor:not-allowed;transform:none}.auth-message{border-radius:12px;padding:1rem 1.25rem;font-size:.9rem;animation:.3s slideDown;position:relative;overflow:hidden}.auth-message.success{color:var(--good);background:linear-gradient(135deg,#00ff881a,#00ff880d);border:1px solid #0f83}.auth-message.error{color:var(--bad);background:linear-gradient(135deg,#ff47571a,#ff47570d);border:1px solid #ff475733}.profile-info{background:var(--panel-2);border:1px solid var(--glass-border);border-radius:12px;flex-direction:column;gap:1.25rem;margin-bottom:1.5rem;padding:1.75rem;display:flex}.profile-item{justify-content:space-between;align-items:center;font-size:.95rem;display:flex}.profile-item strong{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.role-badge{background:var(--panel);color:var(--text);border:1px solid var(--glass-border);text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:.375rem .875rem;font-size:.85rem;font-weight:600}.role-badge.role-admin{color:#ff6b6b;background:linear-gradient(135deg,#ff000026,#ff00001a);border-color:#ff00004d;box-shadow:0 0 20px #ff00001a}.role-badge.role-teacher,.role-badge.role-teacher_any_email{color:#4dabf7;background:linear-gradient(135deg,#007bff26,#007bff1a);border-color:#007bff4d;box-shadow:0 0 20px #007bff1a}.role-badge.role-assistant{color:var(--accent);background:linear-gradient(135deg,#ffa50026,#ffa5001a);border-color:#ffa5004d;box-shadow:0 0 20px #ffa5001a}.role-badge.role-student{color:var(--good);background:linear-gradient(135deg,#00ff8826,#00ff881a);border-color:#00ff884d;box-shadow:0 0 20px #00ff881a}.role-badge.role-friends_and_family{color:#da77f2;background:linear-gradient(135deg,#80008026,#8000801a);border-color:#8000804d;box-shadow:0 0 20px #8000801a}.role-badge.role-no_access{color:var(--muted);opacity:.7;background:#8080801a;border-color:#80808033}.auth-loading{text-align:center;color:var(--muted);padding:3rem;font-size:1.1rem}.auth-info-box{background:linear-gradient(135deg,#ffa5000d,#ffa50005);border:1px solid #ffa50033;border-radius:12px;margin-bottom:1.5rem;padding:1rem 1.25rem}.auth-info-box p{color:var(--text);opacity:.9;margin:0;font-size:.9rem;line-height:1.6}.auth-info-box strong{color:var(--accent);font-weight:600}.auth-divider{text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin:1.5rem 0;font-size:.85rem;position:relative}.auth-divider:before,.auth-divider:after{content:"";background:var(--glass-border);width:calc(50% - 3rem);height:1px;position:absolute;top:50%}.auth-divider:before{left:0}.auth-divider:after{right:0}@media (max-width:768px){.auth-container{border-radius:16px;max-width:100%;margin:1rem;padding:1.5rem}.auth-container h2{font-size:1.5rem}.btn-primary,.btn-secondary{padding:.875rem 1.25rem;font-size:.9rem}.form-group input{padding:.75rem;font-size:16px}}[data-theme=dark] .auth-container{background:#0f0f23f2;box-shadow:0 20px 60px #00000080,0 0 100px #00ffd408}[data-theme=light] .auth-container{background:#fffffffa;box-shadow:0 20px 60px #0000001a,0 0 100px #0891b20d}.register-page{background:var(--gradient-aurora);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.register-container{width:100%;max-width:460px;animation:.3s slideUp}.register-header{text-align:center;color:#fff;margin-bottom:2rem}.register-header h1{text-shadow:2px 2px 4px #0003;margin-bottom:.5rem;font-size:2.5rem;font-weight:800}.register-header .subtitle{opacity:.9;font-size:1rem}.register-header strong{background:#fff3;border-radius:4px;padding:.125rem .5rem;font-family:monospace}.register-box{background:#fff;border-radius:20px;padding:2.5rem;box-shadow:0 20px 40px #0000001a}.success-box{text-align:center;background:#fff;border-radius:20px;padding:3rem;box-shadow:0 20px 40px #0000001a}.success-box h2{color:var(--good);margin-bottom:1rem;font-size:2rem}.success-box p{color:var(--muted)}.form-row{gap:1rem;margin-bottom:1.5rem;display:flex}.form-row .form-group{flex:1;margin-bottom:0}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text);margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.form-hint{color:var(--muted);margin-top:.5rem;font-size:.8rem;font-style:italic;display:block}.form-group input{border:2px solid var(--glass-border);background:#fff;border-radius:10px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .2s}.form-group input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #00ffd41a}.form-group input:disabled{cursor:not-allowed;background:#f5f5f5}.error-message{color:var(--bad);background:#ff47571a;border:1px solid #ff475733;border-radius:8px;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.875rem;animation:.3s shake}.register-btn{background:var(--gradient-aurora);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.register-btn:hover:not(:disabled){box-shadow:var(--shadow-glow);transform:translateY(-1px)}.register-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.register-footer{text-align:center;border-top:1px solid var(--glass-border);margin-top:2rem;padding-top:2rem}.register-footer p{color:var(--muted);margin-bottom:.5rem;font-size:.9rem}.register-footer a{color:var(--accent);font-weight:600;text-decoration:none;transition:all .2s}.register-footer a:hover{text-decoration:underline}@media (max-width:480px){.register-box{padding:1.5rem}.register-header h1{font-size:2rem}}.auth-panel-compact{align-items:center;gap:.75rem;display:inline-flex}.auth-panel-user{align-items:center;gap:.75rem;display:flex}.auth-panel-display{color:var(--text);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.auth-panel-role{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.auth-panel-role.role-admin{color:#ff6b6b;background:#ff000026}.auth-panel-role.role-teacher,.auth-panel-role.role-teacher_any_email{color:#4dabf7;background:#007bff26}.auth-panel-role.role-assistant{color:var(--accent);background:#ffa50026}.auth-panel-role.role-student{color:var(--good);background:#00ff0026}.auth-panel-btn-container{align-items:center;gap:.5rem;display:flex}.auth-panel-btn-logout,.auth-panel-btn-login,.auth-panel-btn-github{cursor:pointer;text-transform:uppercase;letter-spacing:.05em;border:none;border-radius:10px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .3s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.auth-panel-btn-logout{color:var(--text);border:1px solid var(--glass-border);background:0 0}.auth-panel-btn-logout:hover:not(:disabled){color:var(--bad);background:#ff00001a;border-color:#f003;transform:translateY(-1px)}.auth-panel-btn-login{background:linear-gradient(135deg,var(--accent)0%,#00cca3 100%);color:var(--bg);box-shadow:0 2px 10px #00ffd433}.auth-panel-btn-login:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:50%;left:-100%}.auth-panel-btn-login:hover:before{left:100%}.auth-panel-btn-login:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #00ffd44d}.auth-panel-btn-github{color:#fff;box-shadow:0 2px 10px #0003;background:linear-gradient(135deg,#24292e,#1a1e22)!important}.auth-panel-btn-github:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #0000004d;background:linear-gradient(135deg,#1a1e22,#0d1117)!important}.auth-panel-btn-logout:disabled,.auth-panel-btn-login:disabled,.auth-panel-btn-github:disabled{opacity:.4;cursor:not-allowed;transform:none}.auth-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.auth-modal{background:0 0;border-radius:20px;max-width:90vw;max-height:90vh;animation:.3s cubic-bezier(.175,.885,.32,1.275) slideUp;position:relative;overflow:auto}.auth-modal-close{background:var(--bad);border:2px solid var(--bg);color:#fff;cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;font-weight:700;transition:all .3s;display:flex;position:absolute;top:-10px;right:-10px}.auth-modal-close:hover{background:#f33;transform:rotate(90deg)scale(1.1)}@media (max-width:768px){.auth-modal{max-width:95vw;margin:1rem}.auth-panel-compact{flex-direction:column;align-items:stretch;gap:.5rem}.auth-panel-user{flex-direction:column;align-items:stretch}.auth-panel-btn-container{flex-direction:column;width:100%}.auth-panel-btn-login,.auth-panel-btn-github,.auth-panel-btn-logout{justify-content:center;width:100%}}.enamel-lab-logo,.logo-reveal{font-family:var(--font-mono,monospace);text-transform:uppercase;letter-spacing:.05em;color:#fff;margin:0;font-size:clamp(2.5rem,6vw,4rem);font-weight:700}.loading-sequence{color:#fff;font-family:var(--font-mono,monospace);text-transform:uppercase;letter-spacing:.1em;z-index:9999;background:linear-gradient(135deg,#1a1a2e,#16213e);flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.loading-sequence-container{text-align:center;width:100%;max-width:800px}.loading-step{opacity:0;color:#fffc;font-size:clamp(.8rem,2vw,1rem);font-family:var(--font-mono,monospace);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem;transition:opacity .5s ease-in}.loading-step.visible{opacity:1}.logo-reveal{margin-top:2rem;animation:1s ease-in fadeIn}.header-title-main.enamel-lab-logo{font-family:var(--font-mono,monospace);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.header-title-main .tooth-emoji,.logo-reveal .tooth-emoji{vertical-align:middle;margin:0 -.1em;font-size:1em;display:inline-block}
