@import"https://fonts.googleapis.com/css2?family=Syne:wght@700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.theme-toggle:hover{background:var(--surface-hover);color:var(--accent);border-color:var(--accent-muted);transform:scale(1.08) rotate(15deg)}.theme-toggle:active{transform:scale(.92)}.theme-toggle__icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px}.theme-toggle__icon svg{width:16px;height:16px;transition:transform .4s cubic-bezier(.4,0,.2,1)}.theme-toggle:hover .theme-toggle__icon svg{transform:rotate(30deg)}.header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 0;height:64px;min-height:64px;flex-shrink:0;position:absolute;top:0;left:0;right:0;z-index:100;pointer-events:none}.header>*{pointer-events:auto}.header__left{display:flex;align-items:center;gap:10px;flex-shrink:0}.header__brand{display:flex;align-items:center;gap:8px}.header__logo{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;background:rgba(124,106,247,.08);border:1px solid var(--accent-muted);flex-shrink:0;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.header__logo:hover{transform:rotate(45deg) scale(1.1)}.header__wordmark{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;letter-spacing:-.01em;display:flex;align-items:baseline;gap:3px}.header__wordmark-primary{color:var(--text-primary)}.header__wordmark-sep{color:var(--text-muted);font-weight:400;font-size:13px}.header__wordmark-secondary{background:linear-gradient(135deg,var(--accent),#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:800}.header__center{background:rgba(14,14,22,.5);backdrop-filter:blur(32px) saturate(1.5);-webkit-backdrop-filter:blur(32px) saturate(1.5);border:1px solid rgba(255,255,255,.06);border-radius:100px;padding:6px;box-shadow:0 16px 40px #0006;position:absolute;top:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px}.header__stat-pills{display:flex;align-items:center;gap:4px}.header__pill{display:flex;align-items:center;gap:6px;font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:600;color:var(--text-secondary);padding:8px 18px;border-radius:100px;background:transparent;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:default}.header__pill:hover{background:rgba(255,255,255,.08);color:var(--text-primary)}.header__pill--active{background:var(--text-primary);color:var(--bg);font-weight:700}.header__pill--active:hover{background:var(--text-primary);color:var(--bg);transform:scale(1.02)}.header__tagline{font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:500;color:var(--text-muted);letter-spacing:.01em}.header__right{display:flex;align-items:center;gap:12px;flex-shrink:0}.header__btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:100px;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.header__btn--dark{background:rgba(255,255,255,.08);color:var(--text-primary);border:1px solid rgba(255,255,255,.05)}.header__btn--dark:hover{background:rgba(255,255,255,.15);transform:translateY(-1px)}.header__action-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.04);color:var(--text-secondary);transition:all .25s ease}.header__action-btn:hover{background:rgba(255,255,255,.08);color:var(--text-primary);transform:scale(1.05)}@media (max-width: 1080px){.header__btn-text{display:none}.header__btn{padding:10px}}.header__menu-btn{display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-secondary);transition:all .2s ease;flex-shrink:0}.header__menu-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.menu-icon{position:relative;width:16px;height:12px;display:flex;flex-direction:column;justify-content:space-between}.menu-icon span{display:block;height:1.8px;width:100%;background:currentColor;border-radius:2px;transform-origin:center;transition:transform .28s cubic-bezier(.4,0,.2,1),opacity .2s ease,width .28s ease}.header__menu-btn--open .menu-icon span:first-child{transform:translateY(5px) rotate(45deg);width:100%}.header__menu-btn--open .menu-icon span:last-child{transform:translateY(-6px) rotate(-45deg);width:100%}@media (max-width: 768px){.header{padding:0 16px;height:52px;min-height:52px;position:fixed;top:0;left:0;right:0;background:var(--navbar-bg);backdrop-filter:blur(28px) saturate(1.5);-webkit-backdrop-filter:blur(28px) saturate(1.5);border-bottom:1px solid var(--border);pointer-events:auto}.header__menu-btn{display:flex}.header__center{display:none}.header__wordmark{font-size:13px}}.sidebar{width:320px;flex-shrink:0;height:calc(100% - 112px);margin:88px 0 24px;display:flex;flex-direction:column;overflow-y:auto;border:1px solid var(--border);border-radius:20px;background:var(--surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:fadeIn .3s ease;position:relative;z-index:1}.sidebar__header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.sidebar__label{font-family:Space Grotesk,sans-serif;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.sidebar__badge{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px;background:var(--accent-subtle);color:var(--accent);border:1px solid var(--accent-muted)}.sidebar__nav{display:flex;flex-direction:column;gap:2px;padding:8px 6px;flex:1}.sidebar__item{display:flex;align-items:stretch;gap:0;padding:0;border-radius:10px;border:1px solid transparent;background:none;cursor:pointer;text-align:left;position:relative;overflow:hidden;transition:background .2s ease,border-color .2s ease;animation:fadeSlideRight .3s ease both;width:100%}.sidebar__item:hover{background:var(--surface-hover)}.sidebar__item--active{background:var(--accent-subtle);border-color:var(--accent-muted)}.sidebar__item-bar{position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,var(--accent),#a855f7)}.sidebar__item-body{flex:1;display:flex;flex-direction:column;gap:6px;padding:10px 10px 10px 12px}.sidebar__item-top{display:flex;align-items:center;gap:8px}.sidebar__item-icon{display:flex;align-items:center;color:var(--text-muted);flex-shrink:0}.sidebar__item--active .sidebar__item-icon{color:var(--accent)}.sidebar__item-icon svg{width:14px;height:14px}.sidebar__item-name{font-size:12.5px;font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s}.sidebar__item--active .sidebar__item-name{color:var(--accent-light)}.sidebar__item:hover .sidebar__item-name{color:var(--text-primary)}.sidebar__item-progress{display:flex;align-items:center;gap:6px}.sidebar__item-bar-track{flex:1;height:3px;border-radius:3px;background:var(--surface-3);overflow:hidden}.sidebar__item-bar-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent),#a855f7);transition:width .5s cubic-bezier(.4,0,.2,1)}.sidebar__item-bar-fill--done{background:linear-gradient(90deg,var(--easy-color),#22d3ee)}.sidebar__item-progress-text{font-family:JetBrains Mono,monospace;font-size:9px;color:var(--text-muted);font-weight:600;flex-shrink:0}.sidebar__footer{padding:12px;border-top:1px solid var(--border);flex-shrink:0}.sidebar__footer-badge{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:8px;background:var(--surface-2);border:1px solid var(--border);font-size:10px;font-weight:600;color:var(--text-muted);font-family:JetBrains Mono,monospace}@media (max-width: 768px){.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:160;width:272px;height:100%;margin:0;transform:translate(-100%);transition:transform .35s cubic-bezier(.4,0,.2,1);border:none;border-radius:0;border-right:1px solid var(--border-hover);box-shadow:var(--shadow-lg);background:var(--surface-solid)}.sidebar--open{transform:translate(0)}}.layout{display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}.layout:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 55% 38% at 0% 0%,rgba(124,106,247,.045) 0%,transparent 70%),radial-gradient(ellipse 40% 32% at 100% 100%,rgba(99,102,241,.03) 0%,transparent 70%)}.layout:after{display:none}.layout__body{display:flex;flex:1;overflow:hidden;position:relative;z-index:1;width:100%;gap:20px;padding:0 24px}.layout__main{flex:1;overflow-y:scroll;overflow-x:hidden;padding:0 36px;display:flex;flex-direction:column;align-items:center;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.layout__main::-webkit-scrollbar{display:none}.layout__spacer-top{flex-shrink:0;height:104px}.layout__spacer-bottom{flex-shrink:0;height:80px}.layout__main-inner{width:100%;max-width:760px}.layout__right{width:360px;flex-shrink:0;height:100%;overflow-y:auto;position:relative;z-index:1}.sidebar-overlay{display:none}@media (max-width: 768px){.layout__body{padding:0;gap:0}.layout__spacer-top{display:none}.layout__main{padding:68px 14px 60px}.layout__right{display:none}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.sidebar-overlay--open{opacity:1;visibility:visible}}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;opacity:0;will-change:transform}.cursor-dot{width:6px;height:6px;margin-left:-3px;margin-top:-3px;border-radius:50%;background:var(--accent);transition:width .25s ease,height .25s ease,margin .25s ease,opacity .2s ease,background-color .25s ease}.cursor-dot--visible{opacity:1}.cursor-dot--hover{width:10px;height:10px;margin-left:-5px;margin-top:-5px;background:var(--accent-light)}.cursor-dot--click{width:4px;height:4px;margin-left:-2px;margin-top:-2px}.cursor-ring{width:32px;height:32px;margin-left:-16px;margin-top:-16px;border-radius:50%;border:1.5px solid var(--accent);opacity:0;transition:width .3s cubic-bezier(.4,0,.2,1),height .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1),opacity .25s ease,border-color .25s ease,background-color .25s ease}.cursor-ring--visible{opacity:.35}.cursor-ring--hover{width:48px;height:48px;margin-left:-24px;margin-top:-24px;opacity:.2;background:var(--accent-subtle);border-color:var(--accent-light)}.cursor-ring--click{width:24px;height:24px;margin-left:-12px;margin-top:-12px;opacity:.5}@media (pointer: coarse){.cursor-dot,.cursor-ring{display:none!important}}.three-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;border-radius:inherit}.three-canvas canvas{display:block;width:100%!important;height:100%!important}.hero-section{position:relative;height:340px;display:flex;align-items:center;justify-content:flex-start;border-radius:20px;overflow:hidden;border:1px solid var(--border);background:var(--surface);flex-shrink:0;animation:fadeIn .4s ease}.hero-section:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-image:radial-gradient(circle,rgba(124,106,247,.18) 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse 80% 100% at 60% 50%,black 20%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 80% 100% at 60% 50%,black 20%,transparent 80%);animation:gridDrift 20s linear infinite;pointer-events:none}.hero-section:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(105deg,transparent 40%,rgba(124,106,247,.06) 50%,transparent 60%);background-size:200% 100%;animation:shimmerSweep 8s ease-out .5s infinite;pointer-events:none}.hero-section__vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 120% at 20% 50%,transparent 30%,var(--bg) 100%);pointer-events:none;z-index:1}.hero-section__content{position:relative;z-index:2;padding:0 40px;display:flex;flex-direction:column;gap:12px}.hero-section__eyebrow{display:flex;align-items:center;gap:8px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:var(--accent-light);letter-spacing:.08em;text-transform:uppercase}.hero-section__eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 2s ease-in-out infinite;box-shadow:0 0 8px var(--accent)}.hero-section__title{display:flex;flex-direction:column;gap:0;margin:0;line-height:1}.hero-section__title-line-1{font-family:Syne,Space Grotesk,sans-serif;font-size:52px;font-weight:800;color:var(--text-primary);letter-spacing:-.04em;line-height:1;display:block}.hero-section__title-line-2{font-family:Syne,Space Grotesk,sans-serif;font-size:52px;font-weight:800;letter-spacing:-.04em;line-height:1;display:block;margin-top:2px}.hero-section__title-highlight{background:linear-gradient(135deg,var(--accent) 0%,#a855f7 50%,#ec4899 100%);background-size:200% 200%;animation:gradientShift 4s ease infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-section__sub{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;color:var(--text-muted);letter-spacing:.02em;margin-top:4px}.hero-section__scroll-hint{display:flex;align-items:center;gap:10px;margin-top:8px}.hero-section__scroll-line{width:24px;height:1px;background:var(--accent);animation:shimmer 2s ease-in-out infinite}.hero-section__scroll-hint span{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-weight:500}@media (max-width: 768px){.hero-section{height:240px;border-radius:14px}.hero-section__content{padding:0 22px;gap:8px}.hero-section__title-line-1,.hero-section__title-line-2{font-size:34px}.hero-section__scroll-hint{display:none}}.bg-mesh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.bg-blob{position:absolute;border-radius:50%;filter:blur(100px);will-change:transform;opacity:1}.bg-blob--1{width:700px;height:700px;top:-200px;left:-150px;background:radial-gradient(circle at center,rgba(88,166,255,.15) 0%,rgba(88,166,255,.05) 50%,transparent 70%);animation:blobDrift1 18s ease-in-out infinite alternate}.bg-blob--2{width:650px;height:650px;bottom:-180px;right:-120px;background:radial-gradient(circle at center,rgba(88,166,255,.12) 0%,rgba(88,166,255,.04) 50%,transparent 70%);animation:blobDrift2 22s ease-in-out infinite alternate}.bg-blob--3{width:500px;height:500px;top:30%;left:40%;transform:translate(-50%,-50%);background:radial-gradient(circle at center,rgba(121,192,255,.1) 0%,rgba(121,192,255,.03) 50%,transparent 70%);animation:blobDrift3 15s ease-in-out infinite alternate}.bg-blob--4{width:400px;height:400px;top:-50px;right:5%;background:radial-gradient(circle at center,rgba(31,111,235,.15) 0%,rgba(31,111,235,.05) 50%,transparent 70%);animation:blobDrift4 20s ease-in-out infinite alternate}@media (max-width: 768px){.bg-blob{opacity:.4}}@keyframes blobDrift1{0%{transform:translate(0) scale(1)}33%{transform:translate(120px,80px) scale(1.15)}66%{transform:translate(-60px,140px) scale(.9)}to{transform:translate(80px,-60px) scale(1.1)}}@keyframes blobDrift2{0%{transform:translate(0) scale(1)}50%{transform:translate(-140px,-100px) scale(1.15)}to{transform:translate(60px,80px) scale(.9)}}@keyframes blobDrift3{0%{transform:translate(-50%,-50%) scale(1)}40%{transform:translate(-50%,-50%) scale(1.25) translate(80px,-60px)}to{transform:translate(-50%,-50%) scale(.85) translate(-60px,80px)}}@keyframes blobDrift4{0%{transform:translate(0) scale(1)}60%{transform:translate(-90px,120px) scale(1.2)}to{transform:translate(70px,-60px) scale(.9)}}@media (prefers-reduced-motion: reduce){.bg-blob{animation:none}}.progress-panel{width:360px;flex-shrink:0;height:calc(100% - 112px);margin:88px 0 24px;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;border:1px solid var(--border);border-radius:20px;background:var(--surface-glass);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;flex-direction:column;animation:fadeIn .3s ease}.progress-panel::-webkit-scrollbar{display:none}.progress-panel__header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 12px;flex-shrink:0}.progress-panel__title{font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--text-primary)}.progress-bento{padding:0 20px 24px;flex-shrink:0}.progress-bento__main{background:var(--surface-2);border:1px solid var(--border-hover);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.progress-bento__meta{display:flex;flex-direction:column;gap:2px;z-index:1}.progress-bento__pct{font-family:Space Grotesk,sans-serif;font-size:32px;font-weight:800;color:var(--text-primary);line-height:1;letter-spacing:-.04em;background:linear-gradient(135deg,var(--text-primary) 20%,var(--accent-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.progress-bento__label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em}.progress-bento__bar-wrap{position:relative;height:6px;margin:2px 0;z-index:1}.progress-bento__bar-track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-3);border-radius:6px;overflow:hidden}.progress-bento__bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#a855f7);border-radius:6px;transition:width .8s cubic-bezier(.4,0,.2,1)}.progress-bento__bar-glow{position:absolute;top:0;bottom:0;left:0;background:linear-gradient(90deg,var(--accent),#a855f7);border-radius:6px;filter:blur(8px);opacity:.6;transition:width .8s cubic-bezier(.4,0,.2,1);mix-blend-mode:screen}.progress-bento__stats{display:flex;align-items:baseline;gap:6px;z-index:1}.progress-bento__stat-val{font-family:JetBrains Mono,monospace;font-size:14px;font-weight:700;color:var(--text-secondary)}.progress-bento__stat-sep{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-muted)}.progress-bento__stat-total{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-muted);font-weight:500}.progress-panel__divider{display:flex;align-items:center;padding:0 20px 12px;flex-shrink:0}.progress-panel__divider span{font-family:Space Grotesk,sans-serif;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted)}.progress-topics{display:flex;flex-direction:column;gap:10px;padding:0 20px 24px;flex:1;overflow-y:auto;scrollbar-width:none}.progress-topics::-webkit-scrollbar{display:none}.progress-topic{padding:12px 14px;border-radius:10px;background:var(--surface-2);border:1px solid var(--border);transition:border-color .3s ease,background .3s ease,transform .2s;display:flex;flex-direction:column;gap:6px}.progress-topic:hover{transform:translateY(-2px);border-color:var(--border-hover)}.progress-topic--done{background:rgba(52,211,153,.04);border-color:#34d39924}.progress-topic__meta{display:flex;align-items:center;justify-content:space-between}.progress-topic__name{font-size:12.5px;font-weight:600;color:var(--text-secondary);text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.progress-topic__frac{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-primary);font-weight:700}.progress-topic__frac--done{color:var(--easy-color)}.progress-topic__track{height:4px;border-radius:4px;background:var(--surface-3);overflow:hidden}.progress-topic__fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--accent),#a855f7);transition:width .55s cubic-bezier(.4,0,.2,1)}.progress-topic__fill--done{background:linear-gradient(90deg,var(--easy-color),#22d3ee)}.progress-topic__sub{font-family:JetBrains Mono,monospace;font-size:9.5px;color:var(--text-muted);font-weight:500}.progress-complete{margin:0 20px 24px;display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:12px;background:linear-gradient(135deg,rgba(52,211,153,.08),rgba(34,211,238,.05));border:1px solid rgba(52,211,153,.2);font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;color:var(--easy-color);flex-shrink:0;box-shadow:0 4px 12px #34d3991a}.mobile-progress-fab{display:none;position:fixed;bottom:24px;right:20px;z-index:200;width:56px;height:56px;border-radius:50%;border:none;background:transparent;align-items:center;justify-content:center;cursor:pointer;transition:transform .25s cubic-bezier(.34,1.56,.64,1);padding:0}.mobile-progress-fab__inner{position:relative;width:100%;height:100%;border-radius:50%;background:var(--surface-solid);box-shadow:0 8px 24px #0000004d;display:flex;align-items:center;justify-content:center;padding:4px;overflow:hidden}.mobile-progress-fab__ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;z-index:0;transition:background .5s ease}.mobile-progress-fab__center{position:relative;z-index:1;width:100%;height:100%;background:var(--surface-solid);border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--border)}.mobile-progress-fab:hover{transform:scale(1.08)}.mobile-progress-fab__label{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800;color:var(--text-primary)}.mobile-progress-fab--done .mobile-progress-fab__ring{background:conic-gradient(var(--easy-color) 100%,transparent 0)!important}.mobile-progress-drawer{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:300}.mobile-progress-drawer__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:0;transition:opacity .3s ease}.mobile-progress-drawer__sheet{position:absolute;bottom:0;left:0;right:0;background:var(--surface-solid);border-radius:24px 24px 0 0;border-top:1px solid var(--border-hover);max-height:85vh;height:85vh;transform:translateY(100%);transition:transform .38s cubic-bezier(.32,.72,0,1);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -10px 40px #00000080}.mobile-progress-drawer__handle{width:48px;height:5px;border-radius:3px;background:var(--border-hover);margin:14px auto 8px;flex-shrink:0}.mobile-progress-drawer__content{overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none;flex:1;min-height:0}.mobile-progress-drawer__content::-webkit-scrollbar{display:none}@media (max-width: 1080px){.progress-panel{display:none}.mobile-progress-fab{display:flex}.mobile-progress-drawer{display:block;pointer-events:none}}.mobile-progress-drawer--open{pointer-events:auto}.mobile-progress-drawer--open .mobile-progress-drawer__backdrop{opacity:1}.mobile-progress-drawer--open .mobile-progress-drawer__sheet{transform:translateY(0)}.drawer-header{display:flex;align-items:center;justify-content:center;padding:8px 20px 20px;flex-shrink:0}.drawer-header__title{font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;letter-spacing:.05em;color:var(--text-primary)}.drawer-bento{margin:0 20px 20px;background:var(--surface-2);border:1px solid var(--border-hover);border-radius:16px;padding:20px 24px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-sm)}.drawer-bento__meta{display:flex;flex-direction:column;gap:2px;text-align:center;align-items:center}.drawer-bento__pct{font-family:Space Grotesk,sans-serif;font-size:38px;font-weight:800;line-height:1;letter-spacing:-.04em;background:linear-gradient(135deg,var(--text-primary) 30%,var(--accent-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.drawer-bento__label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-top:4px}.drawer-bento__bar-wrap{position:relative;height:6px;width:100%}.drawer-bento__bar-track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-3);border-radius:6px;overflow:hidden}.drawer-bento__bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#a855f7);border-radius:6px;transition:width .8s cubic-bezier(.4,0,.2,1)}.drawer-bento__bar-glow{position:absolute;top:0;bottom:0;left:0;background:linear-gradient(90deg,var(--accent),#a855f7);border-radius:6px;filter:blur(8px);opacity:.5;transition:width .8s cubic-bezier(.4,0,.2,1);mix-blend-mode:screen}.drawer-bento__stats{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:4px}.drawer-bento__stat-val{font-family:JetBrains Mono,monospace;font-size:15px;font-weight:700;color:var(--text-secondary)}.drawer-bento__stat-sep{font-family:JetBrains Mono,monospace;font-size:13px;color:var(--text-muted)}.drawer-bento__stat-total{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-muted);font-weight:500}.drawer-topics{display:flex;flex-direction:column;gap:12px;padding:0 20px 24px}.drawer-topics__heading{font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.drawer-topic{padding:12px 16px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);transition:border-color .3s ease;display:flex;flex-direction:column;gap:8px}.drawer-topic--done{background:rgba(52,211,153,.04);border-color:#34d39926}.drawer-topic__meta{display:flex;align-items:center;justify-content:space-between}.drawer-topic__name{font-size:14px;font-weight:600;color:var(--text-primary);text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:75%}.drawer-topic__frac{font-family:JetBrains Mono,monospace;font-size:13px;color:var(--text-primary);font-weight:700}.drawer-topic__frac--done{color:var(--easy-color)}.drawer-topic__track{height:5px;border-radius:5px;background:var(--surface-3);overflow:hidden}.drawer-topic__fill{height:100%;border-radius:5px;background:linear-gradient(90deg,var(--accent),#a855f7);transition:width .5s cubic-bezier(.4,0,.2,1)}.drawer-topic__fill--done{background:linear-gradient(90deg,var(--easy-color),#22d3ee)}.drawer-topic__sub{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--text-muted);font-weight:500}.problem-card{--sx: 50%;--sy: 50%;--s-op: 0;display:grid;grid-template-columns:28px 36px 1fr auto auto;align-items:center;gap:12px;padding:10px 13px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);position:relative;overflow:hidden;animation:fadeSlideUp .35s ease both;will-change:transform;transition:border-color .3s ease,box-shadow .3s ease,background .3s ease}.problem-card__spotlight{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;background:radial-gradient(240px circle at var(--sx) var(--sy),rgba(124,106,247,.1),transparent 70%);opacity:var(--s-op);transition:opacity .3s ease;pointer-events:none;z-index:0}.problem-card:hover{border-color:#7c6af733;box-shadow:0 6px 24px #00000040}.problem-card--done{background:var(--surface-2);opacity:.65}.problem-card--done .problem-card__name{text-decoration:line-through;color:var(--text-muted)!important}.problem-card__check{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--border-hover);background:transparent;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:2;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.problem-card__check:hover{border-color:var(--accent);background:var(--accent-subtle)}.problem-card__check--done{background:var(--accent);border-color:var(--accent);color:#fff}.problem-card__check svg{width:10px;height:10px}.problem-card__platform-badge{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;flex-shrink:0;position:relative;z-index:2;transition:transform .25s cubic-bezier(.4,0,.2,1)}.problem-card:hover .problem-card__platform-badge{transform:scale(1.08)}.problem-card__platform-badge--leetcode{background:var(--lc-bg);border:1px solid rgba(245,158,11,.12)}.problem-card__platform-badge--geeksforgeeks{background:var(--gfg-bg);border:1px solid rgba(34,197,94,.12)}.problem-card__platform-badge--other{background:var(--surface-3);border:1px solid var(--border)}.platform-logo{width:16px;height:16px}.platform-logo--lc{color:var(--lc-color)}.platform-logo--gfg{color:var(--gfg-color)}.platform-logo--other{color:var(--text-muted)}.problem-card__info{display:flex;flex-direction:column;gap:1px;min-width:0;position:relative;z-index:2;text-decoration:none}.problem-card__name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em;transition:color .2s ease}.problem-card__info:hover .problem-card__name{color:var(--accent-light)}.problem-card__platform-name{font-size:10px;font-family:JetBrains Mono,monospace;color:var(--text-muted);font-weight:500}.problem-card__difficulty{font-family:JetBrains Mono,monospace;font-size:9px;font-weight:700;letter-spacing:.07em;padding:3px 9px;border-radius:5px;text-transform:uppercase;white-space:nowrap;z-index:2;position:relative}.problem-card__difficulty--easy{background:var(--easy-bg);color:var(--easy-color);border:1px solid var(--easy-border)}.problem-card__difficulty--medium{background:var(--medium-bg);color:var(--medium-color);border:1px solid var(--medium-border)}.problem-card__difficulty--hard{background:var(--hard-bg);color:var(--hard-color);border:1px solid var(--hard-border)}.problem-card__arrow{display:flex;align-items:center;color:var(--text-muted);opacity:0;transform:translate(-4px,4px);transition:all .25s cubic-bezier(.4,0,.2,1);z-index:2;position:relative}.problem-card__arrow svg{width:13px;height:13px}.problem-card:hover .problem-card__arrow{opacity:1;transform:translate(0);color:var(--accent-light)}@media (max-width: 768px){.problem-card{grid-template-columns:24px 30px 1fr auto;gap:8px;padding:9px 10px}.problem-card__check{width:18px;height:18px}.problem-card__platform-badge{width:30px;height:30px}.platform-logo{width:14px;height:14px}.problem-card__arrow{display:none}.problem-card__name{font-size:12px}}.topic-group{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:fadeSlideUp .4s ease both;transition:border-color .35s ease,box-shadow .35s ease,transform .35s cubic-bezier(.4,0,.2,1),background .35s ease;cursor:default}.topic-group:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 8px 28px #00000038,0 0 0 1px var(--border-hover)}.topic-group--open{border-color:var(--border-accent);box-shadow:0 4px 24px #7c6af712}.topic-group--open:hover{transform:translateY(-2px);box-shadow:0 8px 32px #7c6af71f,0 0 0 1px #7c6af738}.topic-group--done{border-color:#34d3992e}.topic-group--done:hover{box-shadow:0 8px 28px #34d39914,0 0 0 1px #34d3992e}.topic-group__header{width:100%;display:flex;align-items:center;gap:12px;padding:13px 16px;background:none;border:none;cursor:pointer;color:var(--text-primary);text-align:left;position:relative;transition:background .2s ease}.topic-group__header:hover{background:var(--surface-hover)}.topic-group__progress-bar{position:absolute;top:0;left:0;height:2px;border-radius:0 2px 0 0;background:linear-gradient(90deg,var(--accent),#a855f7);transition:width .6s cubic-bezier(.4,0,.2,1);z-index:1}.topic-group__progress-bar--done{background:linear-gradient(90deg,var(--easy-color),#22d3ee)}.topic-group__chevron{display:flex;align-items:center;color:var(--text-muted);transition:transform .35s cubic-bezier(.34,1.56,.64,1),color .2s;flex-shrink:0}.topic-group__chevron svg{width:13px;height:13px}.topic-group--open .topic-group__chevron{transform:rotate(90deg);color:var(--accent)}.topic-group__name{font-size:13.5px;font-weight:700;color:var(--text-primary);text-transform:capitalize;flex:1;letter-spacing:-.01em;font-family:Space Grotesk,sans-serif}.topic-group__badges{display:flex;align-items:center;gap:4px}.topic-badge{display:flex;align-items:center;gap:3px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px}.topic-badge__dot{width:4px;height:4px;border-radius:50%}.topic-badge--easy{background:var(--easy-bg);color:var(--easy-color);border:1px solid var(--easy-border)}.topic-badge--easy .topic-badge__dot{background:var(--easy-color)}.topic-badge--medium{background:var(--medium-bg);color:var(--medium-color);border:1px solid var(--medium-border)}.topic-badge--medium .topic-badge__dot{background:var(--medium-color)}.topic-badge--hard{background:var(--hard-bg);color:var(--hard-color);border:1px solid var(--hard-border)}.topic-badge--hard .topic-badge__dot{background:var(--hard-color)}.topic-group__done-count{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;color:var(--text-muted);padding:2px 8px;border-radius:5px;background:var(--surface-3);border:1px solid var(--border);flex-shrink:0;transition:all .3s ease}.topic-group__done-count--complete{background:rgba(52,211,153,.08);color:var(--easy-color);border-color:#34d3992e}.topic-group__body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1)}.topic-group__body--open{grid-template-rows:1fr}.topic-group__body-inner{overflow:hidden}.topic-group__body--open .topic-group__body-inner{padding:0 12px 16px;border-top:1px solid var(--border)}.difficulty-section{margin-top:16px}.difficulty-section__header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.difficulty-section__label{font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;flex-shrink:0}.difficulty-section__label--easy{color:var(--easy-color)}.difficulty-section__label--medium{color:var(--medium-color)}.difficulty-section__label--hard{color:var(--hard-color)}.difficulty-section__line{flex:1;height:1px;background:linear-gradient(90deg,var(--border) 0%,transparent 100%)}.difficulty-section__count{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--text-muted);flex-shrink:0}.problem-list{display:flex;flex-direction:column;gap:5px}@media (max-width: 768px){.topic-group{border-radius:12px}.topic-group__header{padding:12px 13px;gap:8px}.topic-group__name{font-size:13px}.topic-group__badges{display:none}.topic-group__body--open .topic-group__body-inner{padding:0 10px 14px}.topic-group:hover{transform:none}}.spinner-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;min-height:300px;color:var(--text-muted);animation:fadeIn .4s ease}.spinner{width:48px;height:48px;position:relative}.spinner__ring{width:100%;height:100%;border-radius:50%;border:3px solid var(--surface-3);border-top-color:var(--accent);animation:spin .9s cubic-bezier(.5,.1,.4,.9) infinite;box-shadow:0 0 20px var(--accent-glow)}.spinner__label{font-size:13px;font-family:JetBrains Mono,monospace;letter-spacing:.04em;color:var(--text-muted);animation:pulse 1.5s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:300px;text-align:center;color:var(--text-muted);animation:fadeSlideUp .5s ease}.empty-state__icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:18px;background:var(--surface-2);border:1px solid var(--border);color:var(--text-muted);animation:float 3s ease-in-out infinite}.empty-state__icon svg{width:28px;height:28px}.empty-state__title{font-size:18px;font-weight:700;color:var(--text-secondary);margin:0}.empty-state__description{font-size:13px;color:var(--text-muted);margin:0;max-width:360px;line-height:1.7}.sheet-view{display:flex;flex-direction:column;gap:20px;padding-bottom:20px;animation:fadeIn .3s ease}.difficulty-summary{display:flex;gap:8px;flex-wrap:wrap;animation:fadeSlideUp .4s ease both;animation-delay:80ms}.diff-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:20px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;letter-spacing:.02em;transition:transform .2s ease,box-shadow .2s ease;cursor:default}.diff-pill:hover{transform:translateY(-2px)}.diff-pill__dot{width:5px;height:5px;border-radius:50%}.diff-pill--easy{background:var(--easy-bg);color:var(--easy-color);border:1px solid var(--easy-border)}.diff-pill__dot--easy{background:var(--easy-color)}.diff-pill--medium{background:var(--medium-bg);color:var(--medium-color);border:1px solid var(--medium-border)}.diff-pill__dot--medium{background:var(--medium-color)}.diff-pill--hard{background:var(--hard-bg);color:var(--hard-color);border:1px solid var(--hard-border)}.diff-pill__dot--hard{background:var(--hard-color)}.quote-banner{position:relative;padding:18px 22px 18px 38px;border-radius:14px;background:var(--quote-bg);border:1px solid var(--quote-border);overflow:hidden;animation:fadeSlideUp .5s ease both;animation-delay:.14s;flex-shrink:0}.quote-banner__mark{position:absolute;top:2px;left:12px;font-family:Syne,Space Grotesk,serif;font-size:52px;font-weight:800;color:var(--accent);opacity:.12;line-height:1;pointer-events:none}.quote-banner__text{font-family:Space Grotesk,sans-serif;font-size:13.5px;font-weight:500;color:var(--text-secondary);font-style:italic;line-height:1.6;margin:0}.quote-banner__author{display:block;margin-top:8px;font-size:11px;font-family:JetBrains Mono,monospace;font-style:normal;color:var(--text-muted);letter-spacing:.03em}.topics-section{display:flex;flex-direction:column;gap:12px;animation:fadeSlideUp .5s ease both;animation-delay:.2s}.topics-section__header{display:flex;align-items:center;justify-content:space-between;padding:0 2px}.topics-section__label{font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.topics-section__count{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;padding:2px 8px;border-radius:6px;background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.topic-list{display:flex;flex-direction:column;gap:8px}.site-footer{padding:20px 0 4px;text-align:center}.site-footer span{font-size:11px;color:var(--text-muted);font-family:JetBrains Mono,monospace;letter-spacing:.03em}@media (max-width: 768px){.sheet-view{gap:14px}.quote-banner{padding:14px 16px 14px 32px}.quote-banner__mark{font-size:38px;left:8px}.quote-banner__text{font-size:12.5px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;cursor:none}h1,h2,h3,h4,h5,h6{font-family:Space Grotesk,sans-serif}button{font-family:inherit;cursor:none}a{text-decoration:none;cursor:none}@media (pointer: coarse){body,button,a{cursor:auto}button,a{cursor:pointer}}:root,[data-theme=dark]{--bg: #0d1117;--surface: rgba(22, 27, 34, .75);--surface-solid: #161b22;--surface-2: rgba(33, 38, 45, .55);--surface-3: rgba(48, 54, 61, .4);--surface-hover: rgba(56, 62, 71, .45);--surface-glass: rgba(22, 27, 34, .45);--border: rgba(240, 246, 252, .1);--border-hover: rgba(240, 246, 252, .2);--border-accent: rgba(88, 166, 255, .3);--text-primary: #c9d1d9;--text-secondary: #8b949e;--text-muted: #484f58;--accent: #58a6ff;--accent-light: #79c0ff;--accent-muted: rgba(88, 166, 255, .18);--accent-subtle: rgba(88, 166, 255, .06);--accent-glow: rgba(88, 166, 255, .12);--easy-color: #3fb950;--easy-bg: rgba(63, 185, 80, .08);--easy-border: rgba(63, 185, 80, .15);--medium-color: #d29922;--medium-bg: rgba(210, 153, 34, .08);--medium-border: rgba(210, 153, 34, .15);--hard-color: #f85149;--hard-bg: rgba(248, 81, 73, .08);--hard-border: rgba(248, 81, 73, .15);--lc-color: #d29922;--lc-bg: rgba(210, 153, 34, .08);--gfg-color: #3fb950;--gfg-bg: rgba(63, 185, 80, .08);--shadow-sm: 0 2px 8px rgba(0,0,0,.3);--shadow-md: 0 8px 24px rgba(0,0,0,.4);--shadow-lg: 0 20px 50px rgba(0,0,0,.5);--shadow-glow: 0 0 50px rgba(88, 166, 255, .1);--orb-1: rgba(88, 166, 255, .06);--orb-2: rgba(163, 113, 247, .05);--orb-3: rgba(248, 81, 73, .04);--orb-4: rgba(63, 185, 80, .04);--navbar-bg: rgba(13, 17, 23, .65);--quote-bg: rgba(88, 166, 255, .04);--quote-border: rgba(88, 166, 255, .12)}[data-theme=light]{--bg: #f2f2f8;--surface: rgba(255, 255, 255, .8);--surface-solid: #ffffff;--surface-2: rgba(242, 242, 250, .65);--surface-3: rgba(232, 232, 245, .45);--surface-hover: rgba(238, 238, 248, .55);--surface-glass: rgba(255, 255, 255, .55);--border: rgba(0, 0, 0, .045);--border-hover: rgba(0, 0, 0, .09);--border-accent: rgba(91, 78, 240, .15);--text-primary: #0f0f28;--text-secondary: #4a4a70;--text-muted: #9090a8;--accent: #5b4ef0;--accent-light: #7c6af7;--accent-muted: rgba(91, 78, 240, .12);--accent-subtle: rgba(91, 78, 240, .05);--accent-glow: rgba(91, 78, 240, .06);--easy-color: #059669;--easy-bg: rgba(5, 150, 105, .06);--easy-border: rgba(5, 150, 105, .1);--medium-color: #d97706;--medium-bg: rgba(217, 119, 6, .06);--medium-border: rgba(217, 119, 6, .1);--hard-color: #dc2626;--hard-bg: rgba(220, 38, 38, .06);--hard-border: rgba(220, 38, 38, .1);--lc-color: #d97706;--lc-bg: rgba(217, 119, 6, .06);--gfg-color: #059669;--gfg-bg: rgba(5, 150, 105, .06);--shadow-sm: 0 2px 8px rgba(0,0,0,.03);--shadow-md: 0 8px 24px rgba(0,0,0,.05);--shadow-lg: 0 20px 50px rgba(0,0,0,.07);--shadow-glow: 0 0 50px rgba(91, 78, 240, .03);--orb-1: rgba(91, 78, 240, .05);--orb-2: rgba(5, 150, 105, .035);--orb-3: rgba(220, 38, 38, .025);--orb-4: rgba(59, 130, 246, .035);--navbar-bg: rgba(255, 255, 255, .55);--quote-bg: rgba(91, 78, 240, .03);--quote-border: rgba(91, 78, 240, .08)}body{background:var(--bg);color:var(--text-primary)}#root{height:100vh;display:flex;flex-direction:column}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent-muted);color:var(--text-primary)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideRight{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes orbFloat1{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-40px) scale(1.1)}50%{transform:translate(-20px,-20px) scale(.9)}75%{transform:translate(15px,30px) scale(1.05)}}@keyframes orbFloat2{0%,to{transform:translate(0) scale(1)}25%{transform:translate(-40px,20px) scale(1.15)}50%{transform:translate(25px,40px) scale(.85)}75%{transform:translate(-15px,-30px) scale(1.1)}}@keyframes orbFloat3{0%,to{transform:translate(0) scale(1)}33%{transform:translate(20px,30px) scale(1.2)}66%{transform:translate(-30px,-10px) scale(.9)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes scaleSpring{0%{transform:scale(.8);opacity:0}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink{50%{border-color:transparent}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes gridDrift{0%{background-position:0 0}to{background-position:28px 28px}}@keyframes shimmerSweep{0%{background-position:200% 0;opacity:0}5%{opacity:1}25%{opacity:1}35%{background-position:-200% 0;opacity:0}to{background-position:-200% 0;opacity:0}}@keyframes borderSpin{0%{--border-angle: 0deg}to{--border-angle: 360deg}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}
