:root{--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1.275)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-size:16px;scroll-padding-top:80px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;min-height:100vh;transition:background-color .25s ease,color .25s ease;overflow-x:hidden}body[data-theme=light]{background-color:#fafafa;color:#111}body[data-theme=dark]{background-color:#000;color:#fafafa}#root{min-height:100vh;display:flex;flex-direction:column}a{text-decoration:none;color:inherit;transition:color .15s ease}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}button{cursor:pointer;border:none;background:none;font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--focus-color, #0066FF);outline-offset:2px;border-radius:4px}body[data-theme=dark] :focus-visible{--focus-color: #3385FF}::selection{background-color:#06f;color:#fff}body[data-theme=dark] ::selection{background-color:#3385ff}body[data-theme=light]{scrollbar-width:thin;scrollbar-color:#D0D0D0 #F5F5F5}body[data-theme=light] ::-webkit-scrollbar{width:8px;height:8px}body[data-theme=light] ::-webkit-scrollbar-track{background:#f5f5f5}body[data-theme=light] ::-webkit-scrollbar-thumb{background:#d0d0d0;border-radius:4px}body[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#b0b0b0}body[data-theme=dark]{scrollbar-width:thin;scrollbar-color:#3F3F46 #09090B}body[data-theme=dark] ::-webkit-scrollbar{width:8px;height:8px}body[data-theme=dark] ::-webkit-scrollbar-track{background:#09090b}body[data-theme=dark] ::-webkit-scrollbar-thumb{background:#3f3f46;border-radius:4px}body[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#52525b}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.9)}70%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes expandWidth{0%{width:0}to{width:100%}}.animate-fadeIn{animation:fadeIn .4s var(--ease-out) forwards}.animate-fadeInUp{animation:fadeInUp .5s var(--ease-out) forwards}.animate-fadeInDown{animation:fadeInDown .5s var(--ease-out) forwards}.animate-slideInLeft{animation:slideInLeft .5s var(--ease-out) forwards}.animate-slideInRight{animation:slideInRight .5s var(--ease-out) forwards}.animate-scaleIn{animation:scaleIn .4s var(--ease-out) forwards}.animate-popIn{animation:popIn .5s var(--ease-spring) forwards}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.animate-on-scroll{opacity:0}.animate-on-scroll.is-visible{animation:fadeInUp .6s var(--ease-out) forwards}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}@media (max-width: 768px){html{font-size:15px}}@media (max-width: 480px){html{font-size:14px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
