@font-face{font-family:"Crimson Pro";font-style:normal;font-display:swap;font-weight:200 900;src:url("../fonts/blog/crimson-pro-latin-wght-normal.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Crimson Pro";font-style:italic;font-display:swap;font-weight:200 900;src:url("../fonts/blog/crimson-pro-latin-wght-italic.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:100 800;src:url("../fonts/blog/jetbrains-mono-latin-wght-normal.woff2") format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}#main.blog-post-shell{max-width:112rem;margin-top:0;padding-right:clamp(1rem, 3vw, 4rem);padding-left:clamp(1rem, 3vw, 4rem)}.blog-post{width:100%;color:#404040;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-kerning:normal}.blog-post a{color:#2563a6}.blog-post__header{width:100%;max-width:46rem;margin:0 auto 3.25rem}.blog-post__back{display:inline-block;margin-bottom:2rem;color:#64696d;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:.75em;font-weight:600;text-decoration:none}.blog-post__back:hover,.blog-post__back:focus{color:#194a80;text-decoration:underline}.blog-post__title{margin-bottom:1rem;color:#171717;font-family:"Noto Serif",Georgia,"Times New Roman",serif;font-size:clamp(2.25rem, 1.75rem + 1.5vw, 2.75rem);font-weight:700;letter-spacing:-0.03em;line-height:1.1;text-wrap:wrap}.blog-post__title-break{display:block}.blog-post__dek{margin-bottom:1rem;color:#64696d;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:1.08rem;font-weight:400;line-height:1.5}.blog-post__meta{display:flex;flex-wrap:wrap;gap:0.35rem 0.55rem;margin:0;color:#64696d;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:.75em;font-variant-numeric:tabular-nums}.blog-post__layout{display:grid;grid-template-columns:minmax(0, 46rem);justify-content:center;gap:1.5rem;padding-top:clamp(2rem, 3vw, 3rem)}.blog-post__column{min-width:0;width:100%;max-width:46rem;justify-self:center}.blog-post__body{min-width:0;width:100%;max-width:65ch;margin-right:auto;margin-left:auto;justify-self:center;font-family:"Crimson Pro",ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;font-size:1.15rem;font-feature-settings:"kern" 1, "liga" 1, "clig" 1, "calt" 1;line-height:1.55}.blog-post__body h2,.blog-post__body h3,.blog-post__body h4,.blog-post__body h5,.blog-post__body h6{color:#171717;font-family:"Noto Serif",Georgia,"Times New Roman",serif;font-weight:650;letter-spacing:-0.018em;line-height:1.25;text-wrap:balance}.blog-post__body h2{margin-top:1.85em;margin-bottom:0.65em;padding-bottom:0;border-bottom:0;font-size:clamp(1.9rem, 1.65rem + 0.45vw, 2rem)}.blog-post__body h3{margin-top:1.65em;margin-bottom:0.55em;font-size:clamp(1.4rem, 1.3rem + 0.25vw, 1.5rem)}.blog-post__body h4{margin-top:1.45em;margin-bottom:0.5em;font-size:clamp(1.25rem, 1.15rem + 0.2vw, 1.3rem)}.blog-post__body h2,.blog-post__body h3,.blog-post__body h4{scroll-margin-top:1rem}.blog-post__body strong,.blog-post__body b{font-weight:600}.blog-post__body blockquote{margin:1.75em 0;padding:0.15em 0 0.15em 1.15em;border-left:4px solid #f2f3f3;color:#64696d;font-style:italic}.blog-post__body dt,.blog-post__body figcaption{font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}.blog-post__body tt,.blog-post__body code,.blog-post__body kbd,.blog-post__body samp,.blog-post__body pre,.blog-post__body .highlight{font-family:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-variant-ligatures:none}.blog-post__body p>code,.blog-post__body a>code,.blog-post__body li>code,.blog-post__body figcaption>code,.blog-post__body td>code{padding:0.08em 0.3em;border:0;border-radius:0.375rem;background:rgba(175,184,193,0.2);box-shadow:none;color:#1f2328;font-size:0.79em;font-weight:400}.blog-post__body p>code::before,.blog-post__body p>code::after,.blog-post__body a>code::before,.blog-post__body a>code::after,.blog-post__body li>code::before,.blog-post__body li>code::after,.blog-post__body figcaption>code::before,.blog-post__body figcaption>code::after,.blog-post__body td>code::before,.blog-post__body td>code::after{content:none}.blog-post__body div.highlighter-rouge,.blog-post__body figure.highlight{position:relative;margin:1.5rem 0;padding:0.875rem 0;overflow:hidden;border:1px solid #d0d7de;border-radius:6px;background:#f6f8fa;box-shadow:0 1px 0 rgba(31,35,40,0.04)}.blog-post__body div.highlighter-rouge::before,.blog-post__body figure.highlight::before{display:none;content:none}.blog-post__body div.highlighter-rouge .highlight,.blog-post__body figure.highlight .highlight{margin:0;background:transparent;color:#1f2328;font-family:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-size:clamp(0.875rem, 0.84rem + 0.08vw, 0.9375rem);line-height:1.55}.blog-post__body div.highlighter-rouge pre,.blog-post__body figure.highlight pre{margin:0;padding:0 1rem;background:transparent;color:inherit;font-family:inherit;font-size:inherit;line-height:inherit}.blog-post__body .blog-code-copy{position:absolute;top:0.5rem;right:0.5rem;display:flex;align-items:center;justify-content:center;gap:0.3rem;padding:0.35rem 0.55rem;border:1px solid #d0d7de;border-radius:6px;background:#f6f8fa;box-shadow:0 0 0 0.35rem #f6f8fa;color:#57606a;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.75rem;font-weight:500;line-height:1;cursor:pointer;opacity:1;transition:opacity 0.15s ease-in-out, border-color 0.15s ease-in-out, color 0.15s ease-in-out, transform 0.15s ease-in-out}.blog-post__body .blog-code-copy svg{width:0.75rem;height:0.75rem}.blog-post__body .blog-code-copy:hover,.blog-post__body .blog-code-copy:focus-visible{border-color:#8c959f;background:#f3f4f6;color:#24292f;opacity:1}.blog-post__body .blog-code-copy:active{transform:scale(0.95)}.blog-post__body .blog-code-copy.is-copied{color:#1a7f37}.blog-post__body .blog-code-copy.is-error{color:#cf222e}.blog-post__body div.highlighter-rouge:hover .blog-code-copy,.blog-post__body div.highlighter-rouge:focus-within .blog-code-copy,.blog-post__body figure.highlight:hover .blog-code-copy,.blog-post__body figure.highlight:focus-within .blog-code-copy{opacity:1}.blog-post__body .highlight .c,.blog-post__body .highlight .c1,.blog-post__body .highlight .cm,.blog-post__body .highlight .cp,.blog-post__body .highlight .cs{color:#6e7781}.blog-post__body .highlight .k,.blog-post__body .highlight .kd,.blog-post__body .highlight .kn,.blog-post__body .highlight .kp,.blog-post__body .highlight .kr,.blog-post__body .highlight .kt,.blog-post__body .highlight .ow{color:#cf222e}.blog-post__body .highlight .o{color:#cf222e}.blog-post__body .highlight .m,.blog-post__body .highlight .mf,.blog-post__body .highlight .mh,.blog-post__body .highlight .mi,.blog-post__body .highlight .mo{color:#0550ae}.blog-post__body .highlight .s,.blog-post__body .highlight .s1,.blog-post__body .highlight .s2{color:#0a3069}.blog-post__body .highlight .na{color:#953800}.blog-post__body .highlight .nc,.blog-post__body .highlight .nf{color:#8250df}.blog-post__body .highlight .nt{color:#116329}.blog-post__body .highlight .nb{color:#953800}.blog-post__body .highlight .nv{color:#953800}.blog-post__body .highlight .se{color:#0550ae}.blog-post__body .blog-heading-anchor{color:#2563a6;font-size:0.75em;text-decoration:none;opacity:0;transition:opacity 0.15s ease-in-out}.blog-post__body h2:hover .blog-heading-anchor,.blog-post__body h2:focus-within .blog-heading-anchor,.blog-post__body h3:hover .blog-heading-anchor,.blog-post__body h3:focus-within .blog-heading-anchor,.blog-post__body .blog-heading-anchor:focus{opacity:1}.blog-post__body .footnotes{margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(209,217,224,0.7);color:#64696d;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.875rem;line-height:1.5}.criu-lz4-logo{width:min(100%, 24rem);margin:1.5rem auto 2rem}.criu-lz4-logo img{display:block;width:100%;height:auto;margin:0 auto}.blog-table-wrap{max-width:100%;margin:0 0 1.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.blog-table-wrap table{min-width:42rem;margin-bottom:0;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.8em;font-variant-numeric:tabular-nums lining-nums;line-height:1.4}@media (min-width: 48rem){.blog-post__body>.criu-pipeline,.blog-post__body>.criu-results>.criu-chart,.blog-post__body>.criu-results>.criu-comparison-table{width:46rem;max-width:calc(100vw - 2rem);margin-left:50%;transform:translateX(-50%)}}.blog-sidenote{display:none}.footnote.is-sidenote-ref{color:#2563a6;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.72em;font-weight:650}@media (min-width: 80rem){.blog-sidenote{display:block;float:right;clear:right;width:12rem;margin:0.2rem -15rem 1rem 1.5rem;color:#64696d;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.78rem;font-style:normal;font-weight:400;line-height:1.38;transition:transform 0.2s ease}.blog-sidenote p{margin:0;font-size:inherit}.blog-sidenote a{color:inherit}.blog-sidenote:focus{outline:2px solid #2563a6;outline-offset:0.25rem}.blog-sidenote.is-active{transform:translateX(-3px)}.blog-sidenote__number{margin-right:0.18rem;color:#2563a6;font-weight:700}.js .blog-post__body.has-sidenotes>.footnotes{display:none}}@media (min-width: 100rem){.blog-sidenote{width:15rem;margin-right:-19rem;font-size:0.84rem}}.criu-pipeline,.criu-results{--criu-color-dump: #b45309;--criu-color-control: #64748b;--criu-color-read: #4f46e5;--criu-color-write: #0f766e;--criu-color-surface: #f8fafc;--criu-color-border: #d8e0e8}.criu-pipeline{display:block;margin:2.25rem 0 2rem;padding:1rem;border:1px solid #f2f3f3;border-radius:0.75rem;background:var(--criu-color-surface);box-shadow:0 12px 32px rgba(15,37,56,0.07);font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}.criu-pipeline figcaption{margin-top:1rem;color:#64696d;font-size:0.86rem;line-height:1.5}.criu-pipeline figcaption p{margin:0;font-size:inherit}.criu-pipeline figcaption p+p{margin-top:0.65rem}.criu-pipeline__header{max-width:42rem;margin-bottom:1rem}.criu-pipeline__header .criu-pipeline__title{margin:0.1rem 0 0.35rem;color:#92400e;font-size:1.25rem;font-weight:700;line-height:1.3}.criu-pipeline__header p:last-child{margin:0;color:#64696d;font-size:0.92rem;line-height:1.45}.criu-pipeline__controls{display:none;align-items:end;justify-content:space-between;gap:0.75rem;margin:1.1rem 0 0.8rem;padding-top:0.85rem;border-top:1px solid rgba(209,217,224,0.7)}.js .criu-pipeline__controls{display:flex}.criu-pipeline__view-switch{display:inline-flex;padding:0.2rem;border:1px solid #ccd5dd;border-radius:0.55rem;background:#eaf0f3}.criu-pipeline__view-switch button{min-height:2.5rem;padding:0.45rem 0.75rem;border:0;border-radius:0.4rem;background:transparent;color:#34495a;font-family:inherit;font-size:0.82rem;font-weight:650;cursor:pointer;transition:background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease}.criu-pipeline__view-switch button[aria-pressed="true"]{background:#fff;box-shadow:0 1px 4px rgba(15,37,56,0.14);color:#3730a3}.criu-pipeline__view-switch button[data-pipeline-view="all"][aria-pressed="true"]{color:#17324a}.criu-pipeline__view-switch button[data-pipeline-view="dump"][aria-pressed="true"]{color:#92400e}.criu-pipeline__view-switch button:focus-visible{outline:2px solid var(--criu-color-read);outline-offset:2px}@media (hover: hover) and (pointer: fine){.criu-pipeline__view-switch button:hover{color:#0f2538}}.criu-pipeline__select{display:grid;gap:0.2rem;color:#494e52;font-size:0.7rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase}.criu-pipeline__select select{min-width:11rem;min-height:2.5rem;padding:0.4rem 2rem 0.4rem 0.65rem;border:1px solid #b8c4cd;border-radius:0.4rem;background:#fff;color:#20384a;font-family:inherit;font-size:0.82rem;font-weight:600;letter-spacing:0;text-transform:none}.criu-pipeline__select select:focus-visible{outline:2px solid var(--criu-color-read);outline-offset:2px}.criu-pipeline__canvas{overflow:hidden;border:1px solid var(--criu-color-border);border-radius:0.65rem;background:#f8fafb}.criu-pipeline__canvas svg{display:block;width:100%;height:auto}.criu-pipeline__lane{fill:#f3f7f9;stroke:#dce5ea;stroke-width:1.5}.criu-pipeline__phase-label rect{fill:#fffbeb}.criu-pipeline__phase-label text{fill:#92400e;font-size:13px;font-weight:750;letter-spacing:0.08em}.criu-pipeline__phase-label--restore rect{fill:#eef2ff}.criu-pipeline__phase-label--restore text{fill:#3730a3}.criu-pipeline__edges path,.criu-pipeline__legend path{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:opacity 0.22s ease, stroke-width 0.22s ease}[data-pipeline-edge="dump"]{marker-end:url("#criu-pipeline-arrow-dump");stroke:var(--criu-color-dump);stroke-width:3}.criu-pipeline__edge--control{marker-end:url("#criu-pipeline-arrow-control");stroke:var(--criu-color-control);stroke-dasharray:6 6;stroke-width:2}.criu-pipeline__edge--read{marker-end:url("#criu-pipeline-arrow-restore");stroke:var(--criu-color-read);stroke-width:3}.criu-pipeline__edge--write{marker-end:url("#criu-pipeline-arrow-write");stroke:var(--criu-color-write);stroke-width:3.5}.criu-pipeline__flow-particle{pointer-events:none}.criu-pipeline__flow-particle--control{fill:var(--criu-color-control)}.criu-pipeline__flow-particle--checkpoint{fill:var(--criu-color-dump);filter:drop-shadow(0 0 2px rgba(180,83,9,0.35))}.criu-pipeline__flow-particle--read{fill:var(--criu-color-read);filter:drop-shadow(0 0 2px rgba(79,70,229,0.35))}.criu-pipeline__flow-particle--write{fill:var(--criu-color-write);filter:drop-shadow(0 0 2px rgba(15,118,110,0.35))}.criu-pipeline__edge-label{paint-order:stroke;stroke:#f3f7f9;stroke-linejoin:round;stroke-width:6px;font-size:13px;font-weight:650}.criu-pipeline__edge-label--control{fill:#475569}.criu-pipeline__edge-label--read{fill:#3730a3}.criu-pipeline__edge-label--write{fill:#115e59}.criu-pipeline__node{cursor:default;transition:opacity 0.22s ease, transform 0.22s ease;transform-box:fill-box;transform-origin:center}.criu-pipeline__node rect{fill:#fff;stroke:#b9c7d0;stroke-width:1.5;transition:fill 0.22s ease, stroke 0.22s ease, stroke-width 0.22s ease}.criu-pipeline__node circle{fill:var(--criu-color-dump)}.criu-pipeline__node[data-pipeline-phase="restore"] circle{fill:var(--criu-color-read)}.is-enhanced .criu-pipeline__node{cursor:pointer}.criu-pipeline__node.is-selected{transform:translateY(-2px)}.criu-pipeline__node.is-selected rect{fill:#fff;stroke:var(--criu-color-dump);stroke-width:3;filter:url("#criu-pipeline-shadow")}.criu-pipeline__node[data-pipeline-phase="restore"].is-selected rect{stroke:var(--criu-color-read)}@media (hover: hover) and (pointer: fine){.is-enhanced .criu-pipeline__node:hover{transform:translateY(-2px)}.is-enhanced .criu-pipeline__node:hover rect{fill:#fff;stroke:var(--criu-color-dump);stroke-width:3;filter:url("#criu-pipeline-shadow")}.is-enhanced .criu-pipeline__node[data-pipeline-phase="restore"]:hover rect{stroke:var(--criu-color-read)}}.criu-pipeline__node[data-pipeline-node="zero"] rect{fill:#f8fafc;stroke:#94a3b8}.criu-pipeline__node[data-pipeline-node="raw"] rect{fill:#eef2ff;stroke:#818cf8}.criu-pipeline__node[data-pipeline-node="lz4"] rect{fill:#f0fdfa;stroke:#5eead4}.criu-pipeline__node[data-pipeline-node="zero"].is-selected rect{stroke:var(--criu-color-control)}.criu-pipeline__node[data-pipeline-node="raw"].is-selected rect{stroke:var(--criu-color-read)}.criu-pipeline__node[data-pipeline-node="lz4"].is-selected rect{stroke:var(--criu-color-write)}.criu-pipeline__step{fill:#fff;font-size:12px;font-weight:750}.criu-pipeline__label{fill:#193447;font-size:16px;font-weight:700}.criu-pipeline__meta{fill:#627584;font-size:15px;font-weight:500}.criu-pipeline__equation{font-family:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-weight:650}.criu-pipeline__operation{fill:#526776;font-size:14px;font-weight:600}.criu-pipeline__code{font-family:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;font-size:15px}.criu-pipeline__node--metadata rect{fill:#f1f5f9;stroke-dasharray:5 4}.criu-pipeline__node--storage rect{fill:#eef2ff;stroke:#a5b4fc}.criu-pipeline__node--representation rect{fill:#f8fafc;stroke:#94a3b8}.criu-pipeline__legend{color:#526776}.criu-pipeline__legend text{fill:currentColor;font-size:15px;font-weight:600}.criu-pipeline[data-active-phase="dump"] [data-pipeline-phase="restore"],.criu-pipeline[data-active-phase="restore"] [data-pipeline-phase="dump"]{opacity:0.22}.criu-pipeline[data-active-phase="dump"] [data-pipeline-edge="dump"],.criu-pipeline[data-active-phase="restore"] [data-pipeline-edge="restore"]{opacity:1}.criu-pipeline__edge--control.is-route-active{stroke-width:3}.criu-pipeline__edge--read.is-route-active{stroke-width:4.25}.criu-pipeline__edge--write.is-route-active{stroke-width:4.75}.criu-pipeline__edges .is-route-muted{opacity:0.14}.criu-pipeline__detail{position:relative;margin-top:0.8rem;padding:0.5rem 0.7rem 0.55rem 0.8rem;border:1px solid #d6e0e6;border-left:4px solid var(--criu-color-control);border-radius:0.45rem;background:#f8fafc;transition:background-color 0.22s ease, border-color 0.22s ease}.criu-pipeline__detail p{margin:0}.criu-pipeline .criu-pipeline__detail-label{color:#475569;font-size:12px !important;font-weight:750;letter-spacing:0.07em;text-transform:uppercase;transition:color 0.22s ease}.criu-pipeline[data-active-phase="dump"] .criu-pipeline__detail{border-left-color:var(--criu-color-dump);background:#fffbeb}.criu-pipeline[data-active-phase="dump"] .criu-pipeline__detail-label{color:#92400e}.criu-pipeline[data-active-phase="restore"] .criu-pipeline__detail{border-left-color:var(--criu-color-read);background:#eef2ff}.criu-pipeline[data-active-phase="restore"] .criu-pipeline__detail-label{color:#3730a3}.criu-pipeline .criu-pipeline__detail-title{margin-top:0.1rem !important;color:#183447;font-size:15px !important;font-weight:700;line-height:1.4}.criu-pipeline .criu-pipeline__detail-copy{margin-top:0.15rem !important;color:#526776;font-size:14px !important;line-height:1.45}.criu-pipeline__mobile{display:none}@media (max-width: 639px){.criu-pipeline{margin-right:-0.5rem;margin-left:-0.5rem;padding:0.75rem}.criu-pipeline__controls{align-items:stretch;flex-direction:column}.criu-pipeline__view-switch{display:grid;grid-template-columns:repeat(3, 1fr)}.criu-pipeline__select select{width:100%}.criu-pipeline__canvas{display:none}.criu-pipeline__mobile{display:grid;gap:0.75rem}.criu-pipeline__mobile section{padding:0.75rem;border:1px solid #d7e0e6;border-radius:0.55rem;background:#f8fafb;transition:opacity 0.22s ease}.criu-pipeline__mobile h3{margin:0 0 0.55rem;color:#92400e;font-size:0.78rem;font-weight:750;letter-spacing:0.08em;text-transform:uppercase}.criu-pipeline__mobile section[data-pipeline-phase="restore"] h3{color:#3730a3}.criu-pipeline__mobile ol{margin:0;padding:0;list-style:none}.criu-pipeline__mobile li:not(.criu-pipeline__mobile-options):not(.criu-pipeline__mobile-destinations):not(.criu-pipeline__mobile-restore-paths){position:relative;margin:0 0 1rem}.criu-pipeline__mobile .criu-pipeline__mobile-step{display:grid;gap:0.05rem;width:100%;margin:0;padding:0.65rem 0.75rem;font:inherit;text-align:left;border:1px solid #c4d0d8;border-radius:0.45rem;background:#fff;color:#193447;transition:border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease}.criu-pipeline__mobile li:not(.criu-pipeline__mobile-options):not(.criu-pipeline__mobile-destinations):not(.criu-pipeline__mobile-restore-paths):not(:last-child)::after{position:absolute;bottom:-0.9rem;left:50%;width:0.62rem;height:0.78rem;background:var(--criu-color-dump);clip-path:polygon(41% 0, 59% 0, 59% 55%, 100% 55%, 50% 100%, 0 55%, 41% 55%);content:"";transform:translateX(-50%)}.criu-pipeline__mobile section[data-pipeline-phase="restore"] li:not(.criu-pipeline__mobile-options):not(.criu-pipeline__mobile-destinations):not(.criu-pipeline__mobile-restore-paths):not(:last-child)::after{background:var(--criu-color-read)}.criu-pipeline__mobile span{color:#627584;font-size:0.82rem}.criu-pipeline__mobile-options,.criu-pipeline__mobile-destinations{display:grid;gap:0.4rem;margin:0}.criu-pipeline__mobile-options>span,.criu-pipeline__mobile-destinations>span{display:grid;min-width:0;padding:0.55rem 0.25rem;border:1px solid #94a3b8;border-radius:0.45rem;background:#f8fafc;color:#334155;text-align:center}.criu-pipeline__mobile-options small,.criu-pipeline__mobile-destinations small{color:#475569;font-size:0.76rem}.criu-pipeline__mobile-options{grid-template-columns:repeat(3, 1fr);margin-bottom:1rem}.criu-pipeline__mobile-destinations{grid-template-columns:repeat(2, 1fr)}.criu-pipeline__mobile-destinations>span{border-color:#a5b4fc;background:#eef2ff;color:#3730a3}.criu-pipeline__mobile-destinations>.criu-pipeline__mobile-metadata{border-style:dashed;border-color:#94a3b8;background:#f1f5f9;color:#475569}.criu-pipeline__mobile-restore-paths{position:relative;display:grid;grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.45fr);gap:0.45rem;margin:0 0 1rem}.criu-pipeline__mobile-restore-paths::after{position:absolute;bottom:-0.9rem;left:50%;width:0.62rem;height:0.78rem;background:var(--criu-color-write);clip-path:polygon(41% 0, 59% 0, 59% 55%, 100% 55%, 50% 100%, 0 55%, 41% 55%);content:"";transform:translateX(-50%)}.criu-pipeline__mobile-restore-paths>div{display:grid;align-content:start;gap:0.4rem;min-width:0;padding:0.5rem;border:1px solid #d3dce2;border-radius:0.5rem;background:#fff}.criu-pipeline__mobile-restore-paths p{margin:0;color:#64748b;font-size:0.7rem;font-weight:750;letter-spacing:0.06em;text-align:center;text-transform:uppercase}.criu-pipeline__mobile-restore-paths span{display:grid;gap:0.05rem;min-width:0;padding:0.55rem 0.35rem;border:1px solid #94a3b8;border-radius:0.45rem;background:#f8fafc;color:#334155;text-align:center}.criu-pipeline__mobile-restore-paths small{color:#475569;font-size:0.74rem;line-height:1.25}.criu-pipeline__mobile-zero-path span{align-self:center;border-style:dashed}.criu-pipeline__mobile-zero-path{grid-template-rows:auto 1fr}.criu-pipeline__mobile-payload-path{border-color:#c7d2fe !important}.criu-pipeline__mobile-payload-path>span+span{position:relative;margin-top:0.55rem}.criu-pipeline__mobile-payload-path>span+span::before{position:absolute;top:-0.72rem;left:50%;width:0.62rem;height:0.66rem;background:var(--criu-color-read);clip-path:polygon(41% 0, 59% 0, 59% 55%, 100% 55%, 50% 100%, 0 55%, 41% 55%);content:"";transform:translateX(-50%)}.criu-pipeline__mobile-payload-path>div{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.35rem}.criu-pipeline.is-enhanced>.criu-pipeline__detail{display:none}.criu-pipeline__mobile .has-mobile-detail{margin-bottom:0.35rem}.criu-pipeline__mobile .has-mobile-detail::after{display:none}.criu-pipeline__mobile-detail{position:relative;display:block;width:100%;max-width:100%;margin:0 0 1rem;padding:0.65rem 0.75rem 0.7rem;border:1px solid #d6e0e6;border-left:4px solid var(--criu-color-read);border-radius:0.45rem;background:#eef2ff;color:#334155;overflow-wrap:anywhere}.criu-pipeline__mobile-detail p{margin:0}.criu-pipeline__mobile-detail:not(:last-child)::after{position:absolute;bottom:-0.9rem;left:50%;width:0.62rem;height:0.78rem;background:var(--criu-color-read);clip-path:polygon(41% 0, 59% 0, 59% 55%, 100% 55%, 50% 100%, 0 55%, 41% 55%);content:"";transform:translateX(-50%)}section[data-pipeline-phase="dump"] .criu-pipeline__mobile-detail{border-left-color:var(--criu-color-dump);background:#fffbeb}section[data-pipeline-phase="dump"] .criu-pipeline__mobile-detail:not(:last-child)::after{background:var(--criu-color-dump)}.criu-pipeline__mobile-detail--write:not(:last-child)::after{background:var(--criu-color-write)}.criu-pipeline .criu-pipeline__mobile-detail-label{color:#475569;font-size:0.66rem;font-weight:750;letter-spacing:0.07em;text-transform:uppercase}.criu-pipeline .criu-pipeline__mobile-detail-title{margin-top:0.12rem !important;color:#183447;font-size:0.82rem;font-weight:700;line-height:1.35}.criu-pipeline .criu-pipeline__mobile-detail-copy{margin-top:0.18rem !important;color:#526776;font-size:0.76rem;line-height:1.42}[data-pipeline-mobile-node="raw"]{border-color:#818cf8 !important;background:#eef2ff !important;color:#3730a3 !important}[data-pipeline-mobile-node="lz4"]{border-color:#5eead4 !important;background:#f0fdfa !important;color:#115e59 !important}.is-enhanced [data-pipeline-mobile-node]{cursor:pointer}.is-enhanced [data-pipeline-mobile-node]:focus-visible,[data-pipeline-mobile-node].is-selected{border-color:var(--criu-color-read) !important;box-shadow:0 0 0 2px rgba(79,70,229,0.2);outline:none;transform:translateY(-1px)}[data-pipeline-mobile-node="zero"].is-selected{border-color:var(--criu-color-control) !important;box-shadow:0 0 0 2px rgba(100,116,139,0.2)}[data-pipeline-mobile-node="lz4"].is-selected{border-color:var(--criu-color-write) !important;box-shadow:0 0 0 2px rgba(15,118,110,0.2)}}@media (prefers-reduced-motion: reduce){.criu-pipeline__flow-particles{display:none}.criu-pipeline *,.criu-pipeline *::before,.criu-pipeline *::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:0.001ms !important}}@media print{.criu-pipeline{break-inside:avoid;border-color:#bbb;background:#fff;box-shadow:none}.criu-pipeline__controls,.criu-pipeline__mobile,.criu-pipeline__detail,.criu-pipeline__flow-particles{display:none !important}.criu-pipeline__canvas{display:block !important}.criu-pipeline [data-pipeline-phase]{opacity:1 !important}.criu-pipeline [data-pipeline-edge]{animation:none !important}.criu-pipeline__edge--control{stroke-dasharray:6 6 !important;stroke-width:2 !important}.criu-pipeline__edge--read{stroke-width:3 !important}.criu-pipeline__edge--write{stroke-width:3.5 !important}}.criu-results{margin:2.25rem 0 1.5rem}.criu-results>h3,.criu-results>p{width:100%;max-width:65ch;margin-right:auto;margin-left:auto}.criu-results>h3{margin-top:1.85em;margin-bottom:0.65em;font-size:clamp(1.25rem, 1.1rem + 0.25vw, 1.4rem)}.criu-results>h3:first-child{margin-top:0}.criu-chart{display:block;min-width:0;margin:2.5rem 0;padding:1rem 1rem 0.85rem;border:1px solid #f2f3f3;border-color:var(--criu-color-border);border-radius:0.75rem;background:var(--criu-color-surface);box-shadow:0 12px 32px rgba(15,37,56,0.05);font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}.criu-chart figcaption{margin-top:0.9rem;color:#64696d;font-size:0.96rem;line-height:1.5}.criu-chart .blog-table-wrap{margin:0.75rem 0 0}.criu-chart table{min-width:36rem;font-size:0.9em;line-height:1.5}.criu-chart[data-criu-chart] table thead th:nth-child(2){box-shadow:inset 0 3px 0 var(--criu-color-read)}.criu-chart[data-criu-chart] table thead th:nth-child(3){box-shadow:inset 0 3px 0 var(--criu-color-write)}.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:first-child>th:nth-child(2){box-shadow:inset 0 3px 0 var(--criu-color-dump)}.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:first-child>th:nth-child(3){box-shadow:inset 0 3px 0 var(--criu-color-read)}.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:first-child>th:nth-child(4){box-shadow:inset 0 3px 0 var(--criu-color-write)}.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:nth-child(2)>th:nth-child(1),.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:nth-child(2)>th:nth-child(2){box-shadow:inset 0 3px 0 var(--criu-color-read)}.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:nth-child(2)>th:nth-child(3),.criu-chart[data-criu-chart-source="cold_start_context"] table thead>tr:nth-child(2)>th:nth-child(4){box-shadow:inset 0 3px 0 var(--criu-color-write)}.criu-chart__canvas{position:relative;width:100%;height:29rem}.criu-chart__metric-switch{display:none;width:fit-content;margin:0 0 0.75rem;padding:0.2rem;border:1px solid #ccd5dd;border-radius:0.55rem;background:#eaf0f3}.criu-chart__metric-switch button{min-height:2.75rem;padding:0.5rem 0.8rem;border:0;border-radius:0.4rem;background:transparent;color:#34495a;font-family:inherit;font-size:0.9rem;font-weight:650;cursor:pointer;transition:background-color 0.2s ease, box-shadow 0.2s ease, color 0.2s ease}.criu-chart__metric-switch button[aria-pressed="true"]{background:#fff;color:#17324a;box-shadow:0 1px 4px rgba(15,37,56,0.16)}.criu-chart__metric-switch button:focus-visible{outline:2px solid #2563a6;outline-offset:2px}.js .criu-chart__metric-switch{display:inline-flex}.criu-chart__metric-switch--wrap{flex-wrap:wrap;gap:0.2rem;width:100%}.criu-chart__data{min-width:0;max-width:100%;margin-top:0.75rem}.criu-chart__data summary{min-height:2.75rem;padding:0.65rem 0;color:#2563a6;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.96rem;font-weight:650;cursor:pointer}.criu-chart__data summary:focus-visible{outline:2px solid #2563a6;outline-offset:2px}.criu-comparison-table{margin:2.25rem 0 2.5rem;padding:1rem 1rem 0.85rem;border:1px solid var(--criu-color-border);border-radius:0.75rem;background:var(--criu-color-surface);box-shadow:0 12px 32px rgba(15,37,56,0.05);font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}.criu-comparison-table .blog-table-wrap{margin:0}.criu-comparison-table table{width:42rem;max-width:100%;min-width:38rem;margin:0 auto;border-collapse:separate;border-spacing:0;font-size:0.92rem;font-variant-numeric:tabular-nums lining-nums;line-height:1.4}.criu-comparison-table caption{padding:0.15rem 0 0.85rem;color:#17324a;font-size:1.08rem;font-weight:750;text-align:left}.criu-comparison-table th,.criu-comparison-table td{padding:0.72rem 0.75rem;border-bottom:1px solid #dfe7ed}.criu-comparison-table thead th{background:#eaf0f3;color:#23384a;font-size:0.78rem;font-weight:750;letter-spacing:0.025em;text-align:right}.criu-comparison-table thead th:first-child,.criu-comparison-table tbody th{text-align:left}.criu-comparison-table tbody th{color:#34495a;font-weight:650}.criu-comparison-table tbody td{color:#404040;text-align:right}.criu-comparison-table tbody tr:last-child>*{border-bottom:0}.criu-comparison-table .is-best{background:#e8f5f2;color:#0b5f58;box-shadow:inset 3px 0 0 var(--criu-color-write)}.criu-comparison-table figcaption{margin-top:0.9rem;color:#64696d;font-size:0.96rem;line-height:1.5}@media (max-width: 599px){.criu-chart{margin-right:-0.5rem;margin-left:-0.5rem;padding-top:0.75rem;padding-right:0.5rem;padding-left:0.5rem}.criu-chart__canvas{height:34rem}.criu-chart[data-criu-chart-source="cold_start_context"] .criu-chart__canvas,.criu-chart[data-criu-chart-source="parallel_block_size"] .criu-chart__canvas{height:29rem}.js .criu-chart__metric-switch{display:flex;width:100%}.js .criu-chart__metric-switch button{flex:1 1 0;padding-right:0.55rem;padding-left:0.55rem;font-size:0.84rem;line-height:1.2}}@media (prefers-reduced-motion: reduce){.criu-chart *,.criu-chart *::before,.criu-chart *::after{animation-duration:0.001ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:0.001ms !important}}@media print{.criu-chart{break-inside:avoid;border-color:#bbb;background:#fff}.criu-chart__canvas{display:none !important}.criu-chart__metric-switch{display:none !important}.criu-chart__data>summary{display:none}.criu-chart__data>:not(summary){display:block !important}.criu-chart__data::details-content{content-visibility:visible !important}}.blog-post__toc{color:#64696d;font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-size:0.9rem}.no-js .blog-post__toc{display:none}.blog-post__toc--desktop{display:none}.blog-post__toc--mobile{max-width:48rem;padding:0.8rem 1rem;border:1px solid #f2f3f3;border-radius:4px;background:#fafafa}.blog-post__toc--mobile summary{font-weight:700;cursor:pointer}.blog-post__toc-title{margin:0 0 0.75rem;font-weight:700;letter-spacing:0}.blog-post__toc-list,.blog-post__toc-children{margin:0;padding:0;list-style:none}.blog-post__toc-list{margin-top:0.75rem}.blog-post__toc-list li{margin:0}.blog-post__toc-list a{display:block;padding:0.3rem 0;color:#64696d;line-height:1.35;text-decoration:none}.blog-post__toc-list a:hover,.blog-post__toc-list a:focus{color:#194a80;text-decoration:underline}.blog-post__toc-children{margin-left:0.75rem;padding-left:0.75rem;border-left:1px solid #f2f3f3}.blog-post__toc-h3 a{color:#64696d;font-size:0.92em}@media (min-width: 80em){.blog-post__layout{grid-template-columns:minmax(12rem, 13rem) minmax(0, 44rem) minmax(12rem, 13rem);align-items:start;gap:2rem}.blog-post__body>.criu-pipeline,.blog-post__body>.criu-results>.criu-chart,.blog-post__body>.criu-results>.criu-comparison-table{max-width:calc(100% + 4rem)}.blog-post__toc--desktop{display:block;position:sticky;top:5.5rem;grid-column:1;max-height:calc(100vh - 7rem);padding-right:0.5rem;overflow-y:auto}.blog-post__toc--mobile{display:none}.blog-post__column{grid-column:2}}@media (min-width: 90rem){.blog-post__layout{grid-template-columns:clamp(12rem, calc((100% - 46rem - 8rem) / 2), 16rem) minmax(0, 46rem) clamp(12rem, calc((100% - 46rem - 8rem) / 2), 16rem);gap:4rem}}@media (hover: none){.blog-post__body .blog-heading-anchor{opacity:0.7}}.blog-post__footer{max-width:46rem;margin:4rem auto 0;padding-top:2rem;border-top:1px solid rgba(209,217,224,0.7);font-family:"Roboto",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif}.blog-post__sources h2{margin-top:0;font-size:1.25em}.blog-post__pager{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(209,217,224,0.7)}.blog-post__pager a{text-decoration:none}.blog-post__pager a:hover,.blog-post__pager a:focus{color:#194a80;text-decoration:underline}.blog-post__pager-newer{text-align:right}@media (max-width: 599px){.blog-post__title{font-size:2.25rem}.blog-post__dek{font-size:1.05rem}.blog-post__body{font-size:1.2rem}.blog-post__meta{font-size:0.875rem}}@media print{.blog-sidenote{display:none !important}.blog-post__body.has-sidenotes>.footnotes{display:block !important}}@media print{.screen-reader-shortcut,.site-header,.masthead,.toc,.blog-post__back,.blog-post__toc,.blog-heading-anchor,.blog-code-copy,.blog-post__pager,.page__share,.page__related,.ads,.page__footer{display:none}}
