.co-page{background:var(--background);--co-ink-bar:color-mix(in oklch, var(--foreground) 16%, transparent);--co-ink-byte:color-mix(in oklch, var(--foreground) 22%, transparent);--co-ink-fill:color-mix(in oklch, var(--foreground) 14%, transparent);--co-node-fill:hsl(var(--expanso-violet-50));--co-node-line:hsl(var(--expanso-violet-300));--co-node-ring:hsl(var(--expanso-violet-600) / .06);--co-node-text:hsl(var(--expanso-violet-800));--co-chip-line:hsl(var(--expanso-violet-200));--co-chip-icon:hsl(var(--expanso-violet-600));--co-link:hsl(var(--expanso-violet-300));--co-target-fill:hsl(var(--expanso-violet-50));--co-accent-text:hsl(var(--expanso-violet-700));--co-shadow-xs:0 1px 0 0 #0000000a}.dark .co-page{--co-ink-bar:color-mix(in oklch, var(--foreground) 20%, transparent);--co-ink-byte:color-mix(in oklch, var(--foreground) 30%, transparent);--co-node-fill:color-mix(in oklch, hsl(var(--expanso-violet-500)) 10%, transparent);--co-node-line:color-mix(in oklch, hsl(var(--expanso-violet-400)) 45%, transparent);--co-node-ring:hsl(var(--expanso-violet-600) / .08);--co-node-text:hsl(var(--expanso-violet-200));--co-chip-line:color-mix(in oklch, hsl(var(--expanso-violet-400)) 30%, transparent);--co-chip-icon:hsl(var(--expanso-violet-400));--co-link:color-mix(in oklch, hsl(var(--expanso-violet-400)) 50%, transparent);--co-target-fill:hsl(var(--expanso-violet-600) / .2);--co-accent-text:hsl(var(--expanso-violet-400))}.co-page .hp-container{padding-top:72px;padding-bottom:var(--space-16)}.co-sec{margin-bottom:var(--space-16)}.co-sec:last-child{margin-bottom:0}.co-h1{margin:0 0 var(--space-4);text-wrap:balance}.co-h2,.co-h2-cta{text-wrap:balance}.co-h2{margin:0 0 28px}.co-h2-cta{margin:0 0 var(--space-3)}.co-keep{display:inline-block}.co-eyebrow{font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);color:var(--co-accent-text);font-weight:600}.co-sec-eyebrow{margin-bottom:var(--space-2)}.co-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--hp-shadow-sm)}.co-hero{background-color:var(--background);background-image:linear-gradient(to bottom, transparent 30%, var(--background) 92%), radial-gradient(var(--co-dot-violet) 1px, transparent 1.5px), radial-gradient(var(--co-dot-border) 1px, transparent 1.5px);--co-dot-violet:hsl(var(--expanso-violet-200));--co-dot-border:var(--border);padding:160px var(--site-gutter) 56px;text-align:center;background-position:0 0,0 0,20px 20px;background-size:auto,40px 40px,40px 40px}.dark .co-hero{--co-dot-violet:hsl(var(--expanso-violet-400) / .25)}.co-hero-copy{max-width:52rem;margin:0 auto}.co-hero-sub{font-size:var(--type-body-size);line-height:var(--type-body-leading);letter-spacing:var(--type-body-tracking);color:var(--muted-foreground);text-wrap:pretty;max-width:41rem;margin:0 auto 30px}.co-badge{align-items:center;gap:var(--space-2);background:color-mix(in srgb, var(--card) 90%, transparent);border:1px solid hsl(var(--expanso-violet-200));font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);color:hsl(var(--expanso-violet-800));white-space:nowrap;border-radius:999px;max-width:100%;margin:0 0 20px;padding:6px 14px;font-weight:600;display:inline-flex}.co-badge img{flex:none;display:block}.dark .co-badge{background:color-mix(in srgb, hsl(var(--expanso-violet-500)) 14%, var(--background));border-color:color-mix(in srgb, hsl(var(--expanso-violet-500)) 32%, var(--background));color:hsl(var(--expanso-violet-300))}.co-flow{z-index:1;text-align:left;grid-template-columns:200px minmax(40px,140px) 300px minmax(60px,160px) 200px;justify-content:center;align-items:center;max-width:1000px;margin:60px auto 0;display:grid;position:relative}.co-source{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--hp-shadow-sm);padding:14px var(--space-4) var(--space-4);flex-direction:column;gap:7px;display:flex}.co-source-title{font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);margin-bottom:5px;font-weight:700}.co-rec{gap:6px;display:flex}.co-rec-key,.co-rec-value{border-radius:2px;height:8px}.co-rec-key{width:var(--co-key);background:var(--muted);border:1px solid var(--border)}.co-rec-value{width:var(--co-value);background:var(--co-ink-bar)}.co-bytes{justify-content:center;gap:10px;display:flex;position:relative;container-type:inline-size}.co-bytes:before{content:"";border-top:1px solid var(--border);position:absolute;top:calc(50% - .5px);left:0;right:0}.co-byte{background:var(--co-ink-byte);border-radius:2px;width:8px;height:8px;position:relative}@container (width<=127px){.co-byte:nth-child(n+6){display:none}}@container (width<=91px){.co-byte:nth-child(n+4){display:none}}.co-node{border:1px solid var(--co-node-line);border-radius:var(--radius-lg);background:var(--co-node-fill);box-shadow:0 0 0 6px var(--co-node-ring);padding:14px var(--space-4) var(--space-4);flex-direction:column;gap:6px;display:flex}.co-node-head{align-items:center;gap:var(--space-2);font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);color:var(--co-node-text);margin-bottom:6px;font-weight:700;display:flex}.co-node-head img{flex:none;display:block}.co-chip{border:1px solid var(--co-chip-line);border-radius:var(--radius-md);background:var(--card);font-size:var(--type-caption-size);line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking);align-items:center;gap:10px;padding:6px 10px;font-weight:600;display:flex}.co-chip svg{color:var(--co-chip-icon);flex:none}.co-fan{fill:none;width:100%;height:270px;stroke:var(--co-link);stroke-width:1.25px;display:block}.co-fan-stacked{background:var(--co-link);width:1px;height:24px;display:none}.co-pills{gap:var(--space-2);flex-direction:column;display:flex}.co-pill{height:30px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);box-shadow:var(--co-shadow-xs);font-size:var(--type-caption-size);line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking);align-items:center;font-weight:600;display:flex}.co-btns{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.co-btn-primary,.co-btn-secondary{border-radius:var(--radius-lg);height:44px;font-family:inherit;font-weight:600;font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);white-space:nowrap;box-shadow:var(--hp-shadow-sm);transition:background var(--duration-fast), border-color var(--duration-fast);justify-content:center;align-items:center;padding:0 22px;text-decoration:none;display:inline-flex}.co-btn-primary{background:var(--primary);color:var(--primary-foreground);border:none}.co-btn-primary:hover{background:hsl(var(--expanso-violet-700))}.co-btn-secondary{background:var(--card);color:var(--foreground);border:1px solid var(--border)}.co-btn-secondary:hover{background:var(--accent);border-color:var(--input)}.co-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none;display:grid}.co-step{overflow:hidden}.co-diagram{height:124px;padding:14px var(--space-6);background:var(--secondary);border-bottom:1px solid var(--border);justify-content:center;align-items:center;display:flex}.co-diagram-svg{max-width:100%;display:block}.co-d-axis{stroke:var(--border)}.co-d-ink{fill:var(--co-ink-fill)}.co-d-baseline{stroke:hsl(var(--expanso-violet-500));stroke-width:1.5px;stroke-dasharray:5 4}.co-d-lane{stroke:var(--border);stroke-width:1.5px}.co-d-span{stroke:hsl(var(--expanso-violet-500));stroke-width:3px;stroke-linecap:round}.co-d-span-ends{stroke:hsl(var(--expanso-violet-500));stroke-width:1.5px;stroke-linecap:round}.co-d-node{fill:var(--card);stroke:var(--border)}.co-d-node-on{fill:var(--co-target-fill);stroke:hsl(var(--expanso-violet-400))}.co-d-violet{fill:hsl(var(--expanso-violet-500))}.co-d-tag-tick{stroke:hsl(var(--expanso-violet-400))}.co-d-outline{stroke:var(--co-link);stroke-dasharray:4 3}.co-step-body{padding:22px var(--space-6) 26px}.co-step-num{margin-bottom:var(--space-2);font-family:var(--font-mono);color:var(--co-accent-text);font-weight:600;font-size:var(--type-caption-size);line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking)}.co-step-title{margin:0 0 6px}.co-step-desc{font-size:var(--type-body-size);letter-spacing:var(--type-body-tracking);color:var(--muted-foreground);text-wrap:pretty;margin:0;line-height:1.55}.co-guides{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;display:grid}.co-guide{padding:22px var(--space-6);color:var(--foreground);transition:border-color var(--duration-fast);flex-direction:column;grid-column:span 3;text-decoration:none;display:flex}.co-guide:nth-child(n+5){grid-column:span 4}.co-guide:hover{border-color:var(--co-link)}.co-guide-title{margin:0 0 var(--space-2)}.co-guide-desc{font-size:var(--type-body-sm-size);letter-spacing:var(--type-body-sm-tracking);color:var(--muted-foreground);text-wrap:pretty;flex:1;margin:0;line-height:1.55}.co-guide-link{font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);color:var(--co-accent-text);margin-top:18px;font-weight:600}.co-tile{border-radius:var(--radius-lg);background:var(--secondary);text-align:center;position:relative;overflow:hidden}.co-cta{border:1px solid var(--border);padding:56px var(--space-8)}.co-tile-content{z-index:1;max-width:42rem;margin:0 auto;position:relative}.co-grid-bg{pointer-events:none;opacity:.6;background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);background-size:30px 30px;height:200%;position:absolute;top:-30%;left:0;right:0;transform:skewY(8deg);-webkit-mask-image:radial-gradient(60vw 26vh at 50% 40%,#000,#0000);mask-image:radial-gradient(60vw 26vh at 50% 40%,#000,#0000)}.co-cta-body{font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);color:var(--muted-foreground);text-wrap:balance;margin:0 0 26px}@media (width<=900px){.co-hero{padding-bottom:44px}.co-flow{flex-direction:column;align-items:center;max-width:520px;display:flex}.co-source{width:100%;padding:var(--space-3) 14px 14px}.co-source-title{margin-bottom:3px}.co-rec:nth-child(5){display:none}.co-rec-value{width:var(--co-value-stacked)}.co-bytes{flex-direction:column;gap:2px;width:8px;height:40px}.co-bytes:before{border-top:none;border-left:1px solid var(--border);inset:0 auto 0 calc(50% - .5px)}.co-node{width:100%;padding:var(--space-3) 14px 14px;box-shadow:0 0 0 5px var(--co-node-ring)}.co-node-head{margin-bottom:var(--space-1)}.co-chip{padding:7px 10px}.co-fan{display:none}.co-fan-stacked{display:block}.co-pills{border-top:1px solid var(--co-link);flex-flow:wrap;justify-content:center;width:100%;padding-top:14px}.co-guides{grid-template-columns:repeat(2,minmax(0,1fr))}.co-guide,.co-guide:nth-child(n+5){grid-column:auto}.co-guide:last-child{grid-column:span 2}.co-sec{margin-bottom:var(--space-12)}.co-cta{padding:44px var(--space-6)}}@media (width<=620px){.co-page .hp-container{padding-top:0;padding-bottom:var(--space-8)}.co-hero{padding-top:112px;padding-bottom:36px}.co-flow{margin-top:40px}.co-h2{margin-bottom:20px}.co-steps{gap:var(--space-3);grid-template-columns:minmax(0,1fr)}.co-diagram{height:auto;padding:14px 18px}.co-diagram-svg{width:100%;height:auto}.co-step-body{padding:var(--space-4) 18px 20px}.co-step-num{margin-bottom:6px}.co-guides{grid-template-columns:minmax(0,1fr);gap:10px}.co-guide:last-child{grid-column:auto}.co-guide{align-items:baseline;column-gap:var(--space-3);padding:var(--space-4) 18px;grid-template-columns:minmax(0,1fr) auto;display:grid}.co-guide-title{grid-area:1/1}.co-guide-link{grid-area:1/2;margin-top:0}.co-guide-desc{grid-area:2/1/auto/-1}.co-cta{padding:40px 20px}.co-grid-bg{-webkit-mask-image:radial-gradient(300px 200px at 50% 40%,#000,#0000);mask-image:radial-gradient(300px 200px at 50% 40%,#000,#0000)}.co-btns{flex-direction:column;align-items:stretch}.co-btns .co-btn-primary,.co-btns .co-btn-secondary{width:100%}.co-badge{white-space:normal;text-align:left}}
