*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth;font-size:100%}
body{min-height:100vh;font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);background:var(--color-bg);color:var(--color-text);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
a{text-decoration:none;color:var(--color-primary);transition:color var(--transition-fast)}
a:hover,a:focus-visible{color:var(--color-primary-hover)}
a:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:var(--radius-sm)}
ul,ol{list-style:none}
h1,h2,h3,h4,h5,h6{color:var(--color-text)}
p{margin-bottom:var(--space-md);color:var(--color-text-muted)}
p:last-child{margin-bottom:0}
::selection{background:var(--color-selection);color:var(--color-text)}
::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--color-bg)}
::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full);border:3px solid var(--color-bg)}
*{scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-bg)}
