:root{color-scheme:dark;--bg:#070909;--surface:#0c0e0e;--raised:#141818;--text:#d8d1c4;--muted:#9b9d98;--dim:#858a85;--line:#292e2c;--hairline:#1b201e;--red:#ff3b26;--accent:#ff7160;--lime:#b7d900;--sans:Inter,"Segoe UI",system-ui,sans-serif;--mono:"IBM Plex Mono",Consolas,"Liberation Mono",monospace;--display:"Bahnschrift Condensed","Arial Narrow",var(--sans);font-family:var(--sans);scroll-behavior:smooth;scroll-padding-top:110px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}button,input,select{font:inherit}::selection{color:#fff;background:#ff3b2640}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}svg{display:block}button{cursor:pointer}.dim{color:var(--dim)}.eyebrow{font:600 11px/1.4 var(--mono);letter-spacing:.13em}.skip-link{z-index:100;background:var(--accent);color:var(--bg);padding:12px;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.topbar{z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(16px);background:#070909f2;align-items:center;gap:50px;min-height:78px;padding:0 30px;display:flex;position:sticky;top:0}.brand{flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:linear-gradient(135deg,#ff3b2612,#0000);border:1px solid #39342c;place-items:center;width:40px;height:42px;display:grid}.brand-mark svg{width:32px;color:var(--red)}.brand b{letter-spacing:.06em;font-size:17px;font-weight:650}.brand-slash{color:#5b6059;font-weight:400}.brand small{font:9px var(--mono);letter-spacing:.105em;color:var(--muted);margin-top:5px;display:block}.topnav{align-self:stretch;align-items:stretch;gap:28px;display:flex}.topnav a{font:600 11px var(--mono);letter-spacing:.035em;text-transform:uppercase;color:var(--muted);white-space:nowrap;align-items:center;gap:8px;text-decoration:none;display:flex;position:relative}.topnav a:hover,.topnav a[aria-current]{color:var(--text)}.topnav a[aria-current]:after{content:"";background:var(--red);height:2px;position:absolute;inset:auto 0 -1px;box-shadow:0 -2px 12px #ff3b2630}.nav-dot,.signal-dot{background:var(--lime);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.top-actions{align-items:center;gap:20px;margin-left:auto;display:flex}.language{font:11px var(--mono);color:var(--muted);border-left:1px solid var(--line);padding-left:20px}.workspace{grid-template-columns:260px minmax(0,1fr);max-width:1920px;margin:auto;display:grid}.sidebar{border-right:1px solid var(--line);scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;height:calc(100svh - 78px);padding:27px 18px 0 22px;display:flex;position:sticky;top:78px;overflow:auto}.edition{justify-content:space-between;align-items:center;gap:6px;margin:0 4px 25px;display:flex}.edition .eyebrow{color:var(--dim);letter-spacing:.09em;font-size:9px}.edition-version{font:10px var(--mono);color:var(--muted);align-items:center;gap:7px;display:flex}.edition-version i{background:var(--lime);width:4px;height:4px}.sidebar nav{flex:1}.overview-link,.chapter-link{color:var(--muted);justify-content:space-between;align-items:center;min-height:35px;margin-bottom:2px;padding:8px 12px;font-size:13px;line-height:1.4;text-decoration:none;display:flex;position:relative}.overview-link{justify-content:flex-start;gap:12px;font-size:14px}.overview-link>span{font-size:19px}.chapter-link:hover,.overview-link:hover{color:var(--text);background:var(--raised)}.selected{color:var(--accent);background:#ff3b260d}.selected:before{content:"";background:var(--red);width:2px;position:absolute;inset:7px auto 7px 0}.nav-group{margin-top:29px}.nav-group-title{font:600 10px var(--mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:10px;margin:0 12px 10px;display:flex}.nav-group-title>span:last-child{color:var(--dim);font-weight:400}.sidebar-foot{border-top:1px solid var(--line);font:10px var(--mono);color:var(--muted);align-items:center;gap:9px;margin-top:26px;padding:19px 7px;display:flex}.main{outline:none;min-width:0;padding:27px clamp(28px,4vw,64px) 0}.page-path{font:10px var(--mono);letter-spacing:.06em;color:var(--dim);text-transform:uppercase;flex-wrap:wrap;gap:12px;margin-bottom:37px;display:flex}.path-current{color:var(--muted)}.content-grid{grid-template-columns:minmax(0,790px) 165px;justify-content:space-between;gap:clamp(28px,4vw,65px);display:grid}.wide .content-grid{display:block}.page-content{min-width:0}.toc{align-self:start;padding:10px 0;font-size:12px;position:sticky;top:120px}.toc>.eyebrow{font-size:10px}.toc nav{border-left:1px solid var(--line);margin:20px 0 32px;display:grid}.toc a{color:var(--muted);border-left:1px solid #0000;margin-left:-1px;padding:8px 0 8px 16px;line-height:1.5;text-decoration:none}.toc a:hover,.toc a[data-active]{color:var(--accent);border-color:var(--red)}.toc-note{border-top:1px solid var(--line);color:var(--muted);line-height:1.9;font:11px/1.9 var(--mono);padding-top:20px}.toc-note .signal-dot{margin-right:5px}.toc-note small{color:var(--dim);font-size:10px}.page-footer{border-top:1px solid var(--line);color:var(--muted);font:10px var(--mono);letter-spacing:.05em;justify-content:space-between;gap:20px;margin-top:55px;padding:25px 0;display:flex}.page-footer>span:last-child{align-items:center;gap:12px;display:flex}.footer-square{background:var(--red);width:5px;height:5px;display:inline-block}.article-header{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:26px}.article-meta{font:10px var(--mono);color:var(--dim);justify-content:space-between;align-items:center;gap:15px;display:flex}.article-meta .eyebrow{color:var(--accent)}h1{font:600 clamp(34px,3.2vw,50px)/1.1 var(--sans);letter-spacing:-.045em;color:#e7e1d6;margin:20px 0}p.lead,.lead{font:16px/1.85 var(--sans);color:var(--muted);max-width:720px}.prose{color:#c7c6bc;font-size:16px;line-height:1.85}.prose h2{font:550 25px/1.3 var(--sans);letter-spacing:-.025em;color:#e1dacd;margin:45px 0 18px;scroll-margin-top:115px}.prose h3{font:600 18px/1.5 var(--sans);color:var(--text);margin:30px 0 14px;scroll-margin-top:115px}.prose h4{font-size:16px}.prose p{margin:18px 0}.prose li{padding:3px 0}.prose ul,.prose ol{padding-left:23px}.prose a{color:var(--accent);text-underline-offset:4px;overflow-wrap:anywhere;text-decoration-color:#ff716066}.prose a:hover{text-decoration-color:var(--accent)}.prose code{font:13px/1.7 var(--mono);color:#e2d2bc;overflow-wrap:anywhere;background:#1c201e;border:1px solid #2c312c;border-radius:2px;padding:2px 5px}.prose pre code{overflow-wrap:normal;background:0 0;border:0;padding:0;font-size:13px}.prose pre{border:1px solid var(--line);scrollbar-width:thin;margin:24px 0;padding:24px 22px;font-size:13px;line-height:1.85;overflow:auto;background:#0d1110!important}.code-wrap{min-width:0;position:relative}.code-wrap>wu-docs-copy{opacity:0;position:absolute;top:9px;right:9px}.code-wrap:hover>wu-docs-copy,.code-wrap:focus-within>wu-docs-copy{opacity:1}.prose blockquote{border-left:2px solid var(--red);color:var(--muted);background:#ff3b2608;margin:25px 0;padding:3px 20px;font-size:14px}.prose table{border-collapse:collapse;width:100%;margin:28px 0;font-size:13px;display:block;overflow-x:auto}.prose th{text-align:left;color:var(--text);font:600 12px var(--mono);background:var(--surface)}.prose th,.prose td{border:1px solid var(--line);vertical-align:top;min-width:110px;padding:13px 15px}.prose hr{border:0;border-top:1px solid var(--line);margin:35px 0}.page-pagination{grid-template-columns:1fr 1fr;gap:20px;margin-top:50px;display:grid}.page-pagination a{border:1px solid var(--line);padding:20px;text-decoration:none}.page-pagination a:hover{background:var(--surface);border-color:#5b6158}.page-pagination small{font:10px var(--mono);color:var(--muted);letter-spacing:.08em;display:block}.page-pagination strong{margin-top:10px;font-size:14px;font-weight:500;display:block}.page-pagination a:last-child{text-align:right}.overview-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:25px;display:grid}.overview-head h1{letter-spacing:-.055em;margin:17px 0 20px;font-size:clamp(38px,4vw,61px);line-height:1.07}.overview-head .eyebrow{color:var(--accent)}.overview-head h1 span{color:var(--muted)}.overview-head .lead{max-width:570px;margin:0;font-size:15px;line-height:1.85}.issue-label{border-top:1px solid var(--red);text-align:right;font:10px var(--mono);color:var(--dim);letter-spacing:.1em;gap:7px;padding:13px 0;display:grid}.issue-label strong{letter-spacing:-.03em;color:var(--text);font-size:21px;font-weight:400}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.action-link{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;min-height:44px;padding:0 16px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.action-link.primary{background:var(--red);border-color:var(--red);color:#090a09;font-weight:650}.action-link:hover{filter:brightness(1.18);border-color:var(--muted)}.stack-strip{border-bottom:1px solid var(--line);font:11px var(--mono);color:var(--muted);flex-wrap:wrap;align-items:center;gap:20px;margin-top:21px;padding:22px 0;display:flex}.stack-strip>span:first-child{color:var(--dim);letter-spacing:.1em;margin-right:auto;font-size:9px}.stack-strip b{color:var(--text);font-weight:400}.stack-strip i{color:var(--dim);margin-left:4px;font-style:normal}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin:34px 0 18px;display:flex}.section-heading h2{letter-spacing:-.025em;margin:0;font-size:19px;font-weight:550}.section-heading>span,.section-heading>a{font:10px var(--mono);color:var(--dim);text-decoration:none}.section-heading>a:hover{color:var(--accent)}.paths{border:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.path-card{background:var(--surface);padding:23px 25px 21px;text-decoration:none;position:relative}.path-card+.path-card{border-left:1px solid var(--line)}.path-card:hover{background:var(--raised)}.path-card .card-icon{color:var(--accent);width:26px;height:26px;margin-bottom:20px}.path-card .arrow{color:var(--dim);position:absolute;top:23px;right:23px}.path-card h3{letter-spacing:-.02em;margin:0 0 9px;font-size:20px;font-weight:550}.path-card p{color:var(--muted);max-width:360px;margin:0 0 21px;font-size:13px;line-height:1.75}.path-card small{font:10px var(--mono);color:var(--dim);letter-spacing:.035em}.path-card small b{color:var(--accent);font-weight:400}.architecture{border:1px solid var(--line);background:radial-gradient(at 50% 30%,#ff3b2605,#0000 70%),repeating-linear-gradient(90deg,#0000 0 31px,#d8d1c403 31px 32px),repeating-linear-gradient(0deg,#0000 0 31px,#d8d1c403 31px 32px);padding:25px 25px 20px}.diagram-head{font:9px var(--mono);letter-spacing:.08em;color:var(--dim);justify-content:space-between;gap:15px;margin-bottom:20px;display:flex}.diagram-head span:last-child{color:var(--lime)}.host-node{text-align:center;max-width:245px;font:12px var(--mono);background:#111512;border:1px solid #42423a;margin:auto;padding:13px}.host-node b{color:var(--dim);margin-top:7px;font-size:9px;font-weight:400;display:block}.bus-line{background:var(--red);width:1px;height:33px;margin:auto;position:relative}.bus-line:after{content:"";background:var(--red);width:7px;height:7px;position:absolute;inset:14px auto auto -3px;transform:rotate(45deg)}.runtime-node{text-align:center;max-width:540px;font:12px var(--mono);color:var(--accent);background:#ff3b2607;border:1px solid #6a3329;margin:auto;padding:12px}.runtime-node small{color:var(--muted);word-spacing:8px;margin-top:8px;font-size:9px;display:block}.tree-line{border-top:1px solid #67483c;border-left:1px solid #67483c;border-right:1px solid #67483c;height:26px;margin:24px 11% 0;position:relative}.tree-line:before{content:"";background:#67483c;width:1px;height:25px;position:absolute;top:-25px;left:50%}.framework-nodes{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.framework-node{background:var(--surface);border:1px solid var(--line);text-align:center;padding:14px 5px;font-size:12px}.framework-node span{font:15px var(--mono);color:var(--muted);margin-right:7px;display:inline-block}.framework-node small{font:9px var(--mono);color:var(--dim);margin-top:7px;display:block}.diagram-foot{border-top:1px dashed var(--line);color:var(--dim);font:9px var(--mono);justify-content:space-between;gap:10px;margin-top:23px;padding-top:13px;display:flex}.quick-start{border:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.quick-copy{flex-direction:column;align-items:start;padding:24px;display:flex}.quick-copy .eyebrow{color:var(--accent);font-size:10px}.quick-copy h3{letter-spacing:-.02em;margin:14px 0 12px;font-size:22px;font-weight:500}.quick-copy p{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.75}.quick-copy a{color:var(--text);text-underline-offset:4px;margin-top:auto;font-size:12px}.terminal{border-left:1px solid var(--line);background:#0d1110;min-width:0}.terminal-title{border-bottom:1px solid var(--line);font:10px var(--mono);color:var(--dim);justify-content:space-between;padding:12px 16px;display:flex}.terminal pre{font:12px/2 var(--mono);color:var(--text);margin:0;padding:17px 20px;overflow:auto}.terminal .prompt{color:var(--accent);user-select:none}.terminal .comment{color:var(--dim)}.terminal .code-wrap>wu-docs-copy{top:5px;right:5px}.field-note{border-left:2px solid var(--red);color:var(--muted);background:#ff3b2605;align-items:flex-start;gap:13px;margin-top:23px;padding:14px 17px;font-size:12px;line-height:1.7;display:flex}.field-note>b{font:11px var(--mono);color:var(--accent);margin-top:4px}.field-note a{color:var(--text);text-underline-offset:3px}.source-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.source-card{border:1px solid var(--line);background:var(--surface);min-width:0;padding:25px}.source-card h2{margin:14px 0;font-size:23px;font-weight:500}.source-card p{color:var(--muted);font-size:14px;line-height:1.8}.source-card code{font:12px var(--mono);color:var(--accent);overflow-wrap:anywhere}.source-card a{color:var(--text);text-underline-offset:4px;font-size:13px}.source-card .eyebrow{color:var(--accent)}.lab-intro{max-width:790px}.lab-grid{gap:32px;margin-top:32px;display:grid}.lab-shell{scroll-margin-top:110px}.lab-shell>header{background:var(--surface);border:1px solid var(--line);border-bottom:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.lab-shell h2{margin:0;font-size:15px;font-weight:550}.lab-shell .eyebrow{color:var(--accent);font-size:10px}.lab-description{color:var(--muted);margin:12px 0;font-size:14px;line-height:1.8}.lab-description a{color:var(--accent);text-underline-offset:3px}@media (width>=1500px){.main{padding-left:64px;padding-right:64px}.wide .page-content,.wide .page-footer{max-width:1120px}}@media (width<=1200px){.topbar{gap:32px;padding:0 22px}.topnav{gap:22px}.workspace{grid-template-columns:230px minmax(0,1fr)}.sidebar{padding-left:14px;padding-right:12px}.content-grid{display:block}.toc{display:none}.main{padding-left:32px;padding-right:32px}.language{display:none}.top-actions{gap:0}.brand small{font-size:8px}.topnav a{font-size:10px}}@media (width<=900px){.topbar{gap:22px}.brand small{display:none}.brand b{font-size:15px}.topnav{gap:17px}.workspace{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.edition{display:block}.edition-version{margin-top:8px}.chapter-link{font-size:12px}.main{padding:24px 25px 0}.overview-head h1{font-size:43px}.issue-label{display:none}.paths{grid-template-columns:1fr}.path-card+.path-card{border-left:0;border-top:1px solid var(--line)}.quick-start{grid-template-columns:1fr}.terminal{border-left:0;border-top:1px solid var(--line)}.source-grid{grid-template-columns:1fr}}@media (width<=700px){.topbar{flex-wrap:wrap;gap:16px;min-height:68px;padding:0 16px}.brand{gap:8px}.brand-mark{width:32px;height:34px}.brand-mark svg{width:26px}.topnav{border-top:1px solid var(--hairline);order:3;justify-content:space-between;width:100%;height:38px}.topnav a{font-size:10px}.top-actions{margin-left:auto}.workspace{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:0;position:static;overflow:visible}.sidebar .edition,.sidebar .sidebar-foot,.sidebar .nav-group-title,.sidebar .overview-link{display:none}.sidebar>nav{scrollbar-width:none;gap:8px;padding:10px 16px;display:flex;overflow:auto}.sidebar .nav-group{display:contents}.sidebar .chapter-link{white-space:nowrap;border:1px solid var(--line);min-height:34px;margin:0;padding:8px 12px;font-size:12px}.sidebar .selected:before{width:auto;height:2px;inset:auto 5px -1px}.sidebar .nav-group:last-child{display:none}.main{padding:24px 19px 0}.page-path{gap:8px;margin-bottom:29px;font-size:9px}.overview-head h1{font-size:42px}.overview-head .lead{font-size:14px}.stack-strip{gap:13px;font-size:10px}.stack-strip>span:first-child{width:100%}.architecture{padding:19px 14px}.framework-nodes{gap:6px}.framework-node{font-size:10px}.framework-node span{margin:0 0 6px;display:block}.framework-node small,.diagram-foot{font-size:8px}.diagram-foot span:last-child{display:none}.section-heading h2{font-size:18px}.section-heading>span{font-size:9px}.path-card{padding:23px}.article-meta{font-size:9px}.article-meta .eyebrow{font-size:10px}h1{font-size:36px}.prose{font-size:15px}.prose h2{font-size:23px}.prose pre{padding:20px 15px}.code-wrap>wu-docs-copy{opacity:1}.prose pre{padding-top:47px}.page-pagination{gap:10px}.page-pagination a{padding:14px}.page-pagination strong{font-size:12px}.page-footer{flex-wrap:wrap;font-size:9px}.hero-actions{gap:9px}.action-link{gap:20px;font-size:12px}.lab-shell>header{gap:10px;padding:16px}.lab-shell h2{font-size:13px}.lab-shell .eyebrow{font-size:9px}}@media (prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}@media (forced-colors:active){:root{--line:CanvasText;--accent:LinkText;--red:Highlight;--muted:CanvasText}.selected{outline:1px solid highlight}.signal-dot,.nav-dot{forced-color-adjust:none}}.toc{scrollbar-width:thin;max-height:calc(100svh - 140px);overflow-y:auto}[hidden]{display:none!important}wu-docs-navigation{flex:1;min-width:0;display:block}.docs-menu-trigger{display:none}.sidebar:not(.lab-sidebar) .nav-group{margin-top:12px;display:block}.sidebar:not(.lab-sidebar) .nav-group-title{letter-spacing:.05em;align-items:center;min-height:44px;margin:0;padding:12px;line-height:1.5;list-style:none;display:flex}summary.nav-group-title{cursor:pointer;color:var(--text)}summary.nav-group-title:hover{color:var(--accent);background:var(--surface)}summary::-webkit-details-marker{display:none}.nav-chevron{font-size:16px;transition:transform .15s;transform:rotate(-90deg)}details[open]>summary>.nav-chevron{transform:none}.nav-group-items{padding:1px 0 4px}.sidebar .resources-nav{border-top:1px solid var(--line);padding-top:12px}.learning-path{border-block:1px solid var(--line);margin:0 0 30px;padding:16px 0 20px}.learning-path p{color:var(--accent);font:10px/1.6 var(--mono);letter-spacing:.05em;flex-wrap:wrap;gap:8px 18px;margin:0 0 14px;display:flex}.learning-path p span{color:var(--muted);letter-spacing:0}.learning-path ol{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.learning-path a{min-height:44px;color:var(--muted);overflow-wrap:anywhere;border:1px solid #0000;align-items:center;gap:9px;padding:8px;font-size:12px;line-height:1.5;text-decoration:none;display:flex}.learning-path a>span{color:var(--dim);font:11px var(--mono)}.learning-path a:hover{color:var(--text);background:var(--raised)}.learning-path a[aria-current]{border-color:var(--line);background:var(--surface);color:var(--accent)}.learning-path a[aria-current]>span{color:var(--accent)}.prose details{border:1px solid var(--line);background:var(--surface);margin:26px 0;padding:0 18px}.prose summary{cursor:pointer;color:var(--text);padding:13px 0;font-size:14px}.prose details>p,.prose details>ul{font-size:14px}.prose .astro-code span[style*=\#6A737D],.prose .astro-code span[style*=\#6a737d]{color:var(--muted)!important}.learning-overview{border:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.learning-overview li+li{border-left:1px solid var(--line)}.learning-overview a{background:var(--surface);height:100%;padding:20px;text-decoration:none;display:block}.learning-overview a:hover{background:var(--raised)}.learning-overview span{color:var(--accent);font:11px var(--mono);margin-bottom:13px;display:block}.learning-overview strong{font-size:15px;font-weight:550;line-height:1.5;display:block}.learning-overview p{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.8}.reader-paths .path-card .eyebrow{color:var(--accent);margin-bottom:13px;display:block}.page-path a{color:var(--muted);text-decoration:none}.page-path a:hover{color:var(--accent)}.discovery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.discovery-grid>a{border:1px solid var(--line);background:var(--surface);flex-direction:column;align-items:flex-start;min-width:0;padding:22px;text-decoration:none;display:flex}.discovery-grid>a:hover{border-color:var(--muted);background:var(--raised)}.discovery-grid .eyebrow{color:var(--accent);margin-bottom:18px}.discovery-grid h3{overflow-wrap:anywhere;margin:0 0 10px;font-size:18px;font-weight:550;line-height:1.45}.discovery-grid p{color:var(--muted);margin:0 0 20px;font-size:14px;line-height:1.7}.discovery-more{color:var(--accent);margin-top:auto;font-size:12px}.adapter-directory{margin:30px 0 20px}.adapter-directory h2{margin:0 0 14px;font-size:16px;font-weight:550;line-height:1.5}.adapter-directory ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.adapter-directory a[data-adapter]{border:1px solid var(--line);background:var(--surface);align-items:center;min-height:44px;padding:8px 13px;font-size:13px;text-decoration:none;display:flex}.adapter-directory a[data-adapter]:hover{color:var(--accent);border-color:var(--muted)}.adapter-directory p{color:var(--muted);margin:14px 0 0;font-size:13px;line-height:1.8}.adapter-directory p a{color:var(--accent);text-underline-offset:4px}.build-path{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;gap:28px;margin:32px 0;padding:26px 0;display:grid}.build-path-copy .eyebrow{color:var(--accent)}.build-path h2{letter-spacing:-.025em;margin:12px 0;font-size:24px;font-weight:550;line-height:1.3}.build-path p{color:var(--muted);max-width:440px;margin:0 0 14px;font-size:14px;line-height:1.75}.build-guide-link{min-height:44px;color:var(--accent);text-underline-offset:5px;align-items:center;font-size:13px;display:inline-flex}.build-use-cases{align-self:center;min-width:0;margin:0;padding:0;list-style:none}.build-use-cases li+li{border-top:1px solid var(--line)}.build-use-cases a{justify-content:space-between;align-items:center;gap:16px;padding:16px;text-decoration:none;display:flex}.build-use-cases a:hover{background:var(--surface)}.build-use-cases strong{font-size:15px;font-weight:550;display:block}.build-use-cases small{color:var(--muted);margin-top:5px;font-size:12px;line-height:1.7;display:block}.build-use-cases a>span:last-child{color:var(--accent)}@media (width<=900px){.build-path{grid-template-columns:1fr;gap:12px}.build-path-copy{padding:0 4px}.build-use-cases a{padding:16px 4px}}@media (width<=1100px){.discovery-grid{grid-template-columns:1fr}.discovery-grid>a{padding:20px}.discovery-grid .eyebrow{margin-bottom:10px}}.reader-paths .path-card:nth-child(3){border-left:0}.reader-paths .path-card:nth-child(n+3){border-top:1px solid var(--line)}.example-architecture .framework-nodes{grid-template-columns:1fr 1fr}.example-architecture .framework-node{padding:19px 10px;font-size:14px}.portal-note{color:var(--muted);margin-top:30px;font-size:13px;line-height:1.8}.portal-note a{color:var(--text);text-underline-offset:4px}@media (width<=1100px){.learning-overview,.learning-path ol{grid-template-columns:1fr 1fr}.learning-overview li:nth-child(3){border-left:0}.learning-overview li:nth-child(n+3){border-top:1px solid var(--line)}}@media (width<=900px){.reader-paths .path-card{border-left:0}.reader-paths .path-card+.path-card{border-top:1px solid var(--line)}}@media (width<=700px){.sidebar:not(.lab-sidebar) .docs-menu-trigger{cursor:pointer;min-height:48px;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:12px 19px;font-size:13px;list-style:none;display:flex}.docs-menu-trigger>span{font-size:17px;transform:rotate(-90deg)}.docs-menu[open]>.docs-menu-trigger>span{transform:none}.docs-menu[open]>.docs-menu-trigger{border-bottom:1px solid var(--line)}.sidebar:not(.lab-sidebar) .docs-menu>nav{max-height:65svh;padding:8px 12px 20px;display:block;overflow:auto}.sidebar:not(.lab-sidebar) .overview-link{display:flex}.sidebar:not(.lab-sidebar) .chapter-link{white-space:normal;border:0;min-height:40px;margin-bottom:2px;padding:9px 12px;font-size:13px}.sidebar:not(.lab-sidebar) .selected:before{width:2px;height:auto;inset:7px auto 7px 0}.learning-path{margin-bottom:24px}.learning-overview a{padding:16px}.learning-overview strong{font-size:14px}.article-meta{flex-wrap:wrap;align-items:flex-start;gap:8px}}.locale-menu{font:12px var(--mono);color:var(--text);flex-shrink:0;position:relative}.locale-menu summary{cursor:pointer;border:1px solid var(--line);justify-content:center;align-items:center;gap:8px;min-width:52px;min-height:40px;padding:0 10px;list-style:none;display:flex}.locale-menu summary::-webkit-details-marker{display:none}.locale-menu nav{z-index:100;background:var(--surface);border:1px solid var(--line);min-width:180px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #0009}.locale-menu a{color:var(--text);font:14px var(--sans);padding:12px;text-decoration:none;display:block}.locale-menu a:hover,.locale-menu a[aria-current]{color:var(--accent);background:var(--raised)}.locale-menu summary:focus-visible,.locale-menu a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.section-anchor{scroll-margin-top:120px;display:block;position:relative}html:lang(zh-CN) .prose{line-height:1.95}html:lang(zh-CN) .eyebrow{letter-spacing:.05em}@media (width<=390px){.locale-menu summary{min-width:44px;padding-inline:7px}.top-actions{gap:6px}}.topnav .support-nav-link{color:var(--accent)}.support-nav-link>span{font-size:18px;line-height:1}.project-resources{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 20px;margin-bottom:23px;padding-bottom:16px;display:flex}.project-resources a{min-height:36px;font:12px var(--mono);color:var(--muted);overflow-wrap:anywhere;align-items:center;gap:8px;max-width:100%;text-decoration:none;display:inline-flex}.project-resources a:hover{color:var(--text)}.project-resources .npm-label{color:var(--accent);border:1px solid #ff716040;padding:2px 5px;font-weight:650;line-height:1}.project-resources .report-link{color:var(--accent);margin-inline-start:auto}.community-callout{border:1px solid #ff71604d;border-inline-start:3px solid var(--accent);background:linear-gradient(115deg,#ff71600a,var(--surface));grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;margin-top:48px;padding:28px;display:grid}.community-callout .eyebrow{color:var(--accent);font-size:10px}.community-callout h2{letter-spacing:-.025em;margin:12px 0;font-size:22px;line-height:1.3}.community-callout p{color:var(--muted);max-width:550px;margin:0;font-size:13px;line-height:1.8}.community-actions{gap:10px;min-width:180px;display:grid}.community-more{color:var(--muted);text-underline-offset:4px;padding:6px 0;font-size:12px}.community-callout+.page-footer{margin-top:28px}.page-footer a{text-underline-offset:4px}.support-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr);align-items:start;gap:32px;display:grid}.support-team{border:1px solid var(--line);background:var(--surface);margin:0 0 40px;padding:26px}.support-team h2{letter-spacing:-.025em;margin:0 0 12px;scroll-margin-top:140px;font-size:24px}.support-team>p{color:var(--muted);margin:0 0 22px;font-size:14px;line-height:1.8}.team-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.team-list a{border:1px solid var(--line);background:var(--bg);align-items:center;gap:16px;height:100%;padding:20px;text-decoration:none;display:flex}.team-list a:hover{border-color:var(--accent);background:var(--raised)}.team-list a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.team-initials{border:1px solid var(--line);width:44px;height:44px;color:var(--accent);font:14px var(--mono);flex:none;place-items:center;display:grid}.team-person{gap:8px;min-width:0;display:grid}.team-person strong{font-size:17px;font-weight:550}.team-person>span{color:var(--muted);font-size:12px;line-height:1.6}@media (width<=700px){.support-team{padding:22px 18px}.team-list{grid-template-columns:1fr}.team-list a{padding:16px}.page-footer>span:last-child{flex-wrap:wrap}}.support-grid h2{letter-spacing:-.025em;margin:0 0 16px;scroll-margin-top:120px;font-size:24px;line-height:1.3}.support-grid p{color:var(--muted);font-size:14px;line-height:1.8}.support-grid a:not(.action-link){color:var(--accent);text-underline-offset:4px;overflow-wrap:anywhere}.support-report{border:1px solid var(--line);background:var(--surface);min-width:0;padding:26px}.support-report .support-version-hint{margin-bottom:24px;font-size:12px}.support-version-hint code{font:11px var(--mono);color:var(--text);overflow-wrap:anywhere}.support-report .support-direct{border-top:1px solid var(--line);overflow-wrap:anywhere;margin-top:24px;padding-top:20px;font-size:12px}.support-options{min-width:0}.support-options section{padding:26px}.support-options .eyebrow{color:var(--accent);margin-bottom:18px;font-size:10px;display:block}.support-coffee{background:linear-gradient(140deg,#ff71600e,var(--surface));border:1px solid #ff716066}.support-coffee small{color:var(--muted);font:10px var(--mono);margin-top:14px;display:block}.support-idea{border:1px solid var(--line);border-top:0}.support-idea a{align-items:center;gap:10px;min-height:44px;font-size:14px;display:inline-flex}.support-reading{padding:0 10px}.support-grid .section-anchor{margin:0}@media (width>=1500px){.wide .community-callout,.wide .project-resources{max-width:1120px}}@media (width<=1100px){.topbar{gap:22px}.topnav{gap:16px}.top-actions{gap:12px}.support-grid{grid-template-columns:1fr}.support-options{grid-template-columns:1fr 1fr;display:grid}.support-options .support-idea{border-top:1px solid var(--line);border-inline-start:0}.support-reading{grid-column:1/-1}}@media (width<=900px){.community-callout{grid-template-columns:1fr}.community-actions{flex-wrap:wrap;min-width:0;display:flex}.community-more{flex-basis:100%}.project-resources .report-link{margin-inline-start:0}}@media (width<=700px){.topnav{gap:8px}.topnav .support-nav-link>span{display:none}.project-resources{gap:4px 14px;margin-bottom:20px;padding-bottom:12px}.project-resources a{min-height:40px;font-size:11px}.community-callout{padding:22px 18px}.community-callout h2{font-size:21px}.support-report,.support-options section{padding:22px 18px}.support-options{display:block}.support-options .support-idea{border-top:0;border-inline-start:1px solid var(--line)}}.laboratory .workspace{grid-template-columns:228px minmax(0,1fr);max-width:1680px}.laboratory .main{padding:32px clamp(22px,3vw,48px) 0}.laboratory .page-path{display:none}.laboratory .wide .page-content,.laboratory .wide .page-footer{max-width:none}.laboratory .page-footer{margin-top:30px;font-size:9px}.lab-sidebar{gap:0;padding:25px 12px 20px}.lab-back{min-height:30px;color:var(--muted);margin:0 14px 34px;font-size:12px;text-decoration:none;display:block}.lab-back:hover{color:var(--text)}.lab-sidebar-note{border-top:1px solid var(--line);color:var(--muted);align-items:baseline;gap:10px;margin:40px 13px 0;padding-top:20px;font-size:11px;line-height:1.7;display:flex}.lab-sidebar-note small{color:var(--dim);margin-top:7px;font-size:10px;display:block}.lab-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;margin-bottom:22px;padding-bottom:26px;display:flex}.lab-heading .eyebrow{color:var(--muted);letter-spacing:.11em;font-size:10px}.lab-heading h1{letter-spacing:-.045em;margin:12px 0 10px;font-size:clamp(32px,3.4vw,47px);font-weight:550;line-height:1.1}.lab-heading h1 span{color:var(--red)}.lab-heading p{color:var(--muted);max-width:650px;margin:0;font-size:13px;line-height:1.7}.lab-version{text-align:right;flex-shrink:0;gap:7px;text-decoration:none;display:grid}.lab-version span{font:9px var(--mono);letter-spacing:.13em;color:var(--muted)}.lab-version b{font:25px var(--mono);color:var(--text);letter-spacing:-.04em;font-weight:400}.lab-version small{font:9px var(--mono);color:var(--dim)}.lab-version:hover small{color:var(--accent)}.experiment,.composition-grid>section{outline:none;min-width:0;scroll-margin-top:100px}.experiment-context{font:10px/1.6 var(--mono);letter-spacing:.07em;color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px;display:flex}.experiment-context i{color:var(--dim);margin:0 8px;font-style:normal}.experiment-context a{font:11px var(--sans);letter-spacing:0;min-height:28px;color:var(--text);align-items:center;text-decoration:none;display:flex}.experiment-context a:hover{color:var(--accent)}.experiment-note{color:var(--muted);align-items:baseline;gap:12px;padding:16px 0 0;font-size:12px;display:flex}.note-mark{color:var(--accent)}.experiment-note p{max-width:940px;margin:0;line-height:1.8}.experiment-note a{color:var(--text);text-underline-offset:4px}.experiment-note b{color:var(--text);font-weight:500}.composition-intro{margin-bottom:22px}.composition-intro h2{letter-spacing:-.025em;margin:0 0 10px;font-size:23px;font-weight:550;line-height:1.3}.composition-intro p{color:var(--muted);max-width:680px;margin:0;font-size:13px;line-height:1.8}.composition-flow{font:11px var(--mono);flex-wrap:wrap;align-items:center;gap:15px;margin-top:18px;display:flex}.composition-flow i{color:var(--accent);font-style:normal}.composition-flow b{color:var(--muted);font-weight:400}.composition-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:20px;margin-top:22px;display:grid}.laboratory .prose{max-width:870px;font-size:14px}.laboratory .prose h2{font-size:21px}@media (width<=1200px){.laboratory .workspace{grid-template-columns:204px minmax(0,1fr)}.laboratory .main{padding-inline:24px}.composition-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=900px){.lab-version{display:none}.laboratory .main{padding-inline:20px}.lab-heading{padding-bottom:22px}.lab-sidebar{padding-inline:8px}}@media (width<=760px){.laboratory .workspace{display:block}.lab-sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;padding:12px 16px;display:block;position:static}.lab-back,.lab-sidebar-note{display:none}.laboratory .main{padding:24px 16px 0}.lab-heading{gap:12px;margin-bottom:18px}.lab-heading h1{font-size:35px}.lab-heading p{font-size:12px}.experiment-context{flex-wrap:wrap;gap:12px;margin-bottom:12px;font-size:9px}.experiment-context a{font-size:11px}.composition-grid{gap:18px}.composition-intro h2{font-size:22px}.composition-flow{gap:10px;font-size:10px}.experiment,.composition-grid>section{scroll-margin-top:120px}.experiment-note{font-size:11px}.laboratory .page-footer{margin-top:24px}}@media (forced-colors:active){.lab-heading h1 span,.note-mark{color:linktext}}.home-live,.runtime-comparison{margin:40px 0 48px;scroll-margin-top:110px}.home-live-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.home-live-heading h2{letter-spacing:-.025em;margin:10px 0;font-size:clamp(23px,2.5vw,32px);font-weight:550}.home-live-heading .eyebrow{color:var(--accent)}.home-live-heading>a{font:12px/1.6 var(--mono);text-underline-offset:4px;flex-shrink:0}.home-live-badge{font:11px var(--mono);border:1px solid var(--line);white-space:nowrap;padding:8px 10px}.home-section-intro{max-width:790px;color:var(--muted);margin:8px 0 24px;font-size:15px;line-height:1.8}.home-live-surface{color:#e4ded2;background:#0c100e;border:1px solid #303733;border-radius:7px;min-width:0}.home-live-surface wu-home-playground{min-width:0;display:block}.home-live-surface wu-home-playground:not(:defined){grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.home-live-surface [data-home-fallback]{padding:16px 22px}.home-live-surface [data-home-retry]{font:inherit;min-height:44px;color:inherit;cursor:pointer;background:#202921;border:1px solid #727b6e;border-radius:4px;padding:8px 16px}.home-live-surface [hidden]{display:none!important}@media (width<=540px){.home-live-surface wu-home-playground:not(:defined){grid-template-columns:1fr}}.home-live-links{flex-wrap:wrap;gap:18px 30px;padding:18px 0;font-size:13px;display:flex}.home-live-links a{text-underline-offset:5px}.home-live-links a:first-child{color:var(--accent)}.runtime-comparison{border-top:1px solid var(--line);padding-top:35px}.runtime-table-scroll{border:1px solid var(--line);border-radius:6px;overflow-x:auto}.runtime-table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.runtime-table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%;min-width:690px;font-size:13px;line-height:1.65}.runtime-table caption{text-align:left;color:var(--muted);font:11px/1.8 var(--mono);background:var(--surface);caption-side:bottom;border-top:1px solid var(--line);padding:12px 18px}.runtime-table th,.runtime-table td{vertical-align:top;border-bottom:1px solid var(--line);padding:15px 18px}.runtime-table thead th{background:var(--raised);color:var(--text);font-weight:600}.runtime-table thead th:first-child{width:24%}.runtime-table th small{color:var(--muted);font:11px/1.8 var(--mono);margin-top:5px;display:block}.runtime-table tbody th{color:var(--muted);font-weight:400}.runtime-table td[data-size]{font:16px/1.6 var(--mono);font-variant-numeric:tabular-nums}.runtime-table .wu-column{background:#b7d90008}.runtime-table thead .wu-column{color:#d1e885;background:#b7d9000e}.runtime-table tr:last-child td,.runtime-table tr:last-child th{border-bottom:0}.runtime-scope,.runtime-method p{color:var(--muted);font-size:13px;line-height:1.8}.runtime-method{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0}.runtime-method summary{cursor:pointer;font-size:13px;line-height:1.6}.runtime-downloads{font:12px/1.8 var(--mono);flex-wrap:wrap;gap:12px 25px;padding:0;list-style:none;display:flex}.runtime-method pre{background:var(--surface);border:1px solid var(--line);font:13px/1.8 var(--mono);padding:16px;overflow:auto}@media (width<=650px){.home-live-heading{flex-direction:column;align-items:flex-start;gap:0}.home-live-badge{display:none}.home-live,.runtime-comparison{margin:30px 0}.home-section-intro{font-size:14px}.runtime-table th,.runtime-table td{padding:12px}.runtime-table{min-width:670px}}.project-community{border:1px solid var(--line);background:var(--surface);border-radius:6px;margin:38px 0 45px;padding:26px}.project-community .eyebrow{color:var(--lime)}.project-community h2{margin:10px 0;font-size:25px;font-weight:550}.project-community p{color:var(--muted);font-size:14px;line-height:1.8}.project-community ul{grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 16px;padding:0;list-style:none;display:grid}.project-community li a{border:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:15px;font-size:13px;text-decoration:none;display:flex}.project-community li a:hover{border-color:var(--muted)}.project-community li span{font:11px/1.8 var(--mono);color:var(--muted)}.project-community .repository-access{margin-bottom:0;font-size:12px}.cloud-starter{margin:22px 0 0}.cloud-starter p{color:var(--muted);font-size:13px;line-height:1.8}.cloud-starter small{color:var(--muted);font-size:12px;line-height:1.8;display:block}.cloud-starter .action-link{border-color:var(--lime);color:var(--text)}.runtime-table td small{color:var(--muted);margin-top:8px;font-size:11px;display:block}@media (width<=750px){.project-community ul{grid-template-columns:1fr}.project-community{padding:20px}}.api-header[data-astro-cid-qyglcwpb]{border-bottom:0;margin-bottom:22px;padding-bottom:0}.api-header[data-astro-cid-qyglcwpb] .lead[data-astro-cid-qyglcwpb]{max-width:680px}.article-meta[data-astro-cid-qyglcwpb]{flex-wrap:wrap}wu-api-explorer[data-astro-cid-qyglcwpb]{min-width:0;display:block}.composition-source[data-astro-cid-cqf2iuqk]{border-top:1px solid var(--line);min-width:0;margin-top:24px;padding-top:22px}.source-heading[data-astro-cid-cqf2iuqk] h2[data-astro-cid-cqf2iuqk]{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:550}.source-heading[data-astro-cid-cqf2iuqk] p[data-astro-cid-cqf2iuqk]{color:var(--muted);margin:8px 0 14px;font-size:12px;line-height:1.7}.source-links[data-astro-cid-cqf2iuqk]{flex-wrap:wrap;gap:12px 32px;margin:0 0 18px;padding:0;list-style:none;display:flex}.source-links[data-astro-cid-cqf2iuqk] li[data-astro-cid-cqf2iuqk]{flex-wrap:wrap;align-items:baseline;gap:8px 14px;min-width:0;display:flex}.source-links[data-astro-cid-cqf2iuqk] a[data-astro-cid-cqf2iuqk]{text-underline-offset:4px;overflow-wrap:anywhere;font-size:12px;line-height:1.7}.source-links[data-astro-cid-cqf2iuqk] a[data-astro-cid-cqf2iuqk][download]{color:var(--muted);font-size:11px}details[data-astro-cid-cqf2iuqk]{border:1px solid var(--line);background:var(--surface);min-width:0}summary[data-astro-cid-cqf2iuqk]{cursor:pointer;padding:16px 18px;font-size:13px;line-height:1.7}details[data-astro-cid-cqf2iuqk][open] summary[data-astro-cid-cqf2iuqk]{border-bottom:1px solid var(--line)}.composition-source[data-astro-cid-cqf2iuqk] .prose[data-astro-cid-cqf2iuqk]{min-width:0;max-width:920px;padding:0 20px 16px}.composition-source[data-astro-cid-cqf2iuqk] pre[data-astro-cid-cqf2iuqk]{max-width:100%;margin:18px 0}.composition-source[data-astro-cid-cqf2iuqk] pre[data-astro-cid-cqf2iuqk] code[data-astro-cid-cqf2iuqk]{white-space:pre-wrap;overflow-wrap:anywhere}.composition-source[data-astro-cid-cqf2iuqk] pre[data-astro-cid-cqf2iuqk]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=760px){.source-links[data-astro-cid-cqf2iuqk]{gap:12px;display:grid}.composition-source[data-astro-cid-cqf2iuqk] .prose[data-astro-cid-cqf2iuqk]{padding-inline:14px}summary[data-astro-cid-cqf2iuqk]{padding:14px;font-size:12px}}
