@layer base{body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}body{font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);background-color:var(--cream-100);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:var(--leading-tight);margin-top:0;margin-bottom:var(--space-4)}h1{font-size:clamp(2.25rem,5vw,var(--text-5xl));font-weight:var(--font-bold);letter-spacing:var(--tracking-tight)}h2,h3{font-size:clamp(1.75rem,4vw,var(--text-4xl));font-weight:var(--font-semibold)}h3{font-size:clamp(1.5rem,3vw,var(--text-3xl))}h4,h5,h6{font-size:var(--text-2xl);font-weight:var(--font-medium)}h5,h6{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{margin-block:0 1em}a{color:var(--purple-700);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.15em;transition:var(--transition-fast)}a:hover{color:var(--purple-700-hover);text-decoration-thickness:2px}a:focus-visible{color:var(--purple-700-focus-ring)}:focus-visible{outline:3px solid var(--purple-500);outline-offset:2px}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}label{display:inline-block}fieldset{margin:0;border:0}fieldset,legend{padding:0}ol,ul{padding-inline-start:var(--space-6);margin-block:0 1em}li{margin-block-end:var(--space-1)}table{width:100%;border-collapse:collapse}td,th{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--border-light)}legend,th{font-weight:var(--font-semibold)}th{color:var(--text-primary)}blockquote,figcaption{color:var(--text-secondary)}blockquote{margin-inline:0;margin-block:0 1em;padding-inline-start:var(--space-4);border-inline-start:4px solid var(--purple-200)}figure{margin:0}figcaption{font-size:var(--text-sm)}img{height:auto}code,kbd,pre,samp{font-family:var(--font-mono);font-size:var(--text-sm)}pre{padding:var(--space-4);overflow-x:auto;background-color:var(--neutral-100);border-radius:var(--radius-sm)}hr{margin-block:var(--space-6);border:0;border-block-start:1px solid var(--border-light)}::selection{color:var(--text-on-purple);background-color:var(--purple-500)}@media (prefers-reduced-motion:reduce){body{text-rendering:auto}}@media (max-width:768px){body{font-size:var(--text-base-tablet)}}@media (max-width:480px){body{font-size:var(--text-base-mobile)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}}@media print{body{font-size:12pt;line-height:1.4;color:#000;background:#fff}}}