*{margin:0;padding:0;box-sizing:border-box;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#f8fafc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.dark-mode{color-scheme:dark}html.dark-mode body{background-color:#0f172a;color:#f1f5f9}a{font-weight:500;color:#2563eb;text-decoration:none;position:relative;transition:all .3s ease}.dark-mode a{color:#60a5fa}a:hover{color:#3b82f6}.dark-mode a:hover{color:#93c5fd}a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background-color:#3b82f6;transition:width .3s ease}.dark-mode a:after{background-color:#60a5fa}a:hover:after{width:100%}h1,h2,h3,h4,h5,h6{line-height:1.2;margin-bottom:.5em;transition:color .3s ease}h1{font-size:2.5rem}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#f1f5f9;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.dark-mode button{background-color:#1e293b;color:#f1f5f9}button:hover{border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.dark-mode button:hover{border-color:#60a5fa;box-shadow:0 4px 12px #0000004d}button:active{transform:translateY(0);box-shadow:0 2px 6px #0000001a}.dark-mode button:active{box-shadow:0 2px 6px #0006}button:focus,button:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:2px}.dark-mode button:focus,.dark-mode button:focus-visible{outline:2px solid rgba(96,165,250,.6)}.fade-in{animation:fadeIn .5s ease forwards}.slide-up{animation:slideUp .5s ease forwards}.scale-in{animation:scaleIn .3s ease forwards}.theme-switch{animation:themeSwitchAnimation .5s ease-in-out}@keyframes themeSwitchAnimation{0%{opacity:.5;transform:scale(.98)}50%{opacity:.8;transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.dark-mode ::-webkit-scrollbar-track{background:#1e293b}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px;transition:background .3s ease}.dark-mode ::-webkit-scrollbar-thumb{background:#475569}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.dark-mode ::-webkit-scrollbar-thumb:hover{background:#64748b}.page-enter{opacity:0;transform:translateY(10px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .3s}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@media (prefers-color-scheme: dark){html:not(.light-mode){color-scheme:dark;background-color:#0f172a}html:not(.light-mode) body{color:#f1f5f9}}::selection{background-color:#3b82f633;color:#1e293b}.dark-mode ::selection{background-color:#60a5fa4d;color:#f1f5f9}
