.app{width:100%;min-height:100vh;display:flex}.app__main{flex:1;display:flex;overflow:hidden}.theme-toggle{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);-webkit-user-select:none;user-select:none;display:inline-flex}.theme-toggle:hover{background:var(--surface-hover);border-color:var(--border-secondary);color:var(--text-primary)}.theme-toggle__icon{font-size:var(--text-base);line-height:1}.theme-toggle__label{line-height:1}.sidebar-overlay{display:none}.sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-primary);height:100vh;transition:width var(--duration-normal) var(--ease-out);z-index:var(--z-sticky);flex-direction:column;flex-shrink:0;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar--open{width:var(--sidebar-width)}.sidebar--closed{width:var(--sidebar-collapsed)}.sidebar__header{padding:var(--space-4);border-bottom:1px solid var(--border-primary);min-height:var(--header-height);justify-content:space-between;align-items:center;display:flex}.sidebar__logo{align-items:center;gap:var(--space-3);color:var(--text-primary);text-decoration:none;display:flex}.sidebar__logo-icon{font-size:var(--text-xl);line-height:1}.sidebar__logo-text{font-size:var(--text-base);font-weight:var(--weight-bold);white-space:nowrap;letter-spacing:-.01em}.sidebar__toggle{border:1px solid var(--border-primary);border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-tertiary);font-size:var(--text-xs);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar__toggle:hover{background:var(--surface-hover);color:var(--text-primary);border-color:var(--border-secondary)}.sidebar__nav{padding:var(--space-3);gap:var(--space-2);flex-direction:column;flex:1;display:flex}.sidebar__phase{flex-direction:column;display:flex}.sidebar__phase-header{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);display:flex}.sidebar__phase-icon{font-size:var(--text-sm);line-height:1}.sidebar__modules{margin-bottom:var(--space-3);flex-direction:column;gap:1px;list-style:none;display:flex}.sidebar__module{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);padding-left:var(--space-6);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);transition:all var(--duration-fast) var(--ease-out);cursor:pointer;white-space:nowrap;text-decoration:none;display:flex}.sidebar__module:hover:not(.sidebar__module--disabled){background:var(--surface-hover);color:var(--text-primary)}.sidebar__module--active{font-weight:var(--weight-medium);background:var(--surface-active)!important;color:var(--brand-indigo)!important}.sidebar__module--disabled{opacity:.5;cursor:default}.sidebar__module-icon{font-size:var(--text-sm);flex-shrink:0;line-height:1}.sidebar__module-title{text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar__module-badge{font-size:.65rem;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-tertiary);padding:1px 6px}.sidebar__footer{padding:var(--space-4);border-top:1px solid var(--border-primary);justify-content:center;display:flex}@media (width<=768px){.sidebar-overlay{z-index:calc(var(--z-sticky) - 1);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;display:block;position:fixed;inset:0}.sidebar{transition:transform var(--duration-normal) var(--ease-out);box-shadow:var(--shadow-xl);position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar--open{width:var(--sidebar-width);transform:translate(0)}.sidebar--closed{width:var(--sidebar-width);transform:translate(-100%)}}.error-fallback{border:1px solid var(--border-primary);border-radius:var(--radius-xl);background:var(--bg-primary);width:min(42rem,100% - 2rem);box-shadow:var(--shadow-lg);margin:clamp(2rem,8vh,6rem) auto;padding:clamp(1.5rem,4vw,3rem)}.error-fallback__eyebrow{color:var(--brand-amber);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.08em}.error-fallback h1{margin:var(--space-2) 0 var(--space-3)}.error-fallback p,.error-fallback details{color:var(--text-secondary)}.error-fallback__actions{gap:var(--space-3);margin:var(--space-5) 0;flex-wrap:wrap;display:flex}.error-fallback__actions button,.error-fallback__actions a{min-height:2.75rem;padding:0 var(--space-4);border:1px solid var(--brand-indigo);border-radius:var(--radius-md);font:inherit;font-weight:var(--weight-semibold);cursor:pointer;align-items:center;display:inline-flex}.error-fallback__actions button{background:var(--brand-indigo);color:#fff}.error-fallback__actions a{color:var(--brand-indigo);text-decoration:none}.error-fallback code{margin-top:var(--space-2);overflow-wrap:anywhere;display:block}.param-slider{gap:var(--space-1);flex-direction:column;display:flex}.param-slider--disabled{opacity:.5;pointer-events:none}.param-slider__header{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.param-slider__label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary)}.param-slider__value{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--brand-indigo);text-align:right;min-width:3em}.param-slider__unit{font-size:var(--text-xs);color:var(--text-tertiary);margin-left:2px}.param-slider__track-wrapper{align-items:center;height:20px;display:flex;position:relative}.param-slider__input{appearance:none;border-radius:var(--radius-full);background:linear-gradient(to right, var(--brand-indigo) 0%, var(--brand-indigo) var(--slider-progress,50%), var(--bg-inset) var(--slider-progress,50%), var(--bg-inset) 100%);cursor:pointer;width:100%;height:4px;transition:height var(--duration-fast) var(--ease-out);outline:none}.param-slider__input:hover{height:6px}.param-slider__input::-webkit-slider-thumb{appearance:none;background:var(--bg-elevated);border:2px solid var(--brand-indigo);cursor:grab;width:16px;height:16px;transition:all var(--duration-fast) var(--ease-out);border-radius:50%;box-shadow:0 1px 3px #00000026}.param-slider__input::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 0 0 4px #6366f126}.param-slider__input::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1);box-shadow:0 0 0 6px #6366f133}.param-slider__input::-moz-range-thumb{background:var(--bg-elevated);border:2px solid var(--brand-indigo);cursor:grab;width:16px;height:16px;transition:all var(--duration-fast) var(--ease-out);border-radius:50%;box-shadow:0 1px 3px #00000026}.param-slider__description{font-size:var(--text-xs);color:var(--text-tertiary);line-height:var(--leading-normal);margin-top:var(--space-1)}@media (width<=768px){.param-slider__input{height:6px}.param-slider__input::-webkit-slider-thumb{width:22px;height:22px}.param-slider__input::-moz-range-thumb{width:22px;height:22px}}.lesson-layout{min-width:0}.lesson-seed-control{align-items:center;gap:var(--space-2);color:var(--text-tertiary);font-size:var(--text-xs);flex-wrap:wrap;display:flex}.lesson-seed-control code{border-radius:var(--radius-sm);background:var(--bg-inset);color:var(--text-secondary);padding:.15rem .4rem}.lesson-seed-control button{padding:var(--space-1) var(--space-2);border:1px solid var(--border-primary);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;font:inherit}.lesson-route{flex-direction:column;flex:1;min-width:0;height:100vh;min-height:0;display:flex;overflow:hidden}.lesson-route__content{flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.lesson-route__toolbar{width:min(64rem,100% - 1.5rem);margin:var(--space-1) auto 0;flex:none;justify-content:flex-end;display:flex}.lesson-loading{justify-content:center;align-items:center;gap:var(--space-4);min-height:70vh;padding:var(--space-6);color:var(--text-primary);flex:1;display:flex}.lesson-loading__spinner{border:3px solid var(--border-primary);border-top-color:var(--brand-indigo);border-radius:50%;width:2.25rem;height:2.25rem;animation:.8s linear infinite lesson-loading-spin}.lesson-loading__eyebrow{color:var(--brand-indigo);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.lesson-loading h1{margin-top:var(--space-1);font-size:var(--text-xl)}.lesson-navigation{gap:var(--space-2);width:min(64rem,100% - 1.5rem);margin:var(--space-2) auto var(--space-3);flex:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.lesson-navigation__link{min-width:0;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-primary);border-radius:var(--radius-lg);background:var(--bg-primary);color:var(--text-primary);flex-direction:column;justify-content:center;gap:.125rem;text-decoration:none;transition:border-color .2s,transform .2s;display:flex}.lesson-navigation__link:hover{border-color:var(--brand-indigo);transform:translateY(-2px)}.lesson-navigation__link span{color:var(--text-tertiary);font-size:var(--text-xs);line-height:1.2}.lesson-navigation__link strong{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.lesson-navigation__link--next{text-align:right}@keyframes lesson-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.lesson-loading__spinner{animation:none}}@media (width<=640px){.lesson-navigation{gap:var(--space-1);width:calc(100% - 1rem);margin-bottom:var(--space-2)}.lesson-navigation__link{padding-inline:var(--space-2)}}.home{flex:1;position:relative;overflow:hidden auto}.home__mobile-menu{top:var(--space-3);left:var(--space-3);z-index:var(--z-overlay);border-radius:var(--radius-md);border:1px solid var(--border-primary);background:var(--surface-glass);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:40px;height:40px;color:var(--text-primary);font-size:var(--text-lg);cursor:pointer;justify-content:center;align-items:center;display:none;position:fixed}@media (width<=768px){.home__mobile-menu{display:flex}}.home__hero{min-height:85vh;padding:var(--space-8) var(--space-6);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.home__hero-glow{pointer-events:none;background:radial-gradient(circle,#6366f11f 0%,#0000 70%);border-radius:50%;width:600px;height:600px;animation:6s ease-in-out infinite pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.home__hero-content{text-align:center;max-width:700px;animation:fadeInUp .8s var(--ease-out) both;position:relative}.home__badge{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-4);border-radius:var(--radius-full);background:var(--surface-active);border:1px solid var(--border-primary);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--brand-indigo);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-6);display:inline-flex}.home__badge-dot{background:var(--brand-indigo);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse}.home__title{font-size:clamp(2rem,5vw,3.5rem);font-weight:var(--weight-extrabold);letter-spacing:-.03em;margin-bottom:var(--space-6);line-height:1.15}.home__subtitle{font-size:var(--text-lg);color:var(--text-secondary);line-height:var(--leading-relaxed);max-width:560px;margin:0 auto var(--space-10) auto}.home__hero-actions{gap:var(--space-4);flex-wrap:wrap;justify-content:center;display:flex}.home__cta{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--weight-semibold);transition:all var(--duration-normal) var(--ease-out);cursor:pointer;border:none;text-decoration:none;display:inline-flex}.home__cta--primary{background:var(--gradient-brand);color:#fff;background-size:200% 200%;animation:4s ease-in-out infinite gradientShift;box-shadow:0 4px 14px #6366f159}.home__cta--primary:hover{color:#fff;transform:translateY(-2px);box-shadow:0 6px 20px #6366f173}.home__cta-arrow{transition:transform var(--duration-fast) var(--ease-out)}.home__cta--primary:hover .home__cta-arrow{transform:translate(4px)}.home__method,.home__curriculum{padding:var(--space-20) var(--space-6);max-width:var(--content-max-width);margin:0 auto}.home__section-title{text-align:center;margin-bottom:var(--space-3)}.home__section-desc{text-align:center;margin:0 auto var(--space-12) auto;font-size:var(--text-lg)}.home__steps{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.home__step{padding:var(--space-6);border-radius:var(--radius-xl);transition:transform var(--duration-normal) var(--ease-out), box-shadow var(--duration-normal) var(--ease-out);position:relative;overflow:hidden}.home__step:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.home__step-num{top:var(--space-4);right:var(--space-4);font-size:var(--text-3xl);font-weight:var(--weight-extrabold);color:var(--text-tertiary);opacity:.15;line-height:1;position:absolute}.home__step-icon{font-size:var(--text-3xl);margin-bottom:var(--space-4);display:block}.home__step-title{font-size:var(--text-lg);margin-bottom:var(--space-2)}.home__step-desc{font-size:var(--text-sm);line-height:var(--leading-relaxed)}.home__phases{gap:var(--space-6);flex-direction:column;display:flex}.home__phase{padding:var(--space-6);border-radius:var(--radius-xl)}.home__phase-header{align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.home__phase-icon{font-size:var(--text-3xl);flex-shrink:0;line-height:1}.home__phase-title{font-size:var(--text-xl);margin-bottom:var(--space-1)}.home__phase-desc{font-size:var(--text-sm)}.home__phase-modules{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));display:grid}.home__module-card{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--bg-primary);border:1px solid var(--border-primary);color:var(--text-primary);transition:all var(--duration-fast) var(--ease-out);cursor:pointer;text-decoration:none;display:flex}.home__module-card:hover:not(.home__module-card--disabled){border-color:var(--brand-indigo);box-shadow:var(--shadow-md);color:var(--text-primary);transform:translateY(-1px)}.home__module-card--disabled{opacity:.55;cursor:default}.home__module-icon{font-size:var(--text-xl);flex-shrink:0}.home__module-info{flex-direction:column;flex:1;min-width:0;display:flex}.home__module-name{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.home__module-sub{font-size:var(--text-xs);color:var(--text-tertiary)}.home__module-badge{font-size:.6rem;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-full);background:var(--bg-tertiary);color:var(--text-tertiary);white-space:nowrap;padding:2px 8px}.home__module-go{color:var(--brand-indigo);font-size:var(--text-lg);font-weight:var(--weight-semibold);transition:transform var(--duration-fast) var(--ease-out)}.home__module-card:hover .home__module-go{transform:translate(3px)}.home__footer{text-align:center;padding:var(--space-12) var(--space-6);border-top:1px solid var(--border-primary);color:var(--text-tertiary);font-size:var(--text-sm)}@media (width<=768px){.home__hero{min-height:70vh;padding-top:var(--space-16)}.home__method,.home__curriculum{padding:var(--space-12) var(--space-4)}.home__phase-modules{grid-template-columns:1fr}}.not-found{text-align:center;width:min(38rem,100% - 2rem);margin:clamp(3rem,12vh,8rem) auto}.not-found__code{color:var(--brand-indigo);font-size:clamp(3rem,12vw,7rem);font-weight:var(--weight-bold);line-height:1;display:block}.not-found h1{margin:var(--space-3) 0}.not-found p{margin-bottom:var(--space-5);color:var(--text-secondary)}.not-found a{min-height:2.75rem;padding:0 var(--space-4);border-radius:var(--radius-md);background:var(--brand-indigo);color:#fff;font-weight:var(--weight-semibold);align-items:center;text-decoration:none;display:inline-flex}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #0000000a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000000f;--shadow-glow:0 0 20px #6366f126;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.4s;--sidebar-width:280px;--sidebar-collapsed:64px;--header-height:56px;--content-max-width:1200px;--viz-min-height:400px;--z-base:0;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500;--brand-indigo:#6366f1;--brand-violet:#8b5cf6;--brand-teal:#14b8a6;--brand-cyan:#06b6d4;--brand-rose:#f43f5e;--brand-amber:#f59e0b;--brand-emerald:#10b981;--gradient-brand:linear-gradient(135deg, #6366f1, #8b5cf6, #06b6d4);--gradient-warm:linear-gradient(135deg, #f43f5e, #f59e0b);--gradient-cool:linear-gradient(135deg, #06b6d4, #6366f1);--gradient-success:linear-gradient(135deg, #10b981, #14b8a6)}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--bg-elevated:#fff;--bg-inset:#e2e8f0;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--text-inverse:#f8fafc;--border-primary:#e2e8f0;--border-secondary:#cbd5e1;--border-focus:#6366f1;--surface-glass:#ffffffb3;--surface-glass-border:#ffffff4d;--surface-hover:#6366f10a;--surface-active:#6366f114;--code-bg:#f8fafc;--code-text:#0f172a;--viz-bg:#fff;--viz-grid:#e2e8f0;--viz-axis:#94a3b8;--viz-point-a:#6366f1;--viz-point-b:#f43f5e;--viz-line:#0f172a;--viz-positive:#10b981;--viz-negative:#f43f5e;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg-primary:#0a0e1a;--bg-secondary:#111827;--bg-tertiary:#1e293b;--bg-elevated:#1a1f35;--bg-inset:#0f1629;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-inverse:#0f172a;--border-primary:#1e293b;--border-secondary:#334155;--border-focus:#818cf8;--surface-glass:#111827b3;--surface-glass-border:#ffffff0f;--surface-hover:#6366f114;--surface-active:#6366f126;--code-bg:#0f1629;--code-text:#e2e8f0;--viz-bg:#111827;--viz-grid:#1e293b;--viz-axis:#64748b;--viz-point-a:#818cf8;--viz-point-b:#fb7185;--viz-line:#f1f5f9;--viz-positive:#34d399;--viz-negative:#fb7185;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #0006, 0 4px 6px -4px #0000004d;--shadow-xl:0 20px 25px -5px #00000080, 0 8px 10px -6px #0000004d;--shadow-glow:0 0 30px #6366f133;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font-sans);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--duration-normal) var(--ease-out), color var(--duration-normal) var(--ease-out);min-height:100vh;overflow-x:hidden}#root{min-height:100vh;display:flex}h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semibold);line-height:var(--leading-tight);color:var(--text-primary);letter-spacing:-.02em}h1{font-size:var(--text-4xl);font-weight:var(--weight-extrabold);letter-spacing:-.03em}h2{font-size:var(--text-3xl);font-weight:var(--weight-bold)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base)}p{color:var(--text-secondary);line-height:var(--leading-relaxed);max-width:65ch}code,pre{font-family:var(--font-mono);font-size:.9em}a{color:var(--brand-indigo);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--brand-violet)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}::selection{color:inherit;background:#6366f140}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-gradient{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glass{background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--surface-glass-border)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@media (width<=768px){:root{--sidebar-width:100%;--header-height:48px}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}}@media (width<=480px){html{font-size:14px}h1{font-size:var(--text-2xl)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
