:root{--background:#ffffff;--foreground:#171717;--background-secondary:#f9fafb;--border-color:#e5e7eb;--text-muted:#6b7280;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--breakpoint-xxl:1400px}@media(prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed;--background-secondary:#1f2937;--border-color:#374151;--text-muted:#9ca3af}}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{font-size:16px;text-size-adjust:100%}body{min-height:100vh;color:var(--foreground);background:var(--background);font-size:var(--font-size-base);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}@media(min-width:768px){html{font-size:18px}}@media(min-width:1200px){html{font-size:20px}}a{color:inherit;text-decoration:none;transition:color .15s ease-in-out}canvas,img,picture,svg,video{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer;border:none;background:none;padding:0}.container{width:100%;max-width:1200px;min-width:320px;margin-left:auto;margin-right:auto;padding-left:16px;padding-right:16px}@media screen and (min-width:576px){.container{padding-left:24px;padding-right:24px}}@media screen and (min-width:768px){.container{padding-left:32px;padding-right:32px}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-color-scheme:dark){html{color-scheme:dark}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}