:root{--space-unit:clamp(.25rem,.5vw,.5rem);--space-2xs:calc(var(--space-unit)*.5);--space-xs:var(--space-unit);--space-sm:calc(var(--space-unit)*2);--space-md:calc(var(--space-unit)*4);--space-lg:calc(var(--space-unit)*6);--space-xl:calc(var(--space-unit)*8);--space-2xl:calc(var(--space-unit)*12);--space-3xl:calc(var(--space-unit)*16);--shadow-color:#0000001a;--shadow-sm:0 1px 2px var(--shadow-color);--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #0006;--transition-speed:.3s;--transition-base:all var(--transition-speed)cubic-bezier(.4,0,.2,1);--transition-bounce:all var(--transition-speed)cubic-bezier(.22,1,.36,1);--radius-unit:.25rem;--radius-sm:var(--radius-unit);--radius-md:calc(var(--radius-unit)*2);--radius-lg:calc(var(--radius-unit)*6);--radius-full:9999px;--header-height:max(56px,4vh);--footer-height:max(56px,4vh);--sidebar-width:280px;--min-touch-target:44px;--max-content-width:min(1200px,95vw);--max-reading-width:min(70ch,98%);--article-width:min(720px,98%);--content-width:1200px;--z-negative:-1;--z-elevate:1;--z-sticky:100;--z-header:200;--z-overlay:300;--z-modal:400;--z-popover:500;--z-tooltip:600;--article-padding-mobile:0;--article-padding-desktop:2rem;--card-padding-mobile:1rem;--card-padding-desktop:1.25rem;--mobile-radius:0;--desktop-radius:1rem;--breakpoint-xs:480px;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px}
:root{--font-sans:var(--geist-sans),system-ui,sans-serif;--font-serif:Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:var(--geist-mono),monospace;--font-size-xs:clamp(.825rem,.77rem + .275vw,.9625rem);--font-size-sm:clamp(.9625rem,.9075rem + .275vw,1.1rem);--font-size-base:clamp(1.1rem,1.045rem + .275vw,1.2375rem);--font-size-lg:clamp(1.2375rem,1.1825rem + .275vw,1.375rem);--font-size-xl:clamp(1.375rem,1.32rem + .275vw,1.65rem);--font-size-2xl:clamp(1.65rem,1.54rem + .55vw,2.0625rem);--font-size-3xl:clamp(2.0625rem,1.925rem + .6875vw,2.475rem);--font-size-4xl:clamp(2.475rem,2.31rem + .825vw,3.3rem);--font-size-5xl:clamp(3.3rem,3.025rem + 1.375vw,4.4rem);--font-size-hero-sm:clamp(2.475rem,2.2rem + 1.375vw,3.3rem);--font-size-hero-md:clamp(3.3rem,3.025rem + 1.375vw,4.4rem);--font-size-hero-lg:clamp(4.4rem,3.85rem + 2.75vw,6.6rem);--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:1.75;--line-height-article:1.8;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--content-width-xs:20rem;--content-width-sm:30rem;--content-width-md:45rem;--content-width-lg:60rem;--content-width-xl:72rem;--content-width-full:100%;--article-title-size:clamp(2.75rem,6.05vw,3.85rem);--article-description-size:clamp(1.2375rem,1.375vw,1.5125rem)}html{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17.6px;font-family:var(--font-sans);line-height:var(--line-height-normal);color:hsl(var(--foreground));background-color:hsl(var(--background))}body{font-size:var(--font-size-base);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal)}a{color:hsl(var(--primary));text-decoration:none;transition:none}a:hover{color:hsl(var(--primary)/.8);text-decoration:none}h1,h2,h3,h4,h5,h6{line-height:var(--line-height-tight);font-weight:var(--font-weight-semibold);color:hsl(var(--foreground));text-wrap:balance;margin-top:1.5em;margin-bottom:.25em}h1{font-size:var(--font-size-4xl);letter-spacing:var(--letter-spacing-tight);margin-top:0}h2{font-size:var(--font-size-3xl);letter-spacing:var(--letter-spacing-tight)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}p{margin:0 0 var(--space-md)0;font-size:var(--font-size-base);line-height:var(--line-height-relaxed);text-wrap:pretty;max-width:70ch;color:hsl(var(--foreground))}ul,ol{line-height:var(--line-height-relaxed);color:hsl(var(--foreground));margin-bottom:1.5rem;padding-left:1.5rem}li{color:hsl(var(--foreground));margin-bottom:.5rem}ul li::marker{color:hsl(var(--muted-foreground))}ol li::marker{color:hsl(var(--muted-foreground))}blockquote{border-left:4px solid hsl(var(--primary));color:hsl(var(--muted-foreground));margin:1.5rem 0;padding-left:1rem;font-style:italic}code{font-family:var(--font-mono)}pre{font-family:var(--font-mono);overflow-x:auto}pre code{font-family:inherit}strong,b,.font-bold{font-weight:var(--font-weight-bold);color:hsl(var(--foreground))}em,i{font-style:italic}
.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.text-5xl{font-size:var(--font-size-5xl)}.text-hero-sm{font-size:var(--font-size-hero-sm);line-height:1.1}.text-hero-md{font-size:var(--font-size-hero-md);line-height:1.1}.text-hero-lg{font-size:var(--font-size-hero-lg);line-height:1}.font-thin{font-weight:var(--font-weight-thin)}.font-extralight{font-weight:var(--font-weight-extralight)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-extrabold{font-weight:var(--font-weight-extrabold)}.font-black{font-weight:var(--font-weight-black)}.font-sans{font-family:var(--font-sans)}.font-serif{font-family:var(--font-serif)}.font-mono{font-family:var(--font-mono)}.text-lead{font-size:var(--font-size-lg);line-height:var(--line-height-normal);color:hsl(var(--muted-foreground));font-weight:var(--font-weight-normal)}.text-body{font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:hsl(var(--foreground))}.text-small{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:hsl(var(--muted-foreground))}.heading-hero{font-size:var(--font-size-hero-md);letter-spacing:var(--letter-spacing-tight);line-height:1.1;font-weight:var(--font-weight-bold);margin-bottom:1rem}.heading-section{font-size:var(--font-size-2xl);line-height:1.2;font-weight:var(--font-weight-bold);margin-top:2rem;margin-bottom:1rem}.heading-subsection{font-size:var(--font-size-xl);line-height:1.3;font-weight:var(--font-weight-semibold);margin-top:1.5rem;margin-bottom:.75rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-uppercase{text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.text-lowercase{text-transform:lowercase}.text-capitalize{text-transform:capitalize}.text-underline{text-decoration:underline}.text-no-underline{text-decoration:none}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.leading-none{line-height:var(--line-height-none)}.leading-tight{line-height:var(--line-height-tight)}.leading-snug{line-height:var(--line-height-snug)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.leading-loose{line-height:var(--line-height-loose)}.leading-article{line-height:var(--line-height-article)}.content-xs{max-width:var(--content-width-xs);width:100%}.content-sm{max-width:var(--content-width-sm);width:100%}.content-md{max-width:var(--content-width-md);width:100%}.content-lg{max-width:var(--content-width-lg);width:100%}.content-xl{max-width:var(--content-width-xl);width:100%}.content-full{max-width:var(--content-width-full);width:100%}
.prose{color:hsl(var(--foreground));width:100%;font-family:var(--font-sans);line-height:var(--line-height-article)}.prose p{margin:0 0 var(--space-md)0;font-size:var(--font-size-base);line-height:var(--line-height-relaxed);text-wrap:pretty;width:100%;color:hsl(var(--foreground))}.prose p:last-child{margin-bottom:0}.prose a{color:hsl(var(--muted-foreground));text-decoration:none;transition:color .2s}.prose a:hover{color:hsl(var(--foreground))}.prose h1,.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{margin:var(--space-lg)0 var(--space-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:hsl(var(--foreground));text-wrap:balance}.prose h1{font-size:var(--font-size-4xl);margin:var(--space-xl)0 var(--space-lg);font-weight:var(--font-weight-bold);letter-spacing:-.02em;line-height:1.1}.prose h2{font-size:var(--font-size-3xl);margin:var(--space-lg)0 var(--space-md);padding-bottom:var(--space-xs);border-bottom:1px solid hsl(var(--border));font-weight:var(--font-weight-bold)}.prose h3{font-size:var(--font-size-2xl);margin:var(--space-md)0 var(--space-sm);font-weight:var(--font-weight-bold)}.prose h4{font-size:var(--font-size-xl);margin:var(--space-md)0 var(--space-sm);font-weight:var(--font-weight-semibold)}.prose h5{font-size:var(--font-size-lg);margin:var(--space-sm)0;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.prose h6{font-size:var(--font-size-base);margin:var(--space-sm)0;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:hsl(var(--muted-foreground))}.prose h1:first-child,.prose h2:first-child,.prose h3:first-child,.prose h4:first-child,.prose h5:first-child,.prose h6:first-child{margin-top:0}.prose ul,.prose ol{margin:var(--space-md)0;padding-left:var(--space-lg)}.prose li{margin:var(--space-xs)0;padding-left:var(--space-xs)}.prose li>ul,.prose li>ol{margin:var(--space-xs)0}.prose blockquote{margin:var(--space-md)0;padding:var(--space-md)var(--space-lg);background-color:hsl(var(--accent));border-left:4px solid hsl(var(--primary));border-radius:0 var(--radius-sm)var(--radius-sm)0}.prose blockquote p{margin:0}.prose pre{margin:var(--space-md)0}.prose code{font-family:var(--font-mono)}.prose img{border-radius:.5rem;max-width:100%;height:auto;margin:2em auto;display:block}.prose figure{text-align:center;margin:2em auto}.prose figcaption{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));text-align:center;max-width:80%;margin-top:.75rem;margin-left:auto;margin-right:auto;font-style:italic}.prose-sm{font-size:.875rem}.prose-base{font-size:1rem}.prose-lg{font-size:1.125rem}.prose-xl{font-size:1.25rem}.prose strong,.prose b,.prose .font-bold{font-weight:var(--font-weight-bold);color:hsl(var(--foreground))}.prose-invert{color:var(--foreground)}.prose-invert a{color:hsl(var(--primary));text-decoration:none}.prose-invert a:hover{color:hsl(var(--primary)/.8);text-decoration:none}.prose-invert blockquote{background-color:hsl(var(--accent));border-color:hsl(var(--primary));color:hsl(var(--muted-foreground))}.prose-invert figcaption{color:var(--muted-foreground)}.prose-invert h1,.prose-invert h2,.prose-invert h3,.prose-invert h4,.prose-invert h5,.prose-invert h6{color:var(--foreground)}.prose-invert h2{border-bottom-color:hsl(var(--border))}.prose-invert .article-title{color:hsl(var(--foreground))}.prose-invert .article-description{color:hsl(var(--foreground));opacity:.8}.prose-invert .article-meta{color:hsl(var(--muted-foreground))}.prose h2,.prose h3,.prose h4,.prose h5,.prose h6{position:relative}.prose .heading-anchor{color:inherit;text-decoration:none;display:inline-block;position:relative}.prose .heading-anchor:hover{color:hsl(var(--primary))}.prose .heading-anchor:before{content:"#";font-size:.9em;font-weight:var(--font-weight-normal);opacity:0;color:hsl(var(--primary));margin-left:-1.5em;padding-right:.5em;transition:all .2s;position:absolute;top:0;left:-1.5rem}.prose h2:hover .heading-anchor:before,.prose h3:hover .heading-anchor:before,.prose h4:hover .heading-anchor:before,.prose h5:hover .heading-anchor:before,.prose h6:hover .heading-anchor:before{opacity:.7}@media (prefers-reduced-motion:reduce){.prose *{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}@media print{.prose{color:#000;max-width:none}.prose a{color:#000;word-wrap:break-word;text-decoration:underline}.prose img{page-break-inside:avoid;max-width:100%}.prose blockquote,.prose pre,.prose table{page-break-inside:avoid}.prose h2,.prose h3,.prose h4{page-break-after:avoid}}@media (max-width:640px){.prose{font-size:var(--font-size-base)}.prose h1{font-size:var(--font-size-3xl);margin:var(--space-lg)0 var(--space-md)}.prose h2{font-size:var(--font-size-2xl);margin:var(--space-md)0 var(--space-sm)}.prose h3{font-size:var(--font-size-xl);margin:var(--space-sm)0}.prose h4{font-size:var(--font-size-lg)}.prose h5{font-size:var(--font-size-base)}.prose h6{font-size:var(--font-size-sm)}.prose blockquote{padding:var(--space-sm)var(--space-md)}.prose pre{padding:var(--space-sm)}}
.article-title{font-size:var(--article-title-size);font-family:var(--font-mono);font-weight:var(--font-weight-light);letter-spacing:-.03em;color:hsl(var(--foreground));text-wrap:balance;margin:0 0 .5rem}.article-description{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin:var(--space-xs)0 var(--space-xs);font-family:var(--font-mono);font-weight:var(--font-weight-light);text-wrap:pretty;opacity:.9;width:100%}.article-meta{font-size:var(--font-size-sm);color:hsl(var(--muted-foreground));font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.stakeholder-list{margin:var(--space-md)0;background:hsl(var(--card));border-radius:var(--radius-lg,.75rem);border:1px solid hsl(var(--border));padding:0;list-style:none;overflow:hidden}.stakeholder-list>li{border-bottom:1px solid hsl(var(--border));padding:1.5rem}.stakeholder-list>li:last-child{border-bottom:none}.stakeholder-list h3{font-size:var(--font-size-lg);color:hsl(var(--foreground));font-weight:var(--font-weight-semibold);margin:0 0 .75rem}.stakeholder-list ul{margin:0;padding-left:1.25rem;list-style-type:disc}.stakeholder-list ul>li{color:hsl(var(--foreground));opacity:.9;margin:.5rem 0;padding-left:.25rem}.stakeholder-list ul>li:first-child{margin-top:0}.stakeholder-list ul>li:last-child{margin-bottom:0}@media (max-width:640px){.article-title{font-size:clamp(2rem,4vw,2.5rem)}.article-description{font-size:var(--font-size-base)}.prose .stakeholder-list,.stakeholder-list{border-left:none;border-right:none;border-radius:0}.stakeholder-list>li{padding:1.25rem}}

.transition-base{transition:var(--transition-base)}.hover-fade{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover-fade:hover{opacity:.8}.hover-scale{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover-scale:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y))rotate(var(--tw-rotate))skewX(var(--tw-skew-x))skewY(var(--tw-skew-y))scaleX(var(--tw-scale-x))scaleY(var(--tw-scale-y))}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;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}.scrollbar-hide{scrollbar-width:none;-ms-overflow-style:none}.scrollbar-hide::-webkit-scrollbar{display:none}
.docs-sidebar{border-right:1px solid hsl(var(--border)/.3);background-color:hsl(var(--background));flex-shrink:0;width:15rem;height:calc(100vh - 4rem);position:sticky;top:4rem;overflow-y:auto}.sidebar-header{z-index:10;background-color:inherit;padding:1rem 1.5rem;position:sticky;top:0}.sidebar-nav-toggle{text-transform:uppercase;letter-spacing:.05em;align-items:start;gap:.75rem;font-size:1.125rem;font-weight:500;display:flex}.sidebar-nav-toggle-vertical{text-transform:uppercase;letter-spacing:.05em;flex-direction:column;gap:.5rem;font-size:1.125rem;font-weight:500;display:flex}.sidebar-nav-button{cursor:pointer;background:0 0;border:none;padding:0;transition:color .15s}.sidebar-nav-button.active{color:hsl(var(--foreground))}.sidebar-nav-button.inactive{color:hsl(var(--muted-foreground))}.sidebar-nav-button.inactive:hover{color:hsl(var(--foreground))}.sidebar-nav-divider{color:hsl(var(--muted-foreground)/.5)}.sidebar-category{margin-bottom:1.5rem}.sidebar-category-button{text-align:left;width:100%;color:hsl(var(--muted-foreground));cursor:pointer;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.375rem;margin-bottom:.125rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;transition:all .15s;display:flex}.sidebar-category-button:hover{background:hsl(var(--accent));color:hsl(var(--foreground))}.sidebar-category-count{margin-left:.25rem}.sidebar-category-toggle{margin-left:.5rem;font-size:.75rem}.sidebar-category-tree{margin-bottom:1.5rem}.sidebar-category-header{justify-content:space-between;align-items:center;margin-bottom:.375rem;padding:.1875rem .75rem .1875rem .25rem;display:flex}.sidebar-category-name{color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.075em;opacity:.7;font-size:.6875rem;font-weight:600}.sidebar-tree-list{margin:0 0 .25rem;padding:0;list-style:none}.sidebar-tree-item{margin-bottom:.125rem;display:block}.sidebar-tree-item-button{color:hsl(var(--muted-foreground));cursor:pointer;text-align:left;opacity:.9;background:0 0;border:none;border-radius:.25rem;align-items:center;width:100%;padding:.3125rem .75rem .3125rem .25rem;font-size:.8125rem;transition:all .15s;display:flex;position:relative}.sidebar-tree-item-button:hover{color:hsl(var(--foreground));opacity:1}.sidebar-tree-item-button.active{color:hsl(var(--foreground));opacity:1;font-weight:500}.sidebar-tree-item-button.inactive{color:hsl(var(--muted-foreground))}.sidebar-item-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.sidebar-item{display:block}.sidebar-item-button{cursor:pointer;text-align:left;background:0 0;border:none;width:100%;transition:all .15s;display:block}.sidebar-item-button.active{color:hsl(var(--foreground))}.sidebar-item-button.inactive{color:hsl(var(--muted-foreground))}.sidebar-item-button.inactive:hover{color:hsl(var(--foreground))}.sidebar-item-button.simple{border-radius:.25rem;align-items:center;padding:.375rem .75rem .375rem 1rem;font-size:.8125rem;display:flex}.sidebar-item-button.simple.active{font-weight:500}.sidebar-item-bullet{display:none}.sidebar-item-text{flex:1;line-height:1.4}.sidebar-content{padding:1rem 1.5rem 1.5rem}.sidebar-section{margin-bottom:2rem}.sidebar-section-title{color:hsl(var(--muted-foreground));text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid hsl(var(--border)/.5);opacity:.9;margin-bottom:1.25rem;padding-bottom:.5rem;font-size:.8125rem;font-weight:400}@media (max-width:1023px){.docs-sidebar{display:none}.mobile-sidebar-item{border-radius:.5rem;padding:.75rem 1rem;transition:all .2s}.mobile-sidebar-item:active{background-color:hsl(var(--secondary));transform:scale(.98)}.mobile-sidebar-category{color:hsl(var(--muted-foreground));padding:.5rem 1rem;font-weight:500}}.sidebar-search{margin-bottom:1.5rem;padding:0 1.5rem}.sidebar-search-input{background-color:hsl(var(--background));width:100%;color:hsl(var(--foreground));border:1px solid hsl(var(--border)/.5);border-radius:.375rem;outline:none;padding:.5rem .75rem;font-size:.875rem;transition:border-color .15s}.sidebar-search-input:focus{border-color:hsl(var(--foreground))}.sidebar-search-input::placeholder{color:hsl(var(--muted-foreground)/.5)}.docs-sidebar::-webkit-scrollbar{width:4px}.docs-sidebar::-webkit-scrollbar-track{background:0 0}.docs-sidebar::-webkit-scrollbar-thumb{background:hsl(var(--border)/.3);border-radius:2px}.docs-sidebar::-webkit-scrollbar-thumb:hover{background:hsl(var(--border)/.5)}
@media (max-width:768px){button,a{min-width:44px;min-height:44px}button:active,a:active{opacity:.8}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}*{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}article *,.prose *{-webkit-touch-callout:text;-webkit-user-select:text;user-select:text}.mobile-scroll-container{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.mobile-card{touch-action:manipulation;transition:transform .2s}.mobile-card:active{transform:scale(.98)}.mobile-nav{background:hsl(var(--background));border-top:1px solid hsl(var(--border));z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem;position:fixed;bottom:0;left:0;right:0}.safe-area-padding{padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-optimized-text{font-size:16px;line-height:1.6}.prose-mobile{font-size:16px}.prose-mobile h1{font-size:1.75rem}.prose-mobile h2{font-size:1.5rem}.prose-mobile h3{font-size:1.25rem}.mobile-spacing{padding-left:1rem;padding-right:1rem}@media (min-width:640px){.mobile-spacing{padding-left:1.5rem;padding-right:1.5rem}}}@media (max-height:500px) and (orientation:landscape){.mobile-header{padding-top:.5rem;padding-bottom:.5rem}.mobile-content{padding-top:.5rem}}@media (min-width:768px) and (max-width:1023px){.tablet-grid{grid-template-columns:300px 1fr;gap:1rem;display:grid}.tablet-sidebar{height:calc(100vh - 4rem);position:sticky;top:4rem;overflow-y:auto}}@media (orientation:portrait){.orientation-transition{transition:all .3s}}@media (orientation:landscape){.orientation-transition{transition:all .3s}}@media (prefers-contrast:high){.mobile-card{border:2px solid}button:focus,a:focus{outline-offset:2px;outline:3px solid}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}
pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
.prose pre{background:hsl(var(--muted)/.3);border:1px solid hsl(var(--border));border-radius:8px;margin:2rem 0;padding:1.5rem;position:relative;overflow-x:auto}.prose-invert pre,.dark .prose pre{background:hsl(var(--card)/.5);border:1px solid hsl(var(--border))}.prose pre:before,.prose pre:after,.prose-invert pre:before,.prose-invert pre:after{content:none;display:none}.prose pre code{color:hsl(var(--foreground));background-color:#0000;border:none;padding:0;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.9rem;line-height:1.7;display:block}.prose-invert pre code,.dark .prose pre code{color:hsl(var(--foreground))}.prose pre[data-language]:before,.prose-invert pre[data-language]:before{display:none}.prose code:not(pre code){background-color:hsl(var(--muted)/.5);color:hsl(var(--foreground));border:1px solid hsl(var(--border));border-radius:4px;padding:.2em .4em;font-size:.875em;font-weight:500}.prose-invert code:not(pre code),.dark .prose code:not(pre code){background-color:hsl(var(--muted)/.3);color:hsl(var(--primary));border:1px solid hsl(var(--border));font-weight:500}.prose .hljs,.prose-invert .hljs,.dark .prose .hljs{color:hsl(var(--foreground));background:0 0}.prose .hljs-keyword,.prose .hljs-selector-tag,.prose .hljs-literal,.prose .hljs-section,.prose .hljs-link{color:#d73a49;font-weight:500}.prose-invert .hljs-keyword,.prose-invert .hljs-selector-tag,.prose-invert .hljs-literal,.prose-invert .hljs-section,.prose-invert .hljs-link,.dark .prose .hljs-keyword,.dark .prose .hljs-selector-tag,.dark .prose .hljs-literal,.dark .prose .hljs-section,.dark .prose .hljs-link{color:#ff7b72;font-weight:500}.prose .hljs-string,.prose .hljs-title,.prose .hljs-name,.prose .hljs-type,.prose .hljs-attribute,.prose .hljs-symbol,.prose .hljs-bullet,.prose .hljs-addition,.prose .hljs-variable,.prose .hljs-template-tag,.prose .hljs-template-variable{color:#032f62}.prose-invert .hljs-string,.prose-invert .hljs-title,.prose-invert .hljs-name,.prose-invert .hljs-type,.prose-invert .hljs-attribute,.prose-invert .hljs-symbol,.prose-invert .hljs-bullet,.prose-invert .hljs-addition,.prose-invert .hljs-variable,.prose-invert .hljs-template-tag,.prose-invert .hljs-template-variable,.dark .prose .hljs-string,.dark .prose .hljs-title,.dark .prose .hljs-name,.dark .prose .hljs-type,.dark .prose .hljs-attribute,.dark .prose .hljs-symbol,.dark .prose .hljs-bullet,.dark .prose .hljs-addition,.dark .prose .hljs-variable,.dark .prose .hljs-template-tag,.dark .prose .hljs-template-variable{color:#79c0ff}.prose .hljs-comment,.prose .hljs-quote,.prose .hljs-deletion,.prose .hljs-meta,.prose-invert .hljs-comment,.prose-invert .hljs-quote,.prose-invert .hljs-deletion,.prose-invert .hljs-meta,.dark .prose .hljs-comment,.dark .prose .hljs-quote,.dark .prose .hljs-deletion,.dark .prose .hljs-meta{color:hsl(var(--muted-foreground))}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-title,.hljs-section,.hljs-doctag,.hljs-type,.hljs-name,.hljs-strong{font-weight:600}.hljs-number,.hljs-regexp,.hljs-literal,.hljs-bullet,.hljs-link,.hljs-deletion,.hljs-formula{color:#79c0ff}.hljs-title.class_,.hljs-class .hljs-title{color:#f0883e}.hljs-title.function_,.hljs-function .hljs-title,.hljs-function{color:#d2a8ff}.hljs-tag{color:#7ee787}.hljs-attr,.hljs-attribute,.hljs-builtin-name{color:#79c0ff}.language-bash .hljs-built_in,.language-sh .hljs-built_in,.language-shell .hljs-built_in{color:#ffa657;font-weight:500}.language-bash .hljs-variable,.language-sh .hljs-variable,.language-shell .hljs-variable{color:#ff7b72}.language-bash,.language-sh,.language-shell,.language-console,.language-terminal{color:#f0f6fc}.language-bash .hljs-meta,.language-sh .hljs-meta,.language-shell .hljs-meta{color:#7ee787;font-weight:700}.language-bash .hljs-literal,.language-sh .hljs-literal,.language-shell .hljs-literal,.language-bash .hljs-string,.language-sh .hljs-string,.language-shell .hljs-string{color:#a5d6ff}.prose pre:hover,.prose-invert pre:hover{border-color:hsl(var(--primary)/.5);transition:all .2s}.hljs-ln-numbers{color:hsl(var(--muted-foreground));border-right:1px solid hsl(var(--border));-webkit-user-select:none;user-select:none;margin-right:1rem;padding-right:1rem}.prose pre::-webkit-scrollbar{width:8px;height:8px}.prose-invert pre::-webkit-scrollbar{width:8px;height:8px}.prose pre::-webkit-scrollbar-track{background:hsl(var(--muted));border-radius:4px}.prose-invert pre::-webkit-scrollbar-track{background:hsl(var(--muted));border-radius:4px}.prose pre::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:4px}.prose-invert pre::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:4px}.prose pre::-webkit-scrollbar-thumb:hover{background:hsl(var(--primary)/.5)}.prose-invert pre::-webkit-scrollbar-thumb:hover{background:hsl(var(--primary)/.5)}.prose pre>:not(code),.prose-invert pre>:not(code){display:none}.prose pre[class*=language-]:before,.prose pre[class*=language-]:after,.prose-invert pre[class*=language-]:before,.prose-invert pre[class*=language-]:after{content:none;display:none}.code-block-wrapper{position:relative}.copy-code-button{background:hsl(var(--card));border:1px solid hsl(var(--border));color:hsl(var(--foreground));cursor:pointer;opacity:0;border-radius:4px;padding:4px 8px;font-size:12px;transition:opacity .2s;position:absolute;top:8px;right:8px}.code-block-wrapper:hover .copy-code-button{opacity:1}.copy-code-button:hover{background:hsl(var(--muted));color:hsl(var(--foreground))}
.table-wrapper{border:2px solid hsl(var(--border));background:hsl(var(--card));width:100%;box-shadow:0 1px 3px 0 hsl(var(--foreground)/.1),0 1px 2px 0 hsl(var(--foreground)/.06);border-radius:.75rem;margin:2rem 0;overflow-x:auto}.dark .table-wrapper{background:hsl(var(--card));border-color:hsl(var(--border));box-shadow:0 1px 3px 0 hsl(var(--foreground)/.1),0 1px 2px 0 hsl(var(--foreground)/.05)}.prose.dark\:prose-invert .table-wrapper table,.prose .table-wrapper table,.prose table,.table-wrapper table{border-collapse:separate;border-spacing:0;background:0 0;width:100%;margin:0;font-size:.95rem}.prose thead,.table-wrapper thead,.dark .prose thead,.dark .table-wrapper thead{background:hsl(var(--muted)/.3)}.prose th,.table-wrapper th{text-align:left;border-bottom:2px solid hsl(var(--border));border-right:1px solid hsl(var(--border)/.5);color:hsl(var(--foreground));background:hsl(var(--muted)/.3);white-space:nowrap;padding:.75rem 1rem;font-weight:600}.prose th:last-child,.table-wrapper th:last-child{border-right:none}.dark .prose th,.dark .table-wrapper th{background:hsl(var(--muted)/.3);border-bottom-color:hsl(var(--border));border-right-color:hsl(var(--border)/.5);color:hsl(var(--foreground))}.prose thead tr:first-child th:first-child,.table-wrapper thead tr:first-child th:first-child{border-top-left-radius:.5rem}.prose thead tr:first-child th:last-child,.table-wrapper thead tr:first-child th:last-child{border-top-right-radius:.5rem}.prose tbody,.table-wrapper tbody{background:0 0}.prose td,.table-wrapper td{border-bottom:1px solid hsl(var(--border));border-right:1px solid hsl(var(--border)/.3);color:hsl(var(--foreground));vertical-align:top;background:0 0;padding:.75rem 1rem}.prose td:last-child,.table-wrapper td:last-child{border-right:none}.dark .prose td,.dark .table-wrapper td{border-bottom-color:hsl(var(--border));border-right-color:hsl(var(--border)/.3);color:hsl(var(--foreground))}.prose tbody tr:nth-child(2n),.table-wrapper tbody tr:nth-child(2n),.dark .prose tbody tr:nth-child(2n),.dark .table-wrapper tbody tr:nth-child(2n){background:hsl(var(--muted)/.15)}.prose tbody tr:hover,.table-wrapper tbody tr:hover{background:hsl(var(--muted)/.35);transition:background .2s}.dark .prose tbody tr:hover,.dark .table-wrapper tbody tr:hover{background:hsl(var(--muted)/.25)}.prose tbody tr:last-child td,.table-wrapper tbody tr:last-child td{border-bottom:none}.prose th[align=center],.prose td[align=center],.table-wrapper th[align=center],.table-wrapper td[align=center]{text-align:center}.prose th[align=right],.prose td[align=right],.table-wrapper th[align=right],.table-wrapper td[align=right]{text-align:right}.prose td ul,.prose td ol,.table-wrapper td ul,.table-wrapper td ol{margin:.25rem 0;padding-left:1.25rem;list-style-position:outside}.prose td ul li,.prose td ol li,.table-wrapper td ul li,.table-wrapper td ol li{color:hsl(var(--foreground));margin:.25rem 0;padding-left:.25rem}.dark .prose td ul li,.dark .prose td ol li,.dark .table-wrapper td ul li,.dark .table-wrapper td ol li{color:hsl(var(--foreground))}.prose td code,.table-wrapper td code{background:hsl(var(--muted)/.5);border:1px solid hsl(var(--border)/.5);color:hsl(var(--primary));border-radius:.25rem;padding:.125rem .25rem;font-size:.875em}.dark .prose td code,.dark .table-wrapper td code{background:hsl(var(--muted)/.3);border-color:hsl(var(--border)/.3);color:hsl(var(--primary))}.prose td a,.table-wrapper td a{color:hsl(var(--primary));font-weight:500;text-decoration:none}.prose td a:hover,.table-wrapper td a:hover{color:hsl(var(--primary)/.8);text-decoration:underline}.dark .prose td a,.dark .table-wrapper td a{color:hsl(var(--primary))}.dark .prose td a:hover,.dark .table-wrapper td a:hover{color:hsl(var(--primary)/.8)}.prose td strong,.prose th strong,.table-wrapper td strong,.table-wrapper th strong{color:hsl(var(--foreground));font-weight:600}@media (max-width:640px){.prose .table-wrapper,.table-wrapper{border-left:none;border-right:none;border-radius:0;width:calc(100% + 2rem);margin-left:-1rem;margin-right:-1rem}.prose table,.table-wrapper table{font-size:.875rem}.prose th,.prose td,.table-wrapper th,.table-wrapper td{padding:.625rem .75rem}.prose .table-wrapper,.table-wrapper{-webkit-overflow-scrolling:touch}.prose .table-wrapper:after,.table-wrapper:after{content:"";background:linear-gradient(to right,transparent,hsl(var(--background)/.5));pointer-events:none;width:30px;position:absolute;top:0;bottom:0;right:0}}@media print{.prose table,.table-wrapper table{page-break-inside:avoid;border:1px solid #000}.prose th,.table-wrapper th{color:#000;background:#f0f0f0;border:1px solid #000}.prose td,.table-wrapper td{color:#000;background:#fff;border:1px solid #000}}.table-compact th,.table-compact td{padding:.5rem .75rem}.table-loose th,.table-loose td{padding:1rem 1.25rem}.table-numeric td{text-align:right;font-variant-numeric:tabular-nums}.table-wrapper .highlight,.prose table .highlight{background:hsl(var(--accent)/.1);font-weight:500}.dark .table-wrapper .highlight,.dark .prose table .highlight{background:hsl(var(--accent)/.15)}.prose table caption,.table-wrapper table caption{caption-side:bottom;color:hsl(var(--muted-foreground));margin-top:.75rem;font-size:.875rem;font-style:italic}.prose table *,.table-wrapper table *{transition:color .2s,background-color .2s,border-color .2s}
