*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-heavy);line-height:var(--line-height-tight);color:var(--color-primary)}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{margin-bottom:var(--space-md);line-height:var(--line-height-relaxed)}a{color:var(--color-secondary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}img{max-width:100%;height:auto;display:block}ul,ol{padding-left:var(--space-xl);margin-bottom:var(--space-md)}li{margin-bottom:var(--space-xs)}blockquote{border-left:4px solid var(--color-secondary);padding:var(--space-md) var(--space-lg);margin:var(--space-xl) 0;background-color:var(--color-bg-secondary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic}code{background-color:var(--color-bg-secondary);padding:2px 6px;border-radius:4px;font-size:var(--font-size-sm)}pre{background-color:#121212;color:#f7f7f7;padding:var(--space-lg);border-radius:var(--radius-sm);overflow-x:auto;margin-bottom:var(--space-xl)}pre code{background:0 0;padding:0;color:inherit}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-2xl) 0}