*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#8080804d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#80808080}input,select,button{font-family:inherit}::selection{background:#6c5ce74d;color:inherit}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes scaleInBounce{0%{opacity:0;transform:scale(.8)}60%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes modalIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseRing{0%{box-shadow:0 0 #6c5ce766}70%{box-shadow:0 0 0 8px #6c5ce700}to{box-shadow:0 0 #6c5ce700}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes borderGlow{0%,to{border-color:#6c5ce733}50%{border-color:#6c5ce780}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes dotPulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.8);opacity:1}}@keyframes navIndicator{0%{width:0;opacity:0}to{width:100%;opacity:1}}@keyframes pageTransition{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltipIn{0%{opacity:0;transform:scale(.95) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes ripple{to{transform:scale(2.5);opacity:0}}@keyframes checkmark{0%{stroke-dashoffset:20}to{stroke-dashoffset:0}}@keyframes iconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.anim-fade-up{animation:fadeInUp .5s cubic-bezier(.16,1,.3,1) both}.anim-fade-down{animation:fadeInDown .4s cubic-bezier(.16,1,.3,1) both}.anim-fade-left{animation:fadeInLeft .5s cubic-bezier(.16,1,.3,1) both}.anim-width{animation:growWidth .8s cubic-bezier(.16,1,.3,1) both}@keyframes growWidth{0%{width:0%!important}}.anim-fade-right{animation:fadeInRight .5s cubic-bezier(.16,1,.3,1) both}.anim-fade-in{animation:fadeIn .4s ease both}.anim-scale-in{animation:scaleIn .4s cubic-bezier(.16,1,.3,1) both}.anim-scale-bounce{animation:scaleInBounce .5s cubic-bezier(.34,1.56,.64,1) both}.anim-page{animation:pageTransition .35s cubic-bezier(.16,1,.3,1) both}.delay-1{animation-delay:.04s}.delay-2{animation-delay:.08s}.delay-3{animation-delay:.12s}.delay-4{animation-delay:.16s}.delay-5{animation-delay:.2s}.delay-6{animation-delay:.24s}.delay-7{animation-delay:.28s}.delay-8{animation-delay:.32s}.delay-9{animation-delay:.36s}.delay-10{animation-delay:.4s}.anim-fade-up,.anim-fade-down,.anim-fade-left,.anim-fade-right,.anim-scale-in,.anim-scale-bounce,.anim-page,.modal-content,.settings-panel,.modal-backdrop{will-change:transform,opacity}.hover-lift{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,border-color .25s ease}.hover-lift:hover{transform:translateY(-3px);box-shadow:0 8px 25px -5px #0003}.hover-glow{transition:transform .2s ease,box-shadow .3s ease,border-color .3s ease}.hover-glow:hover{transform:translateY(-2px);box-shadow:0 0 20px #6c5ce726,0 8px 25px -5px #00000026;border-color:#6c5ce74d!important}.hover-scale{transition:transform .2s cubic-bezier(.16,1,.3,1)}.hover-scale:hover{transform:scale(1.03)}.hover-scale:active{transform:scale(.97)}.hover-bright{transition:opacity .2s ease,transform .2s ease}.hover-bright:hover{opacity:.85;transform:translateY(-1px)}.hover-icon{transition:transform .2s ease,color .2s ease}.hover-icon:hover{transform:scale(1.15)}.hover-icon:active{transform:scale(.9)}.btn-press{transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s ease}.btn-press:hover{transform:translateY(-1px)}.btn-press:active{transform:translateY(1px) scale(.98)}.nav-item{transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s ease,color .2s ease;position:relative}.nav-item:hover{transform:translate(3px)}.cal-day{transition:background .15s ease}.cal-day:hover{background:#6c5ce70f!important;z-index:1}.event-tag{transition:transform .2s ease,opacity .2s ease}.event-tag:hover{transform:translate(2px);opacity:.85}.pill-btn{transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s ease,color .2s ease,border-color .2s ease}.pill-btn:hover{transform:translateY(-1px)}.pill-btn:active{transform:scale(.95)}.person-row{transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s ease}.person-row:hover{transform:translate(4px)}.source-card{transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,border-color .25s ease}.source-card:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 30px -8px #0003}.insight-card{transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease}.insight-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px -8px #00000026}.stat-box{transition:transform .2s ease}.stat-box:hover{transform:scale(1.05)}.sync-dot{animation:pulseRing 2s infinite}.logo-icon{animation:float 3s ease-in-out infinite}.btn-gradient{background-size:200% 200%;animation:gradientShift 3s ease infinite;transition:transform .2s ease,box-shadow .2s ease}.btn-gradient:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6c5ce766}.btn-gradient:active{transform:translateY(0) scale(.98)}.modal-backdrop{animation:backdropIn .3s ease both}.modal-content{animation:modalIn .35s cubic-bezier(.16,1,.3,1) both}.settings-panel{animation:slideInRight .35s cubic-bezier(.16,1,.3,1) both}.chart-tooltip{animation:tooltipIn .2s ease both}.avatar-ring{transition:box-shadow .3s ease,transform .2s ease}.avatar-ring:hover{box-shadow:0 0 0 3px #6c5ce74d;transform:scale(1.05)}.theme-toggle{transition:transform .4s cubic-bezier(.16,1,.3,1)}.theme-toggle:hover{transform:rotate(30deg)}.refresh-icon{transition:transform .5s ease}.refresh-icon:hover{transform:rotate(180deg)}.theme-transition{transition:background .5s cubic-bezier(.4,0,.2,1),color .5s cubic-bezier(.4,0,.2,1),border-color .5s cubic-bezier(.4,0,.2,1)}.theme-card{transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s ease}.theme-card:hover{transform:scale(1.04)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
