:root{--font-display:var(--font-inter),"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-body:var(--font-inter),"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-mono:var(--font-jetbrains-mono),"JetBrains Mono","Courier New",Courier,monospace;--text-display-xl:clamp(3rem,2rem + 5vw,4.5rem);--text-display-l:clamp(2.5rem,1.75rem + 3.75vw,3.5rem);--text-display:clamp(2.25rem,1.5rem + 3vw,3rem);--text-h1:clamp(2rem,1.5rem + 2.5vw,2.5rem);--text-h2:clamp(1.75rem,1.35rem + 2vw,2rem);--text-h3:clamp(1.375rem,1.15rem + 1.125vw,1.5rem);--text-h4:clamp(1.125rem,1rem + .625vw,1.25rem);--text-body-lg:clamp(1.0625rem,1rem + .3125vw,1.125rem);--text-body:1rem;--text-body-sm:.875rem;--text-caption:.75rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-none:1;--leading-tight:1.1;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.6;--leading-loose:1.75;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--text-primary:var(--color-text-primary,#000000e6);--text-secondary:var(--color-text-secondary,#000000a6);--text-tertiary:var(--color-text-tertiary,#00000073);--text-inverse:var(--color-text-inverse,#fffffff2);--max-width-prose:65ch;--max-width-narrow:45ch;--max-width-wide:85ch}@media (prefers-color-scheme:dark){:root{--text-primary:var(--color-text-primary,#fffffff2);--text-secondary:var(--color-text-secondary,#ffffffb3);--text-tertiary:var(--color-text-tertiary,#ffffff73);--text-inverse:var(--color-text-inverse,#000000e6)}}.dark{--text-primary:var(--color-text-primary,#fffffff2);--text-secondary:var(--color-text-secondary,#ffffffb3);--text-tertiary:var(--color-text-tertiary,#ffffff73);--text-inverse:var(--color-text-inverse,#000000e6)}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:16px}body{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--text-primary);letter-spacing:var(--tracking-normal)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-semibold);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--text-primary);margin-top:0;margin-bottom:.5em}h1{font-size:var(--text-h1);line-height:var(--leading-tight)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3);line-height:var(--leading-normal)}h4{font-size:var(--text-h4);line-height:var(--leading-normal)}h5{font-size:var(--text-body-lg);line-height:var(--leading-normal)}h6{font-size:var(--text-body);line-height:var(--leading-normal)}p{max-width:var(--max-width-prose);margin-top:0;margin-bottom:1em}a{color:#06c;text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s}a:hover{color:#0052a3}a:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #06c}ul,ol{max-width:var(--max-width-prose);margin-top:0;margin-bottom:1em;padding-left:1.5em}li{margin-bottom:.5em}li:last-child{margin-bottom:0}code{font-family:var(--font-mono);letter-spacing:0;background:#0000000d;border-radius:4px;padding:2px 6px;font-size:.9em}pre{font-family:var(--font-mono);font-size:var(--text-body-sm);line-height:var(--leading-relaxed);background:#0000000d;border-radius:8px;margin-bottom:1em;padding:16px 20px;overflow-x:auto}pre code{background:0 0;border-radius:0;padding:0}strong,b{font-weight:var(--font-semibold)}em,i{font-style:italic}small{font-size:var(--text-body-sm)}blockquote{color:var(--text-secondary);border-left:4px solid #0000001a;margin:1.5em 0;padding-left:1.5em;font-style:italic}hr{border:none;border-top:1px solid #0000001a;margin:2em 0}::selection{color:inherit;background:#06c3}.text-display-xl{font-size:var(--text-display-xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.text-display-l{font-size:var(--text-display-l);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.text-display{font-size:var(--text-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.text-h1{font-size:var(--text-h1);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.text-h2{font-size:var(--text-h2);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight)}.text-h3{font-size:var(--text-h3);line-height:var(--leading-normal)}.text-h4{font-size:var(--text-h4);line-height:var(--leading-normal)}.text-body-lg{font-size:var(--text-body-lg)}.text-body{font-size:var(--text-body)}.text-body-sm{font-size:var(--text-body-sm)}.text-caption{font-size:var(--text-caption)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.leading-none{line-height:var(--leading-none)}.leading-tight{line-height:var(--leading-tight)}.leading-snug{line-height:var(--leading-snug)}.leading-normal{line-height:var(--leading-normal)}.leading-relaxed{line-height:var(--leading-relaxed)}.leading-loose{line-height:var(--leading-loose)}.tracking-tighter{letter-spacing:var(--tracking-tighter)}.tracking-tight{letter-spacing:var(--tracking-tight)}.tracking-normal{letter-spacing:var(--tracking-normal)}.tracking-wide{letter-spacing:var(--tracking-wide)}.tracking-wider{letter-spacing:var(--tracking-wider)}.tracking-widest{letter-spacing:var(--tracking-widest)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-inverse{color:var(--text-inverse)}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}.font-mono{font-family:var(--font-mono)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase;letter-spacing:var(--tracking-wider)}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.max-w-prose{max-width:var(--max-width-prose)}.max-w-narrow{max-width:var(--max-width-narrow)}.max-w-wide{max-width:var(--max-width-wide)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.break-words{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word}.no-underline{text-decoration:none}.tabular-nums{font-variant-numeric:tabular-nums}.btn{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);line-height:1.25;text-decoration:none}.btn-sm{font-size:var(--text-body-sm)}.btn-lg{font-size:var(--text-body-lg)}.form-label{font-size:var(--text-body-sm);font-weight:var(--font-medium);letter-spacing:var(--tracking-normal);color:var(--text-primary);margin-bottom:8px;line-height:1.4;display:block}.form-input{font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--font-normal);letter-spacing:var(--tracking-normal);line-height:1.5}.form-help{font-size:var(--text-body-sm);font-weight:var(--font-normal);color:var(--text-secondary);margin-top:8px;line-height:1.5}.form-error{font-size:var(--text-body-sm);font-weight:var(--font-normal);color:#dc2626;margin-top:8px;line-height:1.5}.nav-link{font-size:var(--text-body);font-weight:var(--font-medium);letter-spacing:var(--tracking-normal);line-height:1.25;text-decoration:none}.nav-link-mobile{font-size:var(--text-body-lg);font-weight:var(--font-medium);line-height:1.4}.card-title{font-size:var(--text-h4);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:12px;line-height:1.3}.card-description{font-size:var(--text-body);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--text-secondary);margin-bottom:16px}.card-meta{font-size:var(--text-body-sm);font-weight:var(--font-normal);color:var(--text-tertiary);line-height:1.4}.table-header{font-size:var(--text-body-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-secondary);line-height:1.4}.table-cell{font-size:var(--text-body-sm);font-weight:var(--font-normal);font-variant-numeric:tabular-nums;line-height:1.5}.badge{font-size:var(--text-caption);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;line-height:1}.tooltip{font-size:13px;font-weight:var(--font-normal);max-width:250px;line-height:1.4}.breadcrumb{font-size:var(--text-body-sm);font-weight:var(--font-normal);color:var(--text-secondary);line-height:1.4}@media (max-width:768px){body{line-height:1.6}.btn{min-height:44px}p,ul,ol{max-width:100%}}
