/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.z-10{z-index:10}.z-\[1000\]{z-index:1000}.container{width:100%}.block{display:block}.block\!{display:block!important}.contents{display:contents}.grid{display:grid}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-\[460px\]{max-width:460px}.max-w-\[720px\]{max-width:720px}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-\[bounce_2s_ease-in-out_infinite\]{animation:2s ease-in-out infinite bounce}.animate-\[fadeInUp_0\.5s_ease\]{animation:.5s fadeInUp}.animate-\[floatGradient_20s_ease-in-out_infinite\]{animation:20s ease-in-out infinite floatGradient}.animate-\[slideUp_0\.3s_ease\]{animation:.3s slideUp}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.rounded-\[20px\]{border-radius:20px}.rounded-full{border-radius:3.40282e38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-\[rgba\(255\,71\,87\,0\.2\)\]{border-color:#ff475733}.bg-\[rgba\(255\,71\,87\,0\.1\)\]{background-color:#ff47571a}.bg-transparent{background-color:#0000}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-\[\#1a1a2e\]{--tw-gradient-from:#1a1a2e;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[\#16213e\]{--tw-gradient-to:#16213e;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.text-center{text-align:center}.break-all{word-break:break-all}.text-transparent{color:#0000}.uppercase{text-transform:uppercase}.italic{font-style:italic}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.opacity-5{opacity:.05}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-\[0_20px_40px_rgba\(0\,0\,0\,0\.1\)\]{--tw-shadow:0 20px 40px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.drop-shadow-\[0_0_20px_rgba\(255\,105\,180\,0\.5\)\]{--tw-drop-shadow-size:drop-shadow(0 0 20px var(--tw-drop-shadow-color,#ff69b480));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.drop-shadow-\[2px_2px_4px_rgba\(0\,0\,0\,0\.2\)\]{--tw-drop-shadow-size:drop-shadow(2px 2px 4px var(--tw-drop-shadow-color,#0003));--tw-drop-shadow:var(--tw-drop-shadow-size);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}@media (hover:hover){.hover\:translate-y-\[-1px\]:hover{--tw-translate-y:-1px;translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:translate-y-\[-2px\]:hover{--tw-translate-y:-2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.hover\:scale-110:hover{--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:rotate-180:hover{rotate:180deg}.hover\:underline:hover{text-decoration-line:underline}}.focus\:shadow-\[0_0_0_3px_rgba\(0\,255\,212\,0\.1\)\]:focus{--tw-shadow:0 0 0 3px var(--tw-shadow-color,#00ffd41a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:shadow-\[0_0_0_4px_rgba\(0\,255\,212\,0\.1\)\]:focus{--tw-shadow:0 0 0 4px var(--tw-shadow-color,#00ffd41a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.disabled\:transform-none:disabled{transform:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-70:disabled{opacity:.7}: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;--neon-shadow-cyan:0 0 20px #00ffd480;--neon-shadow-pink:0 0 20px #ff006e80;--neon-shadow-purple:0 0 20px #8b5cf680;--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%);--visible-options:1;--bounce-duration:2s;--sparkle-duration:2s;--float-gradient-duration:20s;--safe-area-inset-top:env(safe-area-inset-top);--safe-area-inset-bottom:env(safe-area-inset-bottom)}[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%);--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;--neon-shadow-cyan:0 0 15px #0891b24d;--neon-shadow-pink:0 0 15px #e11d484d;--neon-shadow-purple:0 0 15px #7c3aed4d;--brain-gradient:linear-gradient(135deg,#ec4899 0%,#db2777 100%);--brain-shadow:drop-shadow(0 0 15px #ec48994d);--editor-border:#00ffd44d;--editor-active:#00ffd41a;--zone-hover:#ffa5004d;--zone-placed:#00ff884d;--zone-error:#ff47574d}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}html,body,#root{height:100%;margin:0;padding:0}body{background:var(--bg);color:var(--text);-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;overflow-x:hidden}input,select,textarea,button{-webkit-text-size-adjust:100%;font-size:16px!important}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@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 floatGradient{0%,to{transform:translate(0)rotate(0)}25%{transform:translate(10px,-10px)rotate(5deg)}50%{transform:translate(-5px,5px)rotate(-5deg)}75%{transform:translate(-10px,-5px)rotate(3deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@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 bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{opacity:0}50%{opacity:1}to{opacity:0}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--panel);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--gradient-neon);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#ff006e,#8b5cf6)}.file-browser,.file-browser *{-webkit-text-fill-color:initial}.file-browser button,.file-browser a{all:unset;box-sizing:border-box;cursor:pointer;display:block}.file-browser button:hover,.file-browser button:active,.file-browser button:focus,.file-browser a:hover,.file-browser a:active,.file-browser a:focus{background:inherit;box-shadow:none!important;-webkit-backdrop-filter:none!important;transform:none!important}.file-browser button:before,.file-browser button:after,.file-browser a:before,.file-browser a:after,.file-browser button:hover:before,.file-browser button:hover:after{content:none!important;width:0!important;height:0!important;display:none!important}.file-browser input,.file-browser select{all:unset;box-sizing:border-box}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.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}@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)}}.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:0 0;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;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}@keyframes correct-pulse{0%{transform:scale(1)}50%{box-shadow:0 0 40px var(--good);transform:scale(1.05)}to{transform:scale(1)}}.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}@keyframes incorrect-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.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}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}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}@keyframes success-bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.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}@keyframes error-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.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}@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 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}}.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}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.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}}.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}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}
