@import "https://fonts.googleapis.com/css2?family=Google+Sans+Code:wght@400;500;600&family=Jost:wght@500;600;700&family=Noto+Serif+SC:wght@400;500;600;700&display=swap";:root{--guide-canvas:oklch(97.6% .012 88);--guide-paper:oklch(99.5% .004 88);--guide-sidebar:oklch(94.4% .012 88);--guide-ink:oklch(21% .018 240);--guide-muted:oklch(48% .022 230);--guide-faint:oklch(49% .018 230);--guide-line:oklch(86% .018 85);--guide-accent:oklch(49% .105 177);--guide-accent-soft:oklch(92% .04 177);--guide-source:oklch(47% .09 78);--guide-source-soft:oklch(95% .035 78);--guide-code:oklch(20% .02 210);--guide-radius-xs:4px;--guide-radius-sm:8px;--guide-radius-md:12px;--guide-radius-lg:20px;--guide-content:720px;--guide-anchor-offset:var(--sline-anchor-offset,96px);--guide-frame:1420px}html{scroll-behavior:smooth}body.guide-site{background:var(--guide-canvas);color:var(--guide-ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Jost,Noto Serif SC,serif,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;overflow-x:clip}body.guide-site *,body.guide-site :before,body.guide-site :after{box-sizing:border-box}.guide-workbench{background:linear-gradient(90deg, transparent 0, transparent calc(50% - 1px), oklch(91% .014 88/.45) calc(50% - 1px), oklch(91% .014 88/.45) 50%, transparent 50%), var(--guide-canvas);min-width:0;color:var(--guide-ink);font-size:17px;line-height:1.82}.guide-workbench__frame{width:min(100%, var(--guide-frame));margin:0 auto;padding:32px 28px 80px}.guide-breadcrumb{min-width:0;color:var(--guide-faint);align-items:center;gap:9px;margin-bottom:32px;font-family:Jost,sans-serif;font-size:14px;font-weight:600;display:flex}.guide-breadcrumb a{color:var(--guide-muted);text-decoration:none}.guide-breadcrumb a:hover{color:var(--guide-accent)}.guide-hero{text-align:center;max-width:900px;margin:0 auto 44px}.guide-hero h1{color:var(--guide-ink);letter-spacing:-.035em;text-wrap:balance;margin:0;font-family:Jost,Noto Serif SC,sans-serif;font-size:clamp(36px,4.5vw,58px);font-weight:700;line-height:1.2}.guide-hero__description{max-width:680px;color:var(--guide-muted);text-wrap:pretty;margin:20px auto 0;font-size:clamp(17px,1.6vw,20px);line-height:1.65}.guide-hero__meta{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;font-family:Jost,Noto Serif SC,serif;display:flex}.guide-hero__meta span{color:var(--guide-muted);background:0 0;border-radius:0;padding:4px 0;font-size:13px;font-weight:600}.guide-hero__meta .guide-hero__stage{color:var(--guide-accent)}.guide-hero__meta span+span:before{color:var(--guide-line);content:"/";margin-right:10px}.guide-workbench ::selection{background:var(--guide-accent-soft);color:var(--guide-ink)}.guide-article pre,.guide-article table,.guide-toc,.guide-source-rail{scrollbar-color:var(--guide-accent) var(--guide-sidebar)}.guide-mobile-toc{display:none}.guide-workbench__grid{grid-template-columns:210px minmax(0, var(--guide-content)) 230px;justify-content:center;align-items:start;gap:clamp(24px,3vw,44px);min-width:0;display:grid}.guide-toc,.guide-source-rail{top:var(--guide-anchor-offset);max-height:calc(100dvh - var(--guide-anchor-offset) - 24px);overscroll-behavior:contain;scrollbar-width:thin;position:sticky;overflow-y:auto}.guide-toc>p,.guide-source-rail>p{color:var(--guide-faint);letter-spacing:.1em;text-transform:uppercase;margin:0 0 16px;font-family:Jost,sans-serif;font-size:12px;font-weight:700}.guide-toc nav{gap:2px;display:grid}.guide-toc a{border-radius:var(--guide-radius-sm);min-height:40px;color:var(--guide-muted);padding:9px 12px 9px 18px;font-family:Jost,Noto Serif SC,sans-serif;font-size:14px;font-weight:600;line-height:1.45;text-decoration:none;transition:color .16s cubic-bezier(.16,1,.3,1),background-color .16s cubic-bezier(.16,1,.3,1),transform .12s cubic-bezier(.16,1,.3,1);position:relative}.guide-toc a:before{background:var(--guide-faint);content:"";border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:7px;transform:translateY(-50%)}.guide-toc a.is-nested{padding-block:6px;min-height:34px;color:var(--guide-faint);padding-left:28px;font-size:13px}.guide-toc a.is-nested:before{left:17px}.guide-toc a[aria-current=location],.guide-mobile-toc a[aria-current=location]{background:var(--guide-accent-soft);color:var(--guide-accent)}.guide-toc a[aria-current=location]:before{background:var(--guide-accent)}.guide-article{overflow-wrap:anywhere;border-radius:var(--guide-radius-lg);background:var(--guide-paper);min-width:0;padding:clamp(24px,2.8vw,40px);box-shadow:0 1px 3px #3b301e1f,0 22px 64px #3b301e12}.guide-article>:first-child{margin-top:0}.guide-article h2,.guide-article h3,.guide-article h4{color:var(--guide-ink);text-wrap:balance;scroll-margin-top:var(--guide-anchor-offset);font-family:Jost,Noto Serif SC,sans-serif}.guide-article h2{letter-spacing:-.022em;margin:56px 0 20px;padding-top:8px;font-size:clamp(26px,2.5vw,34px);font-weight:700;line-height:1.35}.guide-article h2:after{background:var(--guide-accent);content:"";border-radius:999px;width:44px;height:3px;margin-top:18px;display:block}.guide-article h3{letter-spacing:-.012em;margin:42px 0 16px;font-size:clamp(21px,1.8vw,26px);font-weight:650;line-height:1.3}.guide-article h4{margin:30px 0 12px;font-size:19px;font-weight:650}.guide-article p,.guide-article ul,.guide-article ol{color:var(--guide-muted);text-wrap:pretty}.guide-article p{margin:0 0 20px}.guide-article ul,.guide-article ol{margin:0 0 24px;padding-left:1.35em}.guide-article li{margin-bottom:9px;padding-left:.25em}.guide-article strong{color:var(--guide-ink);font-weight:700}.guide-article a{color:var(--guide-accent);text-underline-offset:.18em;text-decoration-color:oklch(66% .1 177/.45)}.guide-article code{border-radius:var(--guide-radius-xs);background:var(--guide-sidebar);color:oklch(39% .11 177);padding:.12em .34em;font-family:Google Sans Code,monospace;font-size:.88em}.guide-article pre{border-radius:var(--guide-radius-md);background:var(--guide-code);color:oklch(90% .025 165);tab-size:2;margin:28px 0;padding:22px;font-family:Google Sans Code,monospace;font-size:14px;line-height:1.72;overflow-x:auto;box-shadow:inset 0 1px #ffffff14}.guide-article pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.guide-article blockquote{border-radius:var(--guide-radius-md);background:var(--guide-source-soft);color:oklch(42% .06 78);margin:28px 0;padding:20px 22px;box-shadow:inset 0 0 0 1px oklch(85% .06 78/.55)}.guide-article blockquote p:last-child{margin-bottom:0}.guide-article table{border-collapse:collapse;border-radius:var(--guide-radius-sm);scrollbar-width:thin;width:100%;margin:30px 0;display:block;overflow-x:auto}.guide-article th,.guide-article td{border-bottom:1px solid var(--guide-line);text-align:left;vertical-align:top;min-width:150px;padding:13px 15px}.guide-article th{background:var(--guide-sidebar);color:var(--guide-ink);font-family:Jost,Noto Serif SC,sans-serif;font-size:14px;font-weight:700}.guide-article td{color:var(--guide-muted);font-size:15px}.guide-article tbody tr:last-child td{border-bottom:0}.guide-article hr{background:var(--guide-line);border:0;height:1px;margin:56px 0}.guide-source-note{border-radius:var(--guide-radius-sm);background:var(--guide-source-soft);color:oklch(42% .06 78);grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:10px 14px;margin:28px 0;padding:14px 16px;font-family:Jost,Noto Serif SC,sans-serif;font-size:14px;display:grid}.guide-source-note span{color:var(--guide-source);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.guide-source-note a{color:oklch(42% .08 78);font-weight:650}.guide-source-rail ol{gap:10px;margin:0;padding:0;list-style:none;display:grid}.guide-source-rail li{border-radius:var(--guide-radius-md);background:var(--guide-source-soft);padding:12px;position:relative;box-shadow:0 1px 3px #4933121a}.guide-source-rail li>span{color:var(--guide-source);margin-bottom:8px;font-family:Google Sans Code,monospace;font-size:11px;font-weight:600;display:block}.guide-source-rail a{color:oklch(34% .06 78);font-family:Jost,Noto Serif SC,sans-serif;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;display:block}.guide-source-rail small{color:var(--guide-source);margin-top:4px;font-family:Jost,sans-serif;font-size:11px;font-weight:600;display:block}.guide-source-rail li>p{color:oklch(50% .035 78);margin:9px 0 0;font-size:12px;line-height:1.5}.guide-next{border-radius:var(--guide-radius-md);background:var(--guide-accent-soft);color:var(--guide-ink);margin-top:68px;padding:24px 26px;text-decoration:none;transition:transform .14s cubic-bezier(.16,1,.3,1),box-shadow .16s cubic-bezier(.16,1,.3,1);display:block}.guide-next>span{color:var(--guide-accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-family:Jost,sans-serif;font-size:12px;font-weight:700;display:block}.guide-next strong{font-family:Jost,Noto Serif SC,sans-serif;font-size:23px;display:block}.guide-next p{color:var(--guide-muted);margin:6px 0 0;font-size:15px}.guide-next:active,.guide-learning-path a:active,.guide-toc a:active{transform:scale(.96)}.guide-learning-path{border-top:1px solid var(--guide-line);margin-top:96px;padding-top:42px}.guide-learning-path>header{max-width:680px;margin-bottom:28px}.guide-learning-path>header p{color:var(--guide-accent);letter-spacing:.1em;text-transform:uppercase;margin:8px 0 0;font-family:Jost,sans-serif;font-size:12px;font-weight:700}.guide-learning-path h2{letter-spacing:-.022em;margin:0;font-family:Jost,Noto Serif SC,sans-serif;font-size:clamp(28px,3vw,40px)}.guide-learning-path ol{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.guide-learning-path li{min-width:0}.guide-learning-path a{border-radius:var(--guide-radius-md);background:var(--guide-sidebar);height:100%;min-height:168px;color:var(--guide-ink);padding:18px;text-decoration:none;transition:transform .14s cubic-bezier(.16,1,.3,1),background-color .16s cubic-bezier(.16,1,.3,1),box-shadow .16s cubic-bezier(.16,1,.3,1);display:block}.guide-learning-path .is-current a{background:var(--guide-accent-soft);box-shadow:inset 0 0 0 1px oklch(78% .08 177/.55)}.guide-learning-path a>span{color:var(--guide-accent);margin-bottom:18px;font-family:Google Sans Code,monospace;font-size:12px;font-weight:600;display:block}.guide-learning-path strong{font-family:Jost,Noto Serif SC,sans-serif;font-size:17px;display:block}.guide-learning-path a>p{color:var(--guide-muted);margin:8px 0 0;font-size:13px;line-height:1.55}.guide-workbench a:focus-visible,.guide-mobile-toc summary:focus-visible{outline-offset:3px;outline:3px solid oklch(67% .12 177/.72)}@media (hover:hover){.guide-next:hover,.guide-learning-path a:hover{transform:translateY(-2px);box-shadow:0 10px 24px #29413b1f}.guide-source-rail a:hover{text-underline-offset:.18em;text-decoration:underline}}@media (width<=1180px){.guide-workbench__grid{grid-template-columns:190px minmax(0, var(--guide-content))}.guide-source-rail{grid-column:2;max-height:none;margin-top:10px;position:static;overflow:visible}.guide-source-rail ol{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-learning-path ol{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=780px){.guide-workbench{background:var(--guide-canvas);font-size:16px}.guide-workbench__frame{padding:24px 16px 64px}.guide-breadcrumb{white-space:nowrap;margin-bottom:24px;overflow-x:auto}.guide-hero{text-align:left;margin-bottom:28px}.guide-hero h1{font-size:clamp(30px,8vw,44px)}.guide-hero__description{margin-left:0}.guide-hero__meta{justify-content:flex-start}.guide-mobile-toc{border-radius:var(--guide-radius-md);background:var(--guide-sidebar);margin-bottom:18px;font-family:Jost,Noto Serif SC,sans-serif;display:block}.guide-mobile-toc summary{cursor:pointer;touch-action:manipulation;min-height:48px;padding:12px 16px;font-weight:700}.guide-mobile-toc nav{gap:2px;padding:0 10px 12px;display:grid}.guide-mobile-toc a{border-radius:var(--guide-radius-sm);min-height:40px;color:var(--guide-muted);padding:8px 10px;font-size:14px;font-weight:600;text-decoration:none}.guide-mobile-toc a.is-nested{padding-left:24px;font-size:13px}.guide-mobile-toc a.is-nested:not([aria-current=location]){color:var(--guide-faint)}.guide-workbench__grid{display:block}.guide-toc{display:none}.guide-article{border-radius:var(--guide-radius-md);padding:24px 18px 30px}.guide-article h2{margin-top:44px;font-size:26px}.guide-article pre{margin-inline:-8px;padding:18px}.guide-source-rail{margin-top:36px}.guide-source-rail ol{grid-template-columns:1fr}.guide-learning-path{margin-top:68px}.guide-learning-path ol{scroll-snap-type:x mandatory;scrollbar-width:thin;margin-inline:-16px;padding-inline:16px;display:flex;overflow-x:auto}.guide-learning-path li{scroll-snap-align:start;min-width:min(76vw,270px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.guide-workbench *,.guide-workbench :before,.guide-workbench :after{transition-duration:.01ms!important}}
