@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--font-ui:"IBM Plex Sans",system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--gl-gray:#c6c6c6;--gl-light:#e8e8e8;--gl-white:#fff;--gl-ink:#101010;--gl-rule:#666;--gl-soft-rule:#9a9a9a;--gl-blue:#0000a8;--gl-deep:#000078;--gl-cyan:#008ea1;--gl-amber:#b87900;--gl-attention:#fff4dc;--gl-font:"IBM Plex Sans",system-ui,sans-serif;--gl-mono:"IBM Plex Mono",ui-monospace,monospace}*{box-sizing:border-box}html{scroll-padding-top:16px}body{background:var(--gl-gray);color:var(--gl-ink);font:1rem/1.55 var(--gl-font);margin:0}button,input,select,textarea{font:inherit;accent-color:var(--gl-blue)}a{color:var(--gl-blue);text-underline-offset:3px}a:hover{color:var(--gl-deep)}:focus-visible{outline:1px dotted var(--gl-ink);outline-offset:3px}::selection{background:var(--gl-blue);color:#fff}h1,h2,h3,p,figure,dl,dd{margin:0}img,video{max-width:100%;height:auto;display:block}button,a{touch-action:manipulation}[hidden]{display:none!important}.gl-desktop{width:calc(100% - 2 * var(--gl-edge));max-width:3600px;margin:var(--gl-edge) auto;border:1px solid var(--gl-rule);background:var(--gl-gray)}.gl-titlebar{background:var(--gl-blue);color:#fff;min-height:36px;font:600 13px/1.4 var(--gl-font);align-items:center;gap:24px;padding:4px 12px;display:flex}.gl-titlebar .gl-brand{color:#fff;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:flex}.gl-titlebar .gl-brand img{width:20px;height:20px}.gl-titlebar>.gl-state{margin-left:auto}.gl-titlebar a:focus-visible{outline-color:#fff}.gl-menu{border-bottom:1px solid var(--gl-rule);background:var(--gl-gray);min-height:34px;font:13px/1.5 var(--gl-font);flex-wrap:wrap;gap:0;padding:4px 8px;display:flex}.gl-menu a{color:var(--gl-ink);padding:4px 12px;text-decoration:none}.gl-menu a:hover{background:var(--gl-light)}.gl-menu a[aria-current]{background:var(--gl-blue);color:#fff}.gl-workspace{grid-template-columns:clamp(208px,12vw,288px) minmax(0,1fr);align-items:stretch;display:grid}.gl-directory{border-right:1px solid var(--gl-rule);background:var(--gl-light);min-width:0;font-size:13px}.gl-caption{border-bottom:1px solid var(--gl-rule);background:var(--gl-gray);font:600 13px/1.4 var(--gl-mono);padding:8px 12px}.gl-directory nav a{border-bottom:1px solid var(--gl-soft-rule);color:var(--gl-ink);align-items:baseline;gap:8px;padding:12px;line-height:1.4;text-decoration:none;display:flex}.gl-directory nav a:hover{background:#fff}.gl-directory nav a[aria-current]{background:var(--gl-blue);color:#fff}.gl-index{font:12px/1.4 var(--gl-mono);color:inherit}.gl-directory-note{border-bottom:1px solid var(--gl-soft-rule);padding:20px 12px}.gl-directory-note p{margin-top:12px}.gl-directory-source{padding:12px;font-size:13px;display:block}.gl-content{min-width:0;padding:var(--gl-space);background:#f2f2f2}.gl-introduction{justify-content:space-between;align-items:center;gap:24px;margin:0 0 24px;display:flex}.gl-introduction h1{margin:8px 0;font-size:24px;font-weight:600;line-height:1.3}.gl-introduction p:not(.gl-kicker){max-width:65ch}.gl-kicker,.gl-state{font:500 12px/1.5 var(--gl-mono)}.gl-kicker{color:var(--gl-rule)}.gl-counts{border:1px solid var(--gl-rule);background:#fff;flex-shrink:0;display:flex}.gl-counts>div{border-right:1px solid var(--gl-rule);padding:8px 16px}.gl-counts>div:last-child{border:0}.gl-counts dt{font:12px/1.5 var(--gl-mono);text-transform:uppercase}.gl-counts dd{font:500 28px/1.4 var(--gl-mono);font-variant-numeric:tabular-nums}.gl-pane{border:1px solid var(--gl-rule);background:#fff;min-width:0;margin:0 0 24px}.gl-pane-title{background:var(--gl-blue);color:#fff;min-height:30px;font:600 13px/1.4 var(--gl-mono);justify-content:space-between;align-items:center;gap:16px;margin:0;padding:6px 12px;display:flex}.gl-pane-title h2{font:inherit;color:inherit;margin:0}.gl-pane-title>span{font-size:12px}.gl-pane-title.gl-linked{background:var(--gl-cyan);color:var(--gl-ink)}.gl-featured{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gl-featured article{border-right:1px solid var(--gl-rule);min-width:0;padding:20px}.gl-featured article:last-child{border-right:0}.gl-featured h3{margin:8px 0 12px;font-size:20px;font-weight:600}.gl-featured h3 a{justify-content:space-between;gap:12px;text-decoration:none;display:flex}.gl-featured p:not(.gl-kicker){min-height:75px;font-size:15px;line-height:1.6}.gl-workflow{border:1px solid var(--gl-soft-rule);background:var(--gl-light);grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0;display:grid}.gl-workflow>div{border-right:1px solid var(--gl-soft-rule);flex-direction:column;gap:8px;min-width:0;padding:12px 8px;display:flex;position:relative}.gl-workflow>div:last-child{background:var(--gl-gray);border:0}.gl-workflow strong{font:500 12px/1.5 var(--gl-mono);overflow-wrap:anywhere}.gl-workflow>div>span:last-child:not(:first-child){position:absolute;top:8px;right:8px}.gl-pane>.gl-workflow{margin:20px}.gl-button{border:1px solid var(--gl-rule);background:var(--gl-gray);min-height:34px;color:var(--gl-ink);font:500 13px/1.5 var(--gl-font);align-items:center;gap:12px;padding:6px 12px;text-decoration:none;display:inline-flex}.gl-button:hover{background:var(--gl-light);color:var(--gl-ink)}.gl-button:active{box-shadow:inset 1px 1px var(--gl-rule)}.gl-render-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));display:grid}.gl-render-grid figure{border-right:1px solid var(--gl-rule);min-width:0}.gl-render-grid figure:last-child{border:0}.gl-render-link{background:#fff;padding:8px;display:block}.gl-render-link:hover{background:var(--gl-light)}.gl-render-link img{aspect-ratio:4/3;object-fit:contain;width:100%;height:auto}.gl-render-grid figcaption{border-top:1px solid var(--gl-soft-rule);background:var(--gl-light);padding:12px}.gl-render-grid figcaption .gl-state{margin-bottom:8px;font-size:12px;display:block}.gl-render-grid figcaption a{font-size:14px;font-weight:500}.gl-caution{background:var(--gl-attention);border-left:4px solid var(--gl-amber);font:13px/1.6 var(--gl-font);margin:0 0 24px;padding:12px 16px}.gl-pane>.gl-caution{border-top:1px solid var(--gl-soft-rule);margin:0}.gl-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gl-flow-grid figure{border-right:1px solid var(--gl-rule);min-width:0}.gl-flow-grid figure:last-child{border:0}.gl-media-label{background:var(--gl-light);border-bottom:1px solid var(--gl-rule);grid-template-columns:1fr auto;gap:4px 12px;padding:12px;display:grid}.gl-media-label>span{font:12px/1.5 var(--gl-mono)}.gl-media-label>span:last-child{grid-area:1/2/3;align-self:center}.gl-media-label h3{font-size:16px}.gl-flow-grid video{aspect-ratio:18/11;background:#fff;width:100%}.gl-flow-grid figcaption{border-top:1px solid var(--gl-rule);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:12px;font-size:13px;display:flex}.gl-register-description{background:var(--gl-light);border-bottom:1px solid var(--gl-rule);padding:12px;font-size:14px}.gl-register-head,.gl-project-row{grid-template-columns:minmax(170px,1fr) minmax(0,2.2fr) 36px;align-items:baseline;gap:16px;padding:12px;display:grid}.gl-register-head{background:var(--gl-gray);font:12px/1.5 var(--gl-mono);border-bottom:1px solid var(--gl-rule);padding-top:6px;padding-bottom:6px}.gl-project-row{color:var(--gl-ink);border-bottom:1px solid var(--gl-soft-rule);font-size:14px;text-decoration:none}.gl-project-row:last-child{border:0}:is(.gl-project-row:hover,.gl-project-row:focus-visible){background:var(--gl-blue);color:#fff}.gl-project-row strong{font-weight:600}.gl-project-row .gl-row-action{justify-self:center}.gl-statusbar{border-top:1px solid var(--gl-rule);background:var(--gl-gray);font:12px/1.5 var(--gl-mono);align-items:stretch;gap:0;min-height:26px;display:flex}.gl-statusbar>*{border-right:1px solid var(--gl-rule);padding:4px 12px}.gl-statusbar>a{border-right:0;margin-left:auto}.gl-breadcrumb{flex-wrap:wrap;gap:8px;margin-bottom:24px;font-size:13px;display:flex}.gl-state-line{background:var(--gl-light);border:1px solid var(--gl-rule);font:13px/1.5 var(--gl-mono);margin-bottom:24px;padding:12px}.gl-detail-render img{object-fit:contain;width:100%;height:auto;max-height:560px;padding:16px}.gl-detail-render figcaption{background:var(--gl-light);border-top:1px solid var(--gl-rule);padding:12px;font-size:13px}.gl-detail-columns{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px;display:grid}.gl-prose{padding:20px}.gl-prose p{margin-bottom:20px}.gl-prose h3{margin:20px 0 12px;font-size:18px}.gl-prose ul{margin:0;padding-left:20px}.gl-prose li{margin:8px 0}.gl-link-list a{border-bottom:1px solid var(--gl-soft-rule);justify-content:space-between;gap:12px;padding:16px;font-size:14px;text-decoration:none;display:flex}.gl-link-list a:last-child{border:0}.gl-skip{z-index:9999;border:1px solid var(--gl-rule);background:#fff;padding:12px;position:fixed;top:-100px;left:8px}.gl-skip:focus{top:8px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{body,.gl-content{background:#fff}.gl-desktop{border:0;margin:0}.gl-directory,.gl-menu{display:none}.gl-workspace{display:block}.gl-pane{break-inside:avoid}.gl-titlebar,.gl-pane-title{color:#000;background:var(--gl-light)}}:root{--gl-edge:clamp(8px,1vw,32px);--gl-space:clamp(16px,1.5vw,32px);--gl-gap:clamp(16px,1.25vw,32px);--gl-reading:72ch}.gl-desktop,.gl-workspace,.gl-content,.gl-pane,.gl-featured,.gl-flow-grid,.gl-render-grid,.gl-detail-columns{min-width:0}.gl-content :where(h1,h2,h3,p,a,span,li,dt,dd),.gl-titlebar,.gl-statusbar{overflow-wrap:anywhere}.gl-titlebar{flex-wrap:wrap;gap:8px 24px}.gl-titlebar>.gl-brand{flex-shrink:0}.gl-titlebar>span{min-width:0}.gl-pane-title{flex-wrap:wrap;gap:4px 16px}.gl-pane-title>*{min-width:0}.gl-pane-title h2{flex:18ch}.gl-pane-title>span{flex:0 auto}.gl-introduction{gap:var(--gl-gap);flex-wrap:wrap}.gl-introduction>div{flex:360px;min-width:0}.gl-counts{max-width:100%;flex-shrink:1;min-inline-size:min(100%,240px)}.gl-counts>div{flex:1;min-width:0;padding:8px clamp(8px,1.2vw,24px)}.gl-counts dt{overflow-wrap:normal}.gl-featured article{padding:var(--gl-space);flex-direction:column;align-items:flex-start;display:flex}.gl-featured article>p{max-width:var(--gl-reading)}.gl-featured h3,.gl-featured .gl-workflow{width:100%}.gl-featured .gl-button{margin-top:auto}.gl-featured p:not(.gl-kicker){min-height:0}.gl-workflow{container-type:inline-size}.gl-workflow>div{padding-right:20px}.gl-workflow strong{overflow-wrap:normal;word-break:normal}.gl-workflow>div>span:last-child:not(:first-child){right:6px}.gl-render-grid figure{flex-direction:column;display:flex}.gl-render-grid figcaption{flex:1}.gl-render-grid img{max-height:clamp(260px,23vw,520px)}.gl-media-label{grid-template-columns:minmax(0,1fr) auto}.gl-flow-grid figure{flex-direction:column;display:flex}.gl-flow-grid figcaption{margin-top:auto}.gl-project-row>span:not(.gl-row-action){max-width:90ch}.gl-directory{min-width:0;position:relative}.gl-directory-inner{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:calc(100dvh - 16px);position:sticky;top:8px;overflow-y:auto}.gl-directory nav a{min-height:44px}.gl-directory nav a>span:last-child{overflow-wrap:anywhere;min-width:0}.gl-groups-toggle{display:none}.gl-prose{max-width:calc(var(--gl-reading) + 40px)}.gl-link-list a{min-width:0}.gl-detail-columns{gap:var(--gl-gap)}.gl-project-detail{grid-template-columns:minmax(0,1fr);align-content:start;display:grid}.gl-project-detail>.gl-button{white-space:normal;justify-self:start;max-width:100%}.gl-detail-render img{max-height:clamp(360px,50vh,900px)}.gl-statusbar{flex-wrap:wrap}.gl-statusbar>*{min-width:0}.gl-home>#projects{gap:var(--gl-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,600px),1fr));align-items:start;display:grid}.gl-home>#projects>.gl-register{margin-bottom:0}.gl-home>#projects>.gl-register:last-child{margin-bottom:var(--gl-gap)}@container (width<=320px){.gl-workflow>div{padding:8px 18px 8px 8px}.gl-workflow strong{overflow-wrap:anywhere;font-size:11px}}@media (min-width:1760px){.gl-home{gap:var(--gl-gap);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.gl-home>.gl-introduction,.gl-home>#airflow,.gl-home>#projects{grid-column:1/-1}.gl-home>.gl-pane,.gl-home>.gl-introduction{margin-bottom:0}.gl-home .gl-render-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gl-home .gl-render-link img{aspect-ratio:1;max-height:420px}.gl-home .gl-featured{grid-template-columns:1fr}.gl-home .gl-featured article{border-right:0;border-bottom:1px solid var(--gl-rule)}.gl-home .gl-featured article:last-child{border-bottom:0}.gl-home .gl-featured .gl-workflow{margin:12px 0}.gl-home .gl-flow-grid video{object-fit:contain;max-height:700px}.gl-project-detail:has(.gl-detail-render){column-gap:var(--gl-gap);grid-template-columns:minmax(0,1.2fr) minmax(360px,1fr)}.gl-project-detail>.gl-breadcrumb,.gl-project-detail>.gl-introduction,.gl-project-detail>.gl-state-line,.gl-project-detail>.gl-caution{grid-column:1/-1}.gl-project-detail>.gl-detail-render{grid-area:4/1/7}.gl-project-detail:has(.gl-detail-render)>.gl-detail-columns{grid-column:2;display:block}.gl-project-detail:has(.gl-detail-render)>.gl-button{grid-column:2}}@media (min-width:2800px){.gl-home .gl-featured{grid-template-columns:repeat(2,minmax(0,1fr))}.gl-home .gl-featured article{border-right:1px solid var(--gl-rule);border-bottom:0}.gl-home .gl-featured article:last-child{border-right:0}.gl-home>#projects{grid-template-columns:repeat(3,minmax(0,1fr))}.gl-home .gl-flow-grid video{max-height:900px}.gl-content,.gl-prose{font-size:17px}}@media (max-width:1199px){.gl-introduction{align-items:flex-start}.gl-detail-columns{grid-template-columns:1fr;gap:0}.gl-featured{grid-template-columns:1fr}.gl-featured article{border-right:0;border-bottom:1px solid var(--gl-rule)}.gl-featured article:last-child{border:0}.gl-flow-grid{grid-template-columns:1fr}.gl-flow-grid figure{border-right:0;border-bottom:1px solid var(--gl-rule)}.gl-render-grid{grid-template-columns:1fr}.gl-render-grid figure{border-right:0;border-bottom:1px solid var(--gl-rule);grid-template-columns:1fr 1fr;display:grid}.gl-render-grid figcaption{border-top:0;border-left:1px solid var(--gl-rule);flex-direction:column;justify-content:center;display:flex}.gl-render-grid img{max-height:300px}}@media (max-width:899px){:root{--gl-edge:0px;--gl-space:clamp(12px,3vw,24px);--gl-gap:16px}.gl-desktop{border:0;width:100%;margin:0}.gl-workspace{display:block}.gl-directory{z-index:30;border-right:0;border-bottom:1px solid var(--gl-rule);position:sticky;top:0}.gl-directory-inner{scrollbar-gutter:auto;max-height:70dvh;position:static;overflow-y:auto}.gl-directory .gl-caption,.gl-directory-note,.gl-directory-source{display:none}.gl-groups-toggle{background:var(--gl-gray);width:100%;min-height:44px;color:var(--gl-ink);font:600 12px/1.5 var(--gl-mono);text-align:left;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.gl-groups-toggle:hover{background:var(--gl-light)}.gl-directory nav{display:none}.gl-directory[data-expanded=true] nav{border-top:1px solid var(--gl-rule);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gl-directory nav a{border-right:1px solid var(--gl-soft-rule);padding:10px 12px}.gl-content [id]{scroll-margin-top:60px}.gl-content .gl-register-head{display:none}.gl-project-row{grid-template-columns:minmax(0,1fr) 24px;gap:4px 12px}.gl-project-row>span:not(.gl-row-action){grid-area:2/1}.gl-project-row>.gl-row-action{grid-area:1/2/3;align-self:center}.gl-titlebar>.gl-state{display:none}.gl-menu a,.gl-button,.gl-link-list a{align-items:center;min-height:44px;display:inline-flex}.gl-link-list a{display:flex}.gl-titlebar>span{font-size:12px}.gl-statusbar>a{margin-left:0}}@media (max-width:479px){.gl-titlebar{gap:4px 12px;padding:8px 12px}.gl-titlebar>span{flex-basis:100%;padding-left:28px}.gl-introduction{gap:16px}.gl-introduction>div{flex-basis:100%}.gl-counts{width:100%}.gl-counts dt{font-size:11px}.gl-counts dd{font-size:24px}.gl-render-grid figure{border-bottom:1px solid var(--gl-rule);display:flex}.gl-render-grid figcaption{border-left:0;border-top:1px solid var(--gl-rule)}.gl-media-label{flex-wrap:wrap;gap:4px 12px;display:flex}.gl-media-label h3{flex:100%;order:1}.gl-featured h3{font-size:18px}.gl-featured h3 a{align-items:baseline}.gl-workflow{display:block}.gl-workflow>div{border-right:0;border-bottom:1px solid var(--gl-soft-rule);flex-direction:row;align-items:baseline;gap:12px;padding:8px 28px 8px 12px;display:flex}.gl-workflow>div>span:last-child:not(:first-child){top:8px;right:10px;transform:rotate(90deg)}.gl-workflow strong{overflow-wrap:normal;font-size:12px}.gl-pane>.gl-workflow{margin:12px}.gl-directory[data-expanded=true] nav{grid-template-columns:1fr}.gl-caution,.gl-prose{padding:12px}.gl-pane-title{padding:8px 12px}.gl-statusbar>*{border-right:0;padding:6px 12px}}@media (max-width:359px){.gl-menu{grid-template-columns:1fr 1fr;padding:4px;display:grid}.gl-menu a{padding:6px 12px}.gl-pane-title h2{font-size:12px}.gl-directory nav a{min-height:44px}}@media print{.gl-directory{display:none}.gl-content{display:block!important}.gl-desktop{width:100%}.gl-home>#projects{display:block}.gl-pane{break-inside:avoid}.gl-project-detail>*{grid-area:auto!important}}body.gridline :where(main,section,article,aside,nav,figure,header,footer,div){min-width:0}body.gridline :where(h1,h2,h3,p,li,a,span,dt,dd,code,label){overflow-wrap:anywhere}body.gridline>main{width:calc(100% - 2 * var(--gl-edge));max-width:2560px;padding:var(--gl-space)!important}body.gridline .gl-outline{width:calc(100% - 2 * var(--gl-edge));max-width:2560px}body.gridline main :where(p,li),body.gridline main :where(.hero-copy,.intro-copy,.model-intro,.mechanism-copy) p,body.gridline main>p{max-width:var(--gl-reading)}body.gridline main>.notice,body.gridline :where(.controls,.workspace aside) :where(p,li){max-width:none}body.gridline :where(.hero,.mechanism,.cfd-intro,.cfd-display,.viewer-grid,.workspace,.guide-grid,.fix-grid,.proof-grid,.metrics,.m1-detail-grid,.design-line,.making-details,.build-numbers,.notes){gap:var(--gl-gap)}body.gridline .intro{flex-wrap:wrap;align-items:start;display:flex}body.gridline .intro>div{flex:400px}body.gridline .intro>.badge{white-space:normal;flex:0 auto;max-width:100%}body.gridline :where(.section-top,.section-heading){flex-wrap:wrap}body.gridline .section-top>*{min-width:0}body.gridline .section-heading>div{flex:320px}body.gridline .section-heading>p{flex:320px;max-width:70ch}body.gridline .model-frame iframe{height:clamp(480px,70dvh,1100px);min-height:0;max-height:none}body.gridline :where(img,video,canvas,iframe){max-width:100%}body.gridline .viewport{height:clamp(420px,65dvh,1000px)}body.gridline .workspace{grid-template-columns:minmax(0,1fr) minmax(260px,320px)}body.gridline .workspace .stage{min-height:clamp(520px,70dvh,1100px)}body.gridline .viewbar{gap:8px;top:12px;left:12px;right:12px}body.gridline .viewbar button{white-space:normal}body.gridline :where(.viewer-top,.viewer-bottom,.model-toolbar,.caption,.native-caption){flex-wrap:wrap;gap:8px;min-height:36px}body.gridline .viewer-bottom>span{max-width:none}body.gridline .m1-sequence-status{flex-wrap:wrap;justify-content:flex-start}body.gridline .m1-sequence-status>*{max-width:100%}body.gridline .checks label{align-items:center;gap:8px;min-height:36px;display:flex}body.gridline .checks label input{flex-shrink:0}body.gridline :where(button,input,select,.button,.download-main){white-space:normal;max-width:100%}body.gridline .controls select{width:100%;min-width:0}body.gridline :where(.toggles,.controls) label{overflow-wrap:anywhere}body.gridline .toggles input{flex-shrink:0}body.gridline :where(pre,.terminal-body){overscroll-behavior-x:contain;white-space:pre;overflow-wrap:normal;max-width:100%;overflow-x:auto}body.gridline .table-wrap{overscroll-behavior-x:contain;overflow:auto}body.gridline table{max-width:100%}body.gridline table:not(.gl-preserve-table){overflow-wrap:anywhere}body.gridline th,body.gridline td{padding:8px clamp(6px,1vw,16px)}body.gridline .hero{grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr)}body.gridline .hero-figure img{object-fit:contain;max-height:min(70dvh,1000px)}body.gridline .gl-journal-render{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}body.gridline .gl-journal-render img{max-height:min(65dvh,850px)}body.gridline :where(.metrics,.build-numbers){grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}body.gridline :where(.m1-detail-grid,.design-line,.making-details,.notes){grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}body.gridline .m1-detail-grid img{object-fit:contain;height:auto;max-height:420px}body.gridline .cfd-display>button{height:clamp(380px,65dvh,1000px)}body.gridline.gl-cfd main>figure{width:100%;margin-left:0;margin-right:0}body.gridline.gl-cfd figure :where(img,video){object-fit:contain;background:#fff;width:100%;max-height:min(85dvh,1400px)}body.gridline.gl-cfd :where(figure,table){margin-top:20px;margin-bottom:20px}body.gridline.gl-reference>main,body.gridline.gl-usage>main,body.gridline>main.guide{max-width:1440px!important}body.gridline.gl-reference main>section,body.gridline .guide>section{padding:var(--gl-space)}body.gridline.gl-usage .container{width:100%;max-width:none;padding:0}body.gridline.gl-usage .tab-panel{min-width:0;max-width:100%}body.gridline.gl-usage .terminal-body .t-line{white-space:pre;overflow-wrap:normal}body.gridline .gl-global-header,body.gridline .gl-global-menu{padding-left:clamp(12px,2vw,48px)!important;padding-right:clamp(12px,2vw,48px)!important}body.gridline .gl-global-footer>*{overflow-wrap:anywhere;max-width:100%}:is(body.gridline main>section:has(>.section-title),body.gridline main>section:has(>.section-top)){border:1px solid var(--gl-rule);background:#fff;padding:20px!important}body.gridline.embedded>main{width:100%;max-width:none!important}body.gridline.embedded .workspace{height:100dvh;margin:0}body.gridline.embedded .stage{min-height:0}body.gridline.embedded .workspace aside{overflow-y:auto}@media (min-width:1760px){body.gridline .viewer-grid,body.gridline .workspace{grid-template-columns:minmax(0,1fr) 360px}body.gridline .controls,body.gridline.gl-reference main>section,body.gridline .guide>section{padding:24px}body.gridline.gl-reference main>p{max-width:var(--gl-reading)}body.gridline .mechanism{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}body.gridline .cfd-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body.gridline .cfd-display{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}}@media (max-width:1099px){body.gridline .hero{grid-template-columns:minmax(0,1fr)}body.gridline .hero-figure img{max-height:640px}body.gridline .workspace{grid-template-columns:minmax(0,1fr) 280px}body.gridline .viewer-grid{grid-template-columns:minmax(0,1fr)}body.gridline .viewer-grid .controls{border-left:0}body.gridline .exploded-layout,body.gridline .cfd-display,body.gridline .mechanism{grid-template-columns:minmax(0,1fr)}body.gridline .hero-copy{align-self:stretch}body.gridline .load-targets{flex-wrap:wrap}}@media (max-width:799px){body.gridline .workspace{grid-template-columns:minmax(0,1fr)!important}body.gridline .workspace .stage{height:clamp(360px,70svh,640px);min-height:0}body.gridline .workspace aside{padding:16px}body.gridline .workspace .toggles{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}body.gridline.embedded .workspace{height:auto}body.gridline.embedded .workspace .stage{height:clamp(360px,70svh,640px);min-height:0}body.gridline.embedded .workspace aside{overflow:visible}body.gridline .gl-journal-render{grid-template-columns:minmax(0,1fr)}body.gridline .gl-journal-render figcaption{border-left:0;border-top:1px solid var(--gl-rule)}body.gridline .cfd-intro{grid-template-columns:minmax(0,1fr)}body.gridline .section-heading{display:block}body.gridline :where(.model-intro,.making-intro){max-width:none;margin-top:12px}body.gridline .cfd-display>button{aspect-ratio:1.5;height:auto}body.gridline .intro{display:block}body.gridline :where(.guide-grid,.fix-grid,.proof-grid,.cable-figures){grid-template-columns:minmax(0,1fr)}body.gridline :where(button,.button,.download-main,.tab-btn){min-height:44px}body.gridline .gl-global-menu a,body.gridline .gl-outline a{min-height:40px}body.gridline .gl-outline{width:100%}body.gridline.gl-usage .feature{grid-template-columns:minmax(0,1fr)}body.gridline .guide th,body.gridline .guide td{font-size:13px}body.gridline .metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))!important}}@media (max-width:479px){body.gridline>main{border-left:0;border-right:0;width:100%;padding:12px!important}body.gridline>header:not(.gl-global-header){gap:12px;padding:12px!important}body.gridline>header nav{gap:4px 12px;width:100%}body.gridline>header nav a{align-items:center;min-height:36px;display:inline-flex}body.gridline .gl-global-header{padding:8px 12px!important}body.gridline .gl-global-header>span{display:none}body.gridline .gl-global-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid;padding:8px!important}body.gridline .gl-global-menu a{text-align:center;justify-content:center;min-height:40px;padding:8px}body.gridline .gl-outline{overscroll-behavior-x:contain;scroll-snap-type:x proximity;flex-wrap:nowrap;align-items:stretch;overflow-x:auto;padding:8px!important}body.gridline .gl-outline>*{scroll-snap-align:start;white-space:normal;flex:none;max-width:75vw}body.gridline .gl-outline a{min-height:40px}body.gridline .viewbar{background:var(--gl-gray);border-bottom:1px solid var(--gl-rule);z-index:1;flex-wrap:wrap;gap:4px;padding:8px;display:flex;position:relative;top:auto;left:auto;right:auto}body.gridline .viewbar button{flex:auto;min-height:40px;padding:6px 8px}body.gridline .workspace .stage{height:480px;min-height:0}body.gridline .caption{flex-direction:column;gap:4px;font-size:12px;bottom:12px;left:12px;right:12px}body.gridline .viewport{height:420px}body.gridline :where(.viewer-top,.viewer-bottom,.model-toolbar){gap:8px;padding:8px}body.gridline .viewer-bottom button{padding:6px 8px}body.gridline :where(.metrics,.m1-detail-grid,.design-line,.making-details,.build-numbers,.notes){grid-template-columns:minmax(0,1fr)!important}body.gridline .load-targets{display:block}body.gridline .model-frame iframe{height:700px;min-height:0}body.gridline .section-top>span,body.gridline .section-heading>span{white-space:normal}body.gridline .hero-copy{padding:12px}body.gridline .download-actions{flex-direction:column;align-items:stretch;display:flex}body.gridline :where(.hero-actions,.download-actions) .button{justify-content:space-between;gap:8px}body.gridline table{overscroll-behavior-x:contain;display:block;overflow-x:auto}body.gridline table th,body.gridline table td{min-width:80px;font-size:13px}body.gridline .table-wrap table{display:table}body.gridline .fix-compare{grid-template-columns:minmax(0,1fr)}body.gridline.gl-usage .install-tabs{grid-template-columns:1fr;gap:0;display:grid}body.gridline.gl-usage .tab-btn{border:1px solid var(--gl-rule);text-align:left}body.gridline.gl-usage .terminal-body{padding:12px}body.gridline .gl-global-footer{display:block}body.gridline .gl-global-footer>*{border-right:0;display:block}body.gridline footer:not(.gl-statusbar){flex-wrap:wrap;gap:12px;display:flex}}.gl-introduction{background:var(--gl-gray);border:1px solid var(--gl-rule);padding:var(--gl-space)}.gl-counts{color:var(--gl-ink);border-color:var(--gl-rule)}.gl-pane{border-color:var(--gl-rule)}.gl-featured article{background:var(--gl-light);border-top:4px solid var(--gl-blue)}.gl-featured article:nth-child(2){background:var(--gl-gray)}.gl-featured .gl-workflow{background:#fff}.gl-featured .gl-use-case{border-top:1px solid var(--gl-soft-rule);margin-top:16px;margin-bottom:20px;padding-top:12px;font-size:14px}.gl-project-actions{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.gl-project-actions .gl-button{margin-top:0}.gl-featured h3 a{text-underline-offset:4px;text-decoration:underline;text-decoration-thickness:1px}.gl-menu{gap:4px}.gl-menu a{border:1px solid var(--gl-rule);min-height:34px;color:var(--gl-blue);background:#fff;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}:is(.gl-menu a:hover,.gl-menu a:focus-visible){background:var(--gl-blue);color:#fff}.gl-menu a[aria-current]{border-color:var(--gl-deep)}.gl-button{border:1px solid var(--gl-blue);color:var(--gl-blue);white-space:normal;background:#fff;font-weight:600}:is(.gl-button:hover,.gl-button:focus-visible){background:var(--gl-blue);color:#fff}.gl-link-list a{text-underline-offset:4px;border-bottom:1px solid var(--gl-soft-rule);background:#fff;text-decoration:underline}.gl-link-list a>span{border:1px solid var(--gl-blue);width:28px;height:28px;color:var(--gl-blue);background:#fff;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.gl-link-list a:hover{background:var(--gl-light)}.gl-directory nav a{color:var(--gl-blue);border-bottom-color:var(--gl-soft-rule);background:#fff;padding-right:28px;position:relative}.gl-directory nav a:after{content:"→";color:inherit;position:absolute;right:10px}.gl-directory nav a:hover{background:var(--gl-blue);color:#fff}.gl-directory .gl-caption{background:var(--gl-gray);color:var(--gl-ink)}.gl-directory-note{background:var(--gl-gray)}.gl-directory-source{background:var(--gl-light);text-decoration:underline}.gl-register-description{background:var(--gl-light);border-left:4px solid var(--gl-blue)}.gl-register-head,.gl-project-row{grid-template-columns:minmax(160px,1fr) minmax(0,2.2fr) 72px}.gl-project-row strong{color:var(--gl-blue);text-underline-offset:4px;text-decoration:underline}.gl-project-row .gl-row-action{border:1px solid var(--gl-blue);width:72px;min-height:32px;color:var(--gl-blue);font:600 12px/1.5 var(--gl-font);white-space:nowrap;background:#fff;justify-content:center;align-items:center;padding:4px 8px;text-decoration:none;display:inline-flex}:is(.gl-project-row:hover strong,.gl-project-row:focus-visible strong){color:#fff}.gl-render-link{outline-offset:-4px;text-decoration:none;position:relative}.gl-render-link:after{content:"OPEN PROJECT →";border:1px solid var(--gl-blue);color:var(--gl-blue);font:600 12px/1.5 var(--gl-mono);text-align:right;background:#fff;margin:4px 0 0;padding:8px 12px;display:block}.gl-render-link:hover:after{background:var(--gl-blue);color:#fff}.gl-render-link:focus-visible:after{background:var(--gl-blue);color:#fff}.gl-render-grid figcaption{background:var(--gl-gray)}.gl-render-grid figcaption a{font-weight:600;text-decoration:underline}.gl-flow-grid figcaption{background:var(--gl-light)}.gl-flow-grid figcaption a{border:1px solid var(--gl-blue);background:#fff;align-items:center;min-height:34px;padding:6px 10px;text-decoration:none;display:inline-flex}.gl-flow-grid figcaption a:hover{background:var(--gl-blue);color:#fff}.gl-media-label{background:var(--gl-gray)}.gl-groups-toggle{background:var(--gl-blue);color:#fff;border-bottom:1px solid var(--gl-deep)}.gl-groups-toggle:hover{background:var(--gl-deep)}.gl-groups-toggle:focus-visible{outline-offset:-4px;outline-color:#fff}body.gridline a:not([class]),body.gridline :where(.text-link,.download-secondary a,.guide a,.links a){text-underline-offset:3px;text-decoration:underline}body.gridline :is(button,.button,.download-main,.primary){color:var(--gl-blue);background:#fff;border:1px solid var(--gl-blue)!important;font-weight:600!important}body.gridline :is(button,.button,.download-main,.primary):hover,body.gridline :is(button.active,button[aria-pressed=true],.button-primary,.primary,.download-main){background:var(--gl-blue);color:#fff}body.gridline .gl-global-menu{gap:4px}body.gridline .gl-global-menu a{border:1px solid var(--gl-rule);min-height:34px;color:var(--gl-blue);background:#fff;justify-content:center;align-items:center;display:inline-flex;text-decoration:none!important}body.gridline .gl-global-menu a:hover{background:var(--gl-blue);color:#fff}body.gridline .gl-outline{background:var(--gl-gray);gap:4px;padding:8px}body.gridline .gl-outline a{border:1px solid var(--gl-soft-rule);min-height:32px;color:var(--gl-blue);background:#fff;align-items:center;text-decoration:none;display:inline-flex}body.gridline .gl-outline a:hover{background:var(--gl-blue);color:#fff}body.gridline .gl-outline span{align-items:center;display:inline-flex}body.gridline :is(.hero-copy,.intro){background:var(--gl-gray);border:1px solid var(--gl-rule);padding:var(--gl-space)!important}body.gridline .hero-copy .eyebrow,body.gridline .intro .eyebrow{color:var(--gl-ink)}body.gridline :where(.design-line,.making-details,.notes)>article{border-top:4px solid var(--gl-blue);background:var(--gl-light)}body.gridline :where(.viewer-top,.viewer-bottom,.model-toolbar){background:var(--gl-gray);border-color:var(--gl-rule)}body.gridline .controls{border-top:4px solid var(--gl-blue)}body.gridline a:has(>img){border:2px solid var(--gl-blue);display:block;position:relative}body.gridline a:has(>img):after{content:"OPEN IMAGE ↗";color:var(--gl-blue);font:600 12px/1.5 var(--gl-mono);text-align:right;background:#fff;padding:6px 12px;display:block}body.gridline a:has(>img):hover:after{background:var(--gl-blue);color:#fff}body.gridline .gl-global-header a:has(>img){border:0;display:inline-flex}body.gridline .gl-global-header a:has(>img):after{display:none}body.gridline .tab-btn.active{border-bottom:4px solid var(--gl-deep)!important}@media (max-width:899px){.gl-project-row{grid-template-columns:minmax(0,1fr) 72px}.gl-menu a,.gl-button,.gl-flow-grid figcaption a{min-height:44px}.gl-project-row .gl-row-action{min-height:36px}.gl-introduction{padding:var(--gl-space)}}@media (max-width:479px){.gl-project-row{grid-template-columns:minmax(0,1fr)}.gl-project-row .gl-row-action{grid-area:3/1;justify-self:start;min-height:40px;margin-top:8px}.gl-project-row>span:not(.gl-row-action){grid-area:2/1}}[data-project]{--project-field:#e8e8e8;--project-ink:#101010;--project-rule:#666}[data-project=trio]{--project-field:#008ea1;--project-ink:#101010;--project-rule:#000078}[data-project=lord-of-the-code]{--project-field:#101010;--project-ink:#fff;--project-rule:#b87900}[data-project=peg]{--project-field:#fff4dc;--project-rule:#b87900}[data-project=dell-5560-wall-mount]{--project-field:#000078;--project-ink:#fff;--project-rule:#008ea1}[data-project="5680-dock"]{--project-field:#101010;--project-ink:#fff;--project-rule:#b87900}[data-project=onshape-reference-align]{--project-field:#fff;--project-rule:#008ea1}[data-project=claude-statusline]{--project-field:#101010;--project-ink:#fff;--project-rule:#008ea1}[data-project=claude-usage]{--project-field:#101010;--project-ink:#fff;--project-rule:#666}[data-project=homekit-preview]{--project-field:#008ea1;--project-ink:#101010;--project-rule:#000078}[data-project] .gl-project-detail .gl-introduction{background:var(--project-field);color:var(--project-ink);border-left:8px solid var(--project-rule)}[data-project] .gl-project-detail .gl-introduction :is(h1,p){color:inherit}.gl-project-identity{background:var(--project-field);color:var(--project-ink);border-bottom:1px solid #666;border-left:8px solid var(--project-rule);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px clamp(16px,3vw,64px);display:grid}body.gridline .gl-project-identity :is(p,strong,span){color:inherit;font-family:var(--gl-font)}body.gridline .gl-project-identity p{max-width:75ch;margin:4px 0 0;font-size:14px;line-height:1.5}.gl-project-identity strong{font:600 18px/1.4 var(--gl-font);display:block}.gl-project-identity .gl-identity-type{font:12px/1.5 var(--gl-mono);text-transform:uppercase;margin-bottom:8px;display:block}.gl-identity-actions{flex-wrap:wrap;gap:8px;display:flex}body.gridline .gl-project-identity .gl-button{background:#fff;border:1px solid #666;min-height:40px;color:#0000a8!important;text-decoration:none!important}body.gridline[data-project=onshape-reference-align]>main>section[aria-label=Workspace\ preview]{background:#fff;border-top:8px solid #008ea1}body.gridline[data-project="5680-dock"] .model-section{border-top:8px solid #101010!important}body.gridline[data-project=dell-5560-wall-mount] :is(.m1-feature,.cfd-section){border-top:8px solid #008ea1!important}body.gridline[data-project=claude-usage] .terminal{border:8px solid #101010!important}body.gridline[data-project=claude-usage] .terminal-body{white-space:normal}body.gridline.embedded .gl-project-identity{display:none!important}@media (max-width:640px){.gl-project-identity{grid-template-columns:minmax(0,1fr);padding:16px 12px}.gl-identity-actions a{flex:1;justify-content:center}}@media print{.gl-project-identity,[data-project] .gl-project-detail .gl-introduction{color:#101010;background:#e8e8e8}}.sr-page{min-width:0}.sr-page .gl-pane{overflow:clip}.sr-hero-grid{grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);display:grid}.sr-hero-copy{align-self:center;padding:clamp(24px,4vw,64px)}.sr-hero h1{letter-spacing:-.035em;margin:16px 0 24px;font-size:clamp(36px,4vw,68px);line-height:1.05}.sr-hero-copy>p{max-width:48ch;margin-bottom:20px}.sr-hero-copy .sr-lede{font-weight:600}.sr-actions{flex-wrap:wrap;gap:12px;margin:20px 0;display:flex}.sr-actions .gl-button{min-height:44px}.sr-page .sr-primary{background:var(--gl-blue);color:#fff;border-color:var(--gl-blue)}.sr-page .sr-primary:hover{background:var(--gl-deep)}.sr-caption{color:var(--gl-rule);font-size:13px}.sr-figure{background:#fff;flex-direction:column;min-width:0;display:flex}.sr-figure>a{flex:1;display:block}.sr-figure img{object-fit:contain;width:100%;height:auto}.sr-hero .sr-figure{border-left:1px solid var(--gl-soft-rule)}.sr-hero .sr-figure>a{background:#f3f1e7}.sr-hero .sr-figure img{max-height:700px}.sr-figure figcaption{border-top:1px solid var(--gl-soft-rule);background:var(--gl-light);font:12px/1.5 var(--gl-mono);flex-wrap:wrap;justify-content:space-between;gap:8px 16px;padding:12px 16px;display:flex}.sr-figure figcaption a{flex-shrink:0}.sr-specs{border-top:1px solid var(--gl-rule);background:var(--gl-light);grid-template-columns:1.5fr 1fr 1fr;display:grid}.sr-specs>div{border-right:1px solid var(--gl-soft-rule);padding:16px 24px}.sr-specs>div:last-child{border-right:0}.sr-specs dt{font:12px/1.5 var(--gl-mono);text-transform:uppercase}.sr-specs dd{margin-top:6px;font-size:clamp(18px,1.6vw,26px)}.sr-specs small{font-size:13px}.sr-contents{border:1px solid var(--gl-rule);background:var(--gl-gray);flex-wrap:wrap;gap:4px;margin-bottom:24px;padding:8px;display:flex}.sr-contents a{min-height:44px;font:13px/1.5 var(--gl-mono);align-items:center;padding:8px 16px;display:inline-flex}.sr-two-column{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sr-two-column>:first-child{border-right:1px solid var(--gl-soft-rule)}.sr-copy{min-width:0;padding:clamp(20px,2.5vw,40px)}.sr-copy>p{max-width:76ch;margin:0 0 20px}.sr-copy>p:last-child{margin-bottom:0}.sr-copy h3{margin:0 0 20px;font-size:clamp(21px,2vw,28px);line-height:1.25}.sr-facts{margin:24px 0}.sr-facts>div{border-top:1px solid var(--gl-soft-rule);grid-template-columns:minmax(100px,.75fr) minmax(0,1.25fr);gap:16px;padding:10px 0;font-size:14px;display:grid}.sr-facts dt{font-weight:600}.sr-rule{border-top:1px solid var(--gl-soft-rule)}.sr-table-wrap{max-width:900px;margin:0 clamp(20px,2.5vw,40px) 28px;overflow-x:auto}.sr-table-wrap table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.sr-table-wrap caption{text-align:left;padding-bottom:12px;font-size:13px}.sr-table-wrap th,.sr-table-wrap td{border:1px solid var(--gl-soft-rule);text-align:right;padding:12px 16px}.sr-table-wrap th:first-child{text-align:left}.sr-table-wrap thead{background:var(--gl-light);font:13px/1.5 var(--gl-mono)}.sr-table-wrap tbody th{font-weight:500}.sr-steps{padding-left:24px}.sr-steps li{margin:16px 0;padding-left:8px}.sr-qualification{background:var(--gl-attention)}.sr-home-feature{grid-column:1/-1}.sr-home-feature .sr-hero-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.75fr)}.sr-home-feature .sr-hero-copy{padding:clamp(20px,3vw,48px)}.sr-home-feature h3{margin:10px 0 18px;font-size:clamp(26px,3vw,42px);line-height:1.15}.sr-home-feature .sr-home-image{border-left:1px solid var(--gl-soft-rule);background:#f3f1e7;display:block}.sr-home-feature img{object-fit:contain;width:100%;max-height:390px}@media (min-width:1760px){.sr-home-feature{grid-row:auto}.gl-home .gl-render-grid:has(figure:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1099px){.sr-hero-grid,.sr-two-column{grid-template-columns:minmax(0,1fr)}.sr-hero .sr-figure{border-left:0;border-top:1px solid var(--gl-soft-rule)}.sr-two-column>:first-child{border-right:0}.sr-two-column>:last-child{border-top:1px solid var(--gl-soft-rule)}.sr-hero .sr-figure img{max-height:640px}}@media (max-width:599px){.sr-home-feature .sr-hero-grid,.sr-specs{grid-template-columns:minmax(0,1fr)}.sr-specs>div{border-right:0;border-bottom:1px solid var(--gl-soft-rule);padding:12px 20px}.sr-specs>div:last-child{border-bottom:0}.sr-home-feature .sr-home-image{border-left:0;border-top:1px solid var(--gl-soft-rule)}.sr-hero-copy{padding:24px 20px}.sr-actions{flex-direction:column;align-items:stretch}.sr-actions .gl-button{justify-content:space-between}.sr-contents a{padding:8px}.sr-table-wrap th,.sr-table-wrap td{padding:10px 8px;font-size:13px}}@media print{.sr-hero-grid,.sr-two-column{display:block}.sr-contents{display:none}.sr-page .gl-pane{overflow:visible}}
