:root{--bg-color: 220 10% 92%;--surface-color: 0 0% 100%;--primary: 217 75% 55%;--primary-glow: 217 75% 55% / .12;--secondary: 162 45% 55%;--accent: 260 75% 72%;--text-main: 222 47% 12%;--text-muted: 215 15% 45%;--accent-pink: 322 81% 85%;--magnetic-spotlight: 322 75% 65%;--stat-success: 142 70% 45%;--stat-error: 0 84% 60%;--stat-warning: 45 93% 47%;--radius-sm: 12px;--radius-md: 20px;--radius-lg: 32px;--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(0, 0, 0, .06);--glass-blur: blur(20px);--card-shadow: 0 8px 32px -4px rgba(31, 38, 135, .05);--card-shadow-hover: 0 20px 48px -12px rgba(0, 0, 0, .12);--logo-shadow-opacity: .15;--sidebar-width: 280px;--sidebar-bg: 220 15% 95%;--sidebar-active-bg: 0 0% 100%;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:hsl(var(--text-main));background:hsl(var(--bg-color));min-height:100vh;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}[data-theme=dark]{--bg-color: 215 20% 16%;--surface-color: 215 20% 18%;--primary: 217 91% 65%;--primary-glow: 217 91% 65% / .3;--text-main: 210 40% 98%;--text-muted: 215 20% 75%;--glass-bg: hsla(215, 20%, 16%, .7);--glass-border: hsla(210, 40%, 98%, .1);--sidebar-bg: 215 30% 6%;--card-shadow: 0 20px 50px rgba(0, 0, 0, .4);--card-shadow-hover: 0 30px 70px rgba(0, 0, 0, .6), 0 0 0 1.5px hsl(var(--primary) / .2);--logo-shadow-opacity: .6;--accent-pink: 322 81% 75%;--magnetic-spotlight: 322 81% 75%;--stat-success: 142 70% 55%;--stat-error: 0 84% 65%;--stat-warning: 45 93% 55%;color-scheme:dark}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;margin:0;background-color:hsl(var(--bg-color));background-attachment:fixed;overflow-x:hidden;transition:background-color .4s ease,color .4s ease,border-color .4s ease,fill .4s ease;position:relative}.glass,.glass-card,.btn{transition:background-color .4s ease,border-color .4s ease,box-shadow .4s ease,color .4s ease,opacity .4s ease}body:before,body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1}body:before{background-image:radial-gradient(hsl(var(--text-main) / .05) 1px,transparent 1px);background-size:40px 40px;opacity:.6}body:after{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");filter:contrast(120%) brightness(100%);opacity:.02;mix-blend-mode:overlay}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--text-main) / .1);border-radius:10px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:hsl(var(--text-main) / .2);background-clip:content-box}h1,h2,h3,h4{font-family:Outfit,sans-serif;font-weight:700;letter-spacing:-.02em;color:hsl(var(--text-main))}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--card-shadow);transition:border-color .3s ease,box-shadow .3s ease;transform:translateZ(0);-webkit-transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}.glass-card{background:var(--surface-color);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--card-shadow);transition:all .4s cubic-bezier(.16,1,.3,1);background-clip:padding-box}.glass-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-6px) scale(1.01);border-color:hsl(var(--primary) / .2)}.glass-card-accent{background:linear-gradient(var(--glass-bg),var(--glass-bg)),linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent)));background-clip:padding-box,border-box;background-origin:padding-box,border-box;border:2px solid transparent}.btn{padding:.8rem 1.6rem;border-radius:var(--radius-md);border:none;font-family:Outfit,sans-serif;font-weight:600;cursor:pointer;transition:all 1.5s ease-out;display:inline-flex;align-items:center;gap:.5rem;background-clip:padding-box}.btn-primary{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent) / .8),hsl(var(--primary)));background-size:250% auto;background-position:0% 50%;color:#fff;box-shadow:0 4px 15px hsl(var(--primary) / .25);transition:transform 1.5s ease-out,box-shadow 1.5s ease-out,filter 1.5s ease-out,background-position 4s ease-out}.btn-primary:hover{background-position:2000% 50%;box-shadow:0 6px 20px hsl(var(--primary) / .4);transform:translateY(-1px);filter:brightness(1.03);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),filter .3s ease,background-position 70s linear}.btn-secondary{background:hsl(var(--primary) / .05);color:hsl(var(--text-main));border:1.5px solid var(--glass-border)}.btn-secondary:hover{background:hsl(var(--primary) / .1);border-color:hsl(var(--primary) / .3)}.menu-item{width:100%;padding:.6rem .8rem;display:flex;align-items:center;gap:.75rem;background:transparent;border:none;border-radius:10px;color:hsl(var(--text-main));font-size:.85rem;font-family:Outfit,sans-serif;font-weight:700;cursor:pointer;transition:all .2s ease;text-align:left}.menu-item:hover{background:hsl(var(--primary) / .1);color:hsl(var(--primary))}.menu-item svg{opacity:.7;transition:all .2s ease}.menu-item:hover svg{opacity:1;transform:scale(1.1)}.sidebar-nav-btn{background:hsl(var(--primary) / .03)!important;border:.5px solid var(--glass-border)!important;transition:all .3s cubic-bezier(.34,1.56,.64,1);background-clip:padding-box!important}.sidebar-nav-btn:hover{border-color:hsl(var(--primary) / .3)!important}.sidebar-nav-btn:active{transform:scale(.96)}.sidebar-nav-btn:hover:not(.nav-item-active){background:linear-gradient(135deg,hsl(var(--primary) / .1),hsl(var(--accent) / .1),hsl(var(--accent-pink) / .1))!important;border-color:hsl(var(--accent-pink) / .3)!important}.nav-item-active{background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--accent) / .8),hsl(var(--primary)))!important;background-size:250% auto!important;background-position:0% 50%!important;border:none!important;background-clip:padding-box!important;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),filter .3s ease,background-position 1.2s ease-out!important}.nav-item-active:hover{background-position:2000% 50%!important;filter:brightness(1.03);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),filter .3s ease,background-position 70s linear!important}.app-container{display:flex;width:100vw;height:100vh;overflow:hidden}.main-content{flex:1;padding:3rem;overflow-y:auto;scroll-behavior:smooth}.sidebar-container{width:var(--sidebar-width);height:100vh;flex-shrink:0;z-index:1000;background:var(--sidebar-bg);border-right:1px solid var(--glass-border);margin:0;padding:0;display:flex;flex-direction:column}.sidebar-container h1,.sidebar-container h2,.sidebar-container h3,.sidebar-container h4,.sidebar-container span,.sidebar-container p{color:hsl(var(--text-main))!important}.text-gradient-shimmer{background:linear-gradient(to right,hsl(var(--text-main)),hsl(var(--primary)),hsl(var(--secondary)),hsl(var(--primary)),hsl(var(--text-main)));background-size:200% auto;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:shimmerFlow 5s linear infinite}.mobile-header{display:none}.session-grid{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;width:100%;padding:2rem}.stimulus-item{position:relative;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;border-radius:var(--radius-lg);background:hsl(var(--surface-color) / .5);border:2px solid transparent;transition:all .2s ease}.stimulus-item.correct{border-color:hsl(var(--stat-success));background:hsl(var(--stat-success) / .1)}.stimulus-item.incorrect{border-color:hsl(var(--stat-error));background:hsl(var(--stat-error) / .1)}.stimulus-image{width:80%;height:80%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}@media (max-width: 1024px){.app-container{flex-direction:column}.sidebar-container{position:fixed!important;left:0;top:0;height:100vh!important;width:var(--sidebar-mobile-width)!important;max-width:320px;transform:translate(-100%);background:hsl(var(--bg-color))!important}.sidebar-container.open{transform:translate(0);box-shadow:20px 0 50px #00000080}.mobile-header{display:flex!important;align-items:center;justify-content:space-between;padding:1rem 1.5rem;width:100%;position:sticky;top:0;z-index:50;border-bottom:1px solid var(--glass-border);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.main-content{padding:1.25rem!important}}@media (max-width: 768px){.btn{padding:.6rem 1rem;font-size:.9rem;min-height:44px}.responsive-stimulus-grid{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}}@keyframes flowing-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes shimmerFlow{0%{background-position:0% center}to{background-position:-200% center}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease forwards}.tooltip-btn{position:relative}.tooltip-btn:after{content:attr(title);position:absolute;bottom:120%;left:50%;transform:translate(-50%) translateY(10px);padding:.6rem 1rem;background:hsl(var(--surface-color));color:#fff;font-size:.75rem;font-weight:700;border-radius:12px;border:1.5px solid var(--glass-border);box-shadow:0 10px 30px #00000080;white-space:nowrap;opacity:0;pointer-events:none;transition:all .25s cubic-bezier(.34,1.56,.64,1);z-index:100}.tooltip-btn:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.nav-animating .icon-dashboard rect{animation:windowScroll 1.2s ease-in-out 1}@keyframes windowScroll{0%,to{transform:translateY(0)}50%{transform:translateY(-3px);opacity:.6}}.nav-animating .icon-clients path:last-child{animation:personPeek 1s ease-in-out 1}@keyframes personPeek{0%,to{transform:translate(0)}50%{transform:translate(3px);opacity:.6}}.nav-animating .icon-programs line{animation:barShift .8s ease-in-out 1;transform-origin:bottom}@keyframes barShift{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.4)}}.nav-animating .icon-settings{animation:spin-once 1.2s cubic-bezier(.34,1.56,.64,1) 1}@keyframes spin-once{0%{transform:rotate(0)}to{transform:rotate(180deg)}}.nav-animating .icon-rbts{animation:cardFlipTop 1s cubic-bezier(.45,0,.55,1) 1;transform-origin:top center}@keyframes cardFlipTop{0%{transform:perspective(400px) rotateX(0);opacity:1}50%{transform:perspective(400px) rotateX(-180deg);opacity:.5}to{transform:perspective(400px) rotateX(-360deg);opacity:0}}.nav-animating .icon-rbts-back{animation:cardFadeIn 1s cubic-bezier(.45,0,.55,1) 1}@keyframes cardFadeIn{0%{opacity:.4}to{opacity:1}}@keyframes iconBounce{0%{transform:translateY(0) scale(1)}to{transform:translateY(-8px) scale(1.15)}}.reveal-text-engine{background-clip:text!important;-webkit-background-clip:text!important;color:transparent!important;-webkit-text-fill-color:transparent!important;display:inline-block}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
