:root{--text: #c9d1d9;--background: #1d202a;--primary: #57a5ff;--secondary: #a373f7;--accent: #f77f64;--success: #3fb950;--warning: #d29922;--code-bg: #0d1117;--slide-bg: transparent;--font-display: "JetBrains Mono", monospace;--font-body: "Work Sans", sans-serif;--transition-duration: .8s}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--background);color:var(--text);overflow:hidden}.fallback-message{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:2rem;background:var(--accent);color:var(--background);border-radius:8px;text-align:center}.impress-not-supported .fallback-message{display:block}#impress{width:100vw;height:100vh}.step{width:1920px;height:1080px;padding:40px 56px;display:flex;flex-direction:column;justify-content:flex-start;opacity:0;transition:opacity var(--transition-duration) ease}.step.active,.step.present{opacity:1}.step h1{font-family:var(--font-display);font-size:5rem;font-weight:700;color:var(--primary);margin-bottom:1.5rem;line-height:1.1}.step h2{font-family:var(--font-display);font-size:3rem;font-weight:600;color:var(--secondary);margin-bottom:1.5rem}.step h3{font-family:var(--font-display);font-size:2.2rem;font-weight:600;color:var(--accent);margin-bottom:1rem}.step p{font-size:2rem;line-height:1.5;margin-bottom:1.2rem}.step ul{list-style:none;padding-left:0}.step li{font-size:1.9rem;line-height:1.6;padding-left:1.5rem;position:relative}.step li:before{content:"›";position:absolute;left:0;color:var(--primary);font-weight:700}.slide-cover{justify-content:center;align-items:center;text-align:center;background:radial-gradient(ellipse at center,#1e3c72 0%,var(--background) 70%)}.slide-cover .title{font-size:5rem;margin-bottom:.5rem;animation:fadeInUp 1s ease-out}.slide-cover .subtitle{font-size:2.5rem;color:var(--text);margin-bottom:3rem;animation:fadeInUp 1s ease-out .3s both}.slide-cover .author{animation:fadeInUp 1s ease-out .6s both}.slide-cover .author p{font-size:1.8rem;margin-bottom:.25rem}.slide-cover .event{color:var(--primary)}.about-content{margin-top:2rem}.about-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.about-text{font-size:2rem;line-height:1.4}.inline-logo{max-width:none;width:150px;height:auto;border-radius:8px}.about-content h3{margin-top:2rem;margin-bottom:1rem}.hook-content{display:flex;flex-direction:column;align-items:center;gap:3rem;margin-top:2rem}.counter-box{text-align:center;padding:3rem 5rem;background:var(--code-bg);border:2px solid var(--accent);border-radius:12px}.counter-label{font-size:1.2rem;color:var(--text);opacity:.7}.counter-number{font-family:var(--font-display);font-size:8rem;font-weight:700;color:var(--accent);line-height:1}.average-box{display:flex;align-items:baseline;gap:1rem;padding:2rem 3rem;background:var(--code-bg);border:2px solid var(--secondary);border-radius:12px;margin-top:1rem}.average-text{font-size:1.5rem;color:var(--text)}.average-number{font-family:var(--font-display);font-size:5rem;font-weight:700;color:var(--secondary)}.average-unit{font-size:1.5rem;color:var(--text)}.objective{text-align:center}.objective h2{color:var(--primary);margin-bottom:1rem}.huge-counter{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:3rem}.counter-big{font-family:var(--font-display);font-size:20rem;font-weight:700;color:var(--accent);line-height:1;text-shadow:0 0 60px rgba(247,127,100,.5)}.counter-label-large{font-size:3rem;color:var(--text);margin-top:1rem}.counter-source{font-size:1rem;color:var(--text);opacity:.5;margin-top:2rem;font-style:italic}.black-box-container{display:flex;flex-direction:column;align-items:center;margin-top:3rem}.black-box{width:350px;height:350px;background:linear-gradient(135deg,#0a0a0a,#2a2a2a);border:3px solid var(--text);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-top:8rem;margin-bottom:3rem;box-shadow:0 10px 40px #00000080;animation:floatBox 3s ease-in-out infinite;position:relative;overflow:hidden}.black-box .box-icon{font-family:var(--font-display);font-size:8rem;color:var(--text)}.objective-text{font-size:2.5rem;color:var(--primary);font-weight:600;text-align:center;margin-bottom:.5rem}.objective-text-sub{font-size:2rem;color:var(--text);text-align:center;opacity:.8;margin-bottom:6rem}@keyframes floatBox{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(2deg)}}.step.present .black-box{animation:openBox 3s ease-out 5s forwards}@keyframes openBox{0%{transform:scale(1) rotate(0);background:linear-gradient(135deg,#0a0a0a,#2a2a2a)}20%{transform:scale(1) rotate(0);background:linear-gradient(135deg,#0a0a0a,#2a2a2a)}50%{transform:scale(1.1) rotate(-3deg);background:linear-gradient(135deg,#1a1a3a,#2a2a4a);border-color:var(--primary)}to{transform:scale(1) rotate(0);background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);border-color:var(--secondary);box-shadow:0 0 80px #57a5ff99}}.step.present .black-box .box-icon{animation:fadeOutIcon .8s ease-out 4.5s forwards}@keyframes fadeOutIcon{to{opacity:0;transform:scale(.5)}}.framework-logos{position:absolute;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 3rem;opacity:0;transform:scale(.5);padding:2rem}.step.present .framework-logos{animation:showLogos 1s ease-out 7s forwards}@keyframes showLogos{to{opacity:1;transform:scale(1)}}.framework-logo{width:120px;height:120px;opacity:0;transform:translateY(20px);filter:brightness(0) invert(1)}.framework-logo.preact-logo{grid-column:1 / -1;justify-self:center}.step.present .react-logo{animation:fadeInUp .5s ease-out 7.2s forwards}.step.present .vue-logo{animation:fadeInUp .5s ease-out 7.5s forwards}.step.present .preact-logo{animation:fadeInUp .5s ease-out 7.8s forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.problem-content{display:flex;flex-direction:column;gap:2rem}.spacer{height:3rem}.highlight-text{font-size:2rem;color:var(--accent);font-weight:600;text-align:center}.highlight-text.case-1{color:#ff6b6b}.highlight-text.case-2{color:#ffd93d}.highlight-text.case-3{color:#6bcb77}.problem-content pre{background:var(--code-bg);border-radius:8px;padding:2rem;font-size:1.8rem;overflow-x:auto}.concepts{display:flex;gap:3rem}.concept{flex:1;padding:1.5rem;background:#57a5ff1a;border-left:4px solid var(--primary);border-radius:0 8px 8px 0}.concept h3{color:var(--primary)}.optimizations-content .concept h3{font-size:2rem}.concept .example{font-size:1.5rem;color:var(--text);opacity:.7;font-style:italic}.optimizations-content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 3rem}.optimizations-content .concept{padding:1rem 1.2rem}.optimizations-content .concept p:not(.test-case){font-size:1.7rem;line-height:1.4}.test-case{font-size:1.1rem;color:var(--accent);font-weight:600;margin-top:.4rem}.analogy{margin-top:1rem}.analogy-boxes{display:flex;gap:2rem;margin-top:1rem}.analogy-item{flex:1;padding:1.5rem 1.5rem 1.8rem;background:#141c28bf;border:2px solid rgba(87,165,255,.25);border-radius:12px}.analogy-item h4{font-size:1.8rem;margin-bottom:.7rem}.analogy-item p{font-size:1.55rem;margin-bottom:1rem}.analogy-direct-dom{border-color:#f77f6473;background:linear-gradient(140deg,#46191673,#161020bf)}.analogy-direct-dom h4{color:var(--accent)}.analogy-with-vdom{border-color:#3fb95073;background:linear-gradient(140deg,#122a1a73,#121626bf)}.analogy-with-vdom h4{color:var(--success)}.kitchen-scene{margin-top:.75rem;padding:1rem;border-radius:10px;background:#070c14cc;border:1px solid rgba(201,209,217,.15)}.phase-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:.7rem}.phase-labels span{font-family:var(--font-display);font-size:1.08rem;text-align:center;color:#c9d1d9d1;padding:.35rem .2rem;border-radius:999px;border:1px solid rgba(201,209,217,.2);background:#c9d1d90f}.phase-block{margin-bottom:.7rem}.kitchen-stage{font-family:var(--font-display);font-size:1.25rem;letter-spacing:.04em;text-transform:uppercase;color:#c9d1d9cc;margin-bottom:.35rem}.kitchen-pass{display:flex;gap:.65rem;margin-bottom:.55rem}.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.compare-title{font-family:var(--font-display);font-size:1.02rem;margin-bottom:.3rem;color:#c9d1d9bd}.delta-chip,.result-chip{font-family:var(--font-display);font-size:1.02rem;color:#ebf3ffeb;display:inline-block;padding:.2rem .55rem;border-radius:999px;border:1px solid rgba(201,209,217,.25)}.delta-chip{background:#57a5ff2b}.result-chip{background:#3fb95033}.result-pass{margin-top:.6rem}.plate{width:100px;height:56px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.6rem;font-weight:700;border:2px solid rgba(201,209,217,.25);background:linear-gradient(135deg,#27354a,#324765);color:#ebf3ff;box-shadow:inset 0 0 0 1px #ffffff14}.plate.delta{border-color:#ffd25380}.plate.delta.new{background:linear-gradient(135deg,#365f30,#3e7d47);border-color:#3fb95099}.chef-line{min-height:42px;display:flex;align-items:center;gap:.6rem}.chef-action{display:inline-block;padding:.5rem 1rem;border-radius:999px;font-size:1.35rem;font-family:var(--font-display);background:#c9d1d91f;color:var(--text)}.chef-arrow{font-size:1.5rem;color:#c9d1d9bf}.step.present .analogy-item .phase-labels span:nth-child(1){animation:phasePulseOne 15s ease-in-out infinite}.step.present .analogy-item .phase-labels span:nth-child(2){animation:phasePulseTwo 15s ease-in-out infinite}.step.present .analogy-item .phase-labels span:nth-child(3){animation:phasePulseThree 15s ease-in-out infinite}.step.present .analogy-direct-dom .result-pass .plate{animation:directReset 15s ease-in-out infinite}.step.present .analogy-direct-dom .result-pass .plate:nth-child(2){animation-delay:.12s}.step.present .analogy-direct-dom .result-pass .plate:nth-child(3){animation-delay:.24s}.step.present .analogy-direct-dom .direct-line .chef-action,.step.present .analogy-direct-dom .result-chip{animation:directActions 15s ease-in-out infinite}.step.present .analogy-direct-dom .direct-line .chef-action:last-child{animation-delay:.35s}.step.present .analogy-with-vdom .result-pass .changing{animation:patchSinglePlate 15s ease-in-out infinite}.step.present .analogy-with-vdom .result-pass .plate:not(.changing){animation:stablePlates 15s ease-in-out infinite}.step.present .analogy-with-vdom .vdom-line .chef-action:first-child{animation:compareAction 15s ease-in-out infinite}.step.present .analogy-with-vdom .vdom-line .chef-action:last-child{animation:patchAction 15s ease-in-out infinite}.step.present .analogy-item .compare-grid .plate.delta,.step.present .analogy-item .delta-chip{animation:comparePulse 15s ease-in-out infinite}@keyframes phasePulseOne{0%,31%,to{background:#c9d1d90f;border-color:#c9d1d933}7%,24%{background:#57a5ff42;border-color:#57a5ff80}}@keyframes phasePulseTwo{0%,31%,to{background:#c9d1d90f;border-color:#c9d1d933}35%,58%{background:#57a5ff42;border-color:#57a5ff80}}@keyframes phasePulseThree{0%,63%,to{background:#c9d1d90f;border-color:#c9d1d933}67%,92%{background:#57a5ff42;border-color:#57a5ff80}}@keyframes comparePulse{0%,34%,to{box-shadow:none}41%,56%{box-shadow:0 0 0 3px #ffd2535c}}@keyframes directReset{0%,66%,to{transform:translateY(0) scale(1);opacity:1;background:linear-gradient(135deg,#27354a,#324765)}73%{transform:translateY(-18px) scale(.75);opacity:.12;background:linear-gradient(135deg,#5a2420,#6d2f28)}84%{transform:translateY(10px) scale(.82);opacity:.45}92%{transform:translateY(0) scale(1.03);opacity:1;background:linear-gradient(135deg,#314c2f,#3d6440)}}@keyframes directActions{0%,66%,to{transform:translateY(0);background:#c9d1d91f;color:var(--text)}71%,89%{transform:translateY(-3px) scale(1.04);background:#f77f644d;color:#fff2ee}}@keyframes patchSinglePlate{0%,66%,to{transform:translateY(0) scale(1);box-shadow:inset 0 0 0 1px #ffffff14;background:linear-gradient(135deg,#27354a,#324765)}74%{transform:translateY(-7px) scale(1.06);box-shadow:0 0 0 3px #3fb95073;background:linear-gradient(135deg,#254b2c,#32703f)}90%{transform:translateY(0) scale(1);box-shadow:0 0 0 1px #3fb95033;background:linear-gradient(135deg,#2e5e35,#3f7d46)}}@keyframes stablePlates{0%,to{opacity:1}74%,90%{opacity:.78}}@keyframes compareAction{0%,34%,60%,to{background:#c9d1d91f}38%,56%{background:#57a5ff52;color:#edf6ff}}@keyframes patchAction{0%,66%,to{background:#c9d1d91f}75%,92%{background:#3fb95052;color:#ecfff0}}.solution-content{display:flex;flex-direction:column;gap:2rem}.definition{font-size:2rem;text-align:center;color:var(--success);font-weight:600}.comparison{display:flex;align-items:center;gap:2rem}.comparison>div{flex:1}.comparison h3{text-align:center;margin-bottom:1rem}.comparison pre{background:var(--code-bg);border-radius:8px;padding:1.5rem;font-size:2rem}.arrow{font-size:4rem;color:var(--primary);animation:pulse 2s infinite;display:flex;align-items:center;justify-content:center}.code-content{display:flex;flex-direction:column;gap:1.5rem}.code-signatures{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:stretch}.code-signatures pre{height:100%;margin:0}.code-content pre{background:var(--code-bg);border-radius:8px;padding:1.5rem;font-size:1.4rem;overflow-x:auto}.code-content pre code{font-family:var(--font-display);line-height:1.5}.usage{padding:1.5rem;background:#3fb9501a;border-radius:8px}.usage h3{color:var(--success);margin-bottom:1rem}.mount-explainer{display:grid;grid-template-columns:1.1fr 1fr;gap:1.5rem;align-items:stretch}.mount-code pre{height:100%}.mount-visual{background:linear-gradient(160deg,#101826f2,#0a101ceb);border:2px solid rgba(87,165,255,.3);border-radius:12px;padding:1.2rem;display:flex;flex-direction:column;gap:1.2rem}.mount-steps{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.mount-step-item{display:flex;align-items:center;gap:.6rem;border-radius:999px;border:2px solid rgba(201,209,217,.22);background:#c9d1d90f;padding:.6rem 1rem}.mount-step-item .step-number{font-family:var(--font-display);font-size:1.3rem;font-weight:700;width:2rem;height:2rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(201,209,217,.4);background:#c9d1d926}.mount-step-item .step-label{font-family:var(--font-display);font-size:1.3rem;font-weight:600;color:#ebf3fff0}.mount-scene{flex:1;display:grid;grid-template-columns:1fr;gap:.6rem}.mount-lane{border:2px solid rgba(201,209,217,.15);border-radius:10px;background:#c9d1d90a;padding:.8rem 1rem}.mount-lane .lane-title{font-family:var(--font-display);font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#c9d1d9d9;margin-bottom:.6rem}.vnode-chip,.final-node{font-family:var(--font-display);font-size:1.2rem;font-weight:600;border-radius:999px;padding:.5rem 1rem;display:inline-flex;align-items:center}.vnode-chip{color:#edf6ff;border:1px solid rgba(87,165,255,.45);background:#57a5ff38}.dom-node-shell{border:2px dashed rgba(201,209,217,.35);border-radius:10px;background:#0d1117c7;padding:.8rem;min-height:110px}.node-tag{font-family:var(--font-display);font-size:1.2rem;font-weight:600;color:#c9d1d9f2}.node-props,.node-children{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.5rem}.prop-chip,.child-chip{font-family:var(--font-display);font-size:1.1rem;font-weight:500;border-radius:999px;padding:.4rem .8rem;color:#ecfff0}.prop-chip{border:1px solid rgba(87,165,255,.5);background:#57a5ff33}.child-chip{border:1px solid rgba(63,185,80,.52);background:#3fb95033}.dom-container-box{border-radius:10px;border:2px solid rgba(201,209,217,.28);background:#0d1117e6;padding:.8rem;min-height:80px}.container-label{font-family:var(--font-display);font-size:1rem;font-weight:600;color:#c9d1d9d9;display:inline-block;margin-bottom:.5rem}.final-node{color:#ecfff0;border:1px solid rgba(63,185,80,.52);background:#3fb95033}#slide-07-mount.step.present .mount-step-item.step-1{animation:mountStepActive 15s ease-in-out infinite}#slide-07-mount.step.present .mount-step-item.step-2{animation:mountStepActive 15s ease-in-out infinite;animation-delay:3.75s}#slide-07-mount.step.present .mount-step-item.step-3{animation:mountStepActive 15s ease-in-out infinite;animation-delay:7.5s}#slide-07-mount.step.present .mount-step-item.step-4{animation:mountStepActive 15s ease-in-out infinite;animation-delay:11.25s}#slide-07-mount.step.present .dom-node-shell{animation:mountNodeBuild 15s ease-in-out infinite;transform-origin:top left}#slide-07-mount.step.present .prop-chip{animation:mountPropsAttach 15s ease-in-out infinite}#slide-07-mount.step.present .child-chip.child-1{animation:mountChildSpawnOne 15s ease-in-out infinite}#slide-07-mount.step.present .child-chip.child-2{animation:mountChildSpawnTwo 15s ease-in-out infinite}#slide-07-mount.step.present .final-node{animation:mountAppend 15s ease-in-out infinite}@keyframes mountStepActive{0%,18%,to{background:#c9d1d90f;border-color:#c9d1d938;box-shadow:none}4%,14%{background:#57a5ff47;border-color:#57a5ff85;box-shadow:0 0 0 2px #57a5ff2e}}@keyframes mountNodeBuild{0%,18%,to{opacity:.9;transform:scale(.97) translateY(6px);border-color:#c9d1d93d}4%,14%{opacity:1;transform:scale(1) translateY(0);border-color:#57a5ff80}}@keyframes mountPropsAttach{0%,24%,to{opacity:0;transform:translateY(-6px)}29%,44%{opacity:1;transform:translateY(0)}}@keyframes mountChildSpawnOne{0%,49%,to{opacity:0;transform:translate(-8px) scale(.92)}54%,68%{opacity:1;transform:translate(0) scale(1)}}@keyframes mountChildSpawnTwo{0%,54%,to{opacity:0;transform:translate(-8px) scale(.92)}59%,72%{opacity:1;transform:translate(0) scale(1)}}@keyframes mountAppend{0%,74%,to{opacity:.15;transform:translate(-30px) scale(.94);border-color:#c9d1d933;background:#c9d1d914}79%,96%{opacity:1;transform:translate(0) scale(1);border-color:#3fb9508f;background:#3fb9503d}}.patch-case1-layout{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:stretch}.patch-case1-layout pre{margin:0;height:100%}.patch-case1-explainer{background:linear-gradient(160deg,#181219f0,#120e16eb);border:2px solid rgba(247,127,100,.34);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.9rem;height:100%}.patch-case1-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.patch-case1-step{display:flex;align-items:center;gap:.6rem;border-radius:999px;border:2px solid rgba(201,209,217,.24);background:#c9d1d90f;padding:.55rem 1rem}.patch-case1-step .step-number{width:2.2rem;height:2.2rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.2rem;font-weight:700;border:2px solid rgba(201,209,217,.36);background:#c9d1d924;flex-shrink:0}.patch-case1-step .step-label{font-family:var(--font-display);font-size:1.4rem;font-weight:600;color:#f6f0f9f2}.patch-case1-scene{display:grid;grid-template-columns:1fr;gap:.6rem}.patch-case1-lane{border:2px solid rgba(201,209,217,.16);border-radius:10px;background:#c9d1d90a;padding:.7rem .9rem}.patch-case1-lane .lane-title{font-family:var(--font-display);font-size:1.3rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#c9d1d9e0;margin-bottom:.45rem}.tag-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.tag-card{border-radius:10px;border:1px solid rgba(201,209,217,.24);background:#0d1117d1;padding:.5rem;display:flex;flex-direction:column;gap:.3rem}.tag-label{font-family:var(--font-display);font-size:1.1rem;color:#c9d1d9c7}.tag-chip{font-family:var(--font-display);font-size:1.6rem;font-weight:700;border-radius:999px;display:inline-flex;width:fit-content;padding:.35rem .85rem;color:#fff0ed;border:1px solid rgba(247,127,100,.52);background:#f77f643d}.mismatch-chip{margin-top:.55rem;font-family:var(--font-display);font-size:1.25rem;display:inline-block;border-radius:999px;padding:.35rem .85rem;color:#fff1ee;border:1px solid rgba(255,107,107,.55);background:#ff6b6b38}.replace-stage{display:grid;grid-template-columns:1fr auto 1fr;gap:.6rem;align-items:center}.replace-node{font-family:var(--font-display);font-size:1.35rem;font-weight:600;border-radius:999px;padding:.5rem .9rem;text-align:center}.replace-node.old-node{color:#ffd8d8;border:1px solid rgba(255,107,107,.5);background:#ff6b6b33}.replace-node.new-node{color:#ecfff0;border:1px solid rgba(63,185,80,.55);background:#3fb95038;opacity:.2}.replace-arrow{font-size:1.4rem;color:#c9d1d9b8}.replace-actions{margin-top:.55rem;display:flex;gap:.5rem;flex-wrap:wrap}.action-pill{font-family:var(--font-display);font-size:1.1rem;border-radius:999px;padding:.4rem .75rem;border:1px solid rgba(201,209,217,.24);background:#c9d1d914}.mount-pill{color:#edf6ff}.unmount-pill{color:#ffe7e3}#slide-08a-patch.step.present .patch-case1-step.step-1{animation:case1StepActive 15s ease-in-out infinite}#slide-08a-patch.step.present .patch-case1-step.step-2{animation:case1StepActive 15s ease-in-out infinite;animation-delay:5s}#slide-08a-patch.step.present .patch-case1-step.step-3{animation:case1StepActive 15s ease-in-out infinite;animation-delay:10s}#slide-08a-patch.step.present .tag-card,#slide-08a-patch.step.present .mismatch-chip{animation:case1MismatchPulse 15s ease-in-out infinite}#slide-08a-patch.step.present .mount-pill{animation:case1MountAction 15s ease-in-out infinite}#slide-08a-patch.step.present .replace-node.new-node{animation:case1NewNodeEnter 15s ease-in-out infinite}#slide-08a-patch.step.present .unmount-pill{animation:case1UnmountAction 15s ease-in-out infinite}#slide-08a-patch.step.present .replace-node.old-node{animation:case1OldNodeExit 15s ease-in-out infinite;transform-origin:center}@keyframes case1StepActive{0%,18%,to{background:#c9d1d90f;border-color:#c9d1d93d;box-shadow:none}4%,14%{background:#ff6b6b3d;border-color:#ff6b6b8c;box-shadow:0 0 0 2px #ff6b6b33}}@keyframes case1MismatchPulse{0%,34%,to{box-shadow:none}6%,24%{box-shadow:0 0 0 3px #ff6b6b40}}@keyframes case1MountAction{0%,45%,to{background:#c9d1d914;border-color:#c9d1d93d}51%,66%{background:#57a5ff4d;border-color:#57a5ff8f;color:#edf6ff}}@keyframes case1NewNodeEnter{0%,45%,to{opacity:.2;transform:translate(-16px) scale(.93)}52%,70%{opacity:1;transform:translate(0) scale(1)}}@keyframes case1UnmountAction{0%,68%,to{background:#c9d1d914;border-color:#c9d1d93d}74%,92%{background:#f77f6454;border-color:#f77f648f;color:#fff1ee}}@keyframes case1OldNodeExit{0%,68%,to{opacity:1;transform:translate(0) scale(1)}76%{opacity:.25;transform:translate(12px) scale(.92)}90%{opacity:.08;transform:translate(26px) scale(.86)}}.patch-case2-layout{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:stretch}.patch-case2-layout pre{margin:0;height:100%}.patch-case2-explainer{background:linear-gradient(160deg,#161810f2,#10140eeb);border:2px solid rgba(210,153,34,.36);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.9rem;height:100%}.patch-case2-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.patch-case2-step{display:flex;align-items:center;gap:.6rem;border-radius:999px;border:2px solid rgba(201,209,217,.24);background:#c9d1d90f;padding:.55rem 1rem}.patch-case2-step .step-number{width:2.2rem;height:2.2rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.2rem;font-weight:700;border:2px solid rgba(201,209,217,.36);background:#c9d1d924;flex-shrink:0}.patch-case2-step .step-label{font-family:var(--font-display);font-size:1.55rem;font-weight:600;color:#f8f6e6f2}.patch-case2-scene{display:grid;grid-template-columns:1fr;gap:.6rem}.patch-case2-lane{border:2px solid rgba(201,209,217,.16);border-radius:10px;background:#c9d1d90a;padding:.7rem .9rem}.patch-case2-lane .lane-title{font-family:var(--font-display);font-size:1.4rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#c9d1d9e0;margin-bottom:.45rem}.text-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.text-card{border-radius:10px;border:1px solid rgba(201,209,217,.24);background:#0d1117d1;padding:.5rem;display:flex;flex-direction:column;gap:.3rem}.text-label{font-family:var(--font-display);font-size:1.2rem;color:#c9d1d9c7}.text-chip{font-family:var(--font-display);font-size:1.5rem;font-weight:700;border-radius:999px;display:inline-flex;width:fit-content;padding:.35rem .85rem;color:#fff9e8;border:1px solid rgba(210,153,34,.56);background:#d299223d}.text-mode-chip{margin-top:.55rem;font-family:var(--font-display);font-size:1.35rem;display:inline-block;border-radius:999px;padding:.4rem .9rem;color:#fff9e9;border:1px solid rgba(255,217,61,.54);background:#ffd93d33}.text-update-stage{display:grid;grid-template-columns:1fr auto 1fr;gap:.6rem;align-items:center}.dom-shell{border-radius:10px;border:1px solid rgba(201,209,217,.24);background:#0d1117d1;padding:.6rem;display:flex;flex-direction:column;gap:.35rem}.dom-label{font-family:var(--font-display);font-size:1.1rem;color:#c9d1d9c7}.dom-text{font-family:var(--font-display);font-size:1.3rem;font-weight:600;border-radius:8px;padding:.45rem .6rem}.dom-text.before{color:#fff0c8;border:1px solid rgba(210,153,34,.48);background:#d299222e}.dom-text.after{color:#ecfff0;border:1px solid rgba(63,185,80,.5);background:#3fb95033;opacity:.25}.text-arrow{font-size:1.4rem;color:#c9d1d9b8}.text-actions{margin-top:.55rem;display:flex;gap:.5rem;flex-wrap:wrap}.patch-case2-explainer .action-pill{font-size:1.2rem}.update-pill{color:#fff8e3}.return-pill{color:#ecfff0}#slide-08b-patch.step.present .patch-case2-step.step-1{animation:case2StepActive 15s ease-in-out infinite}#slide-08b-patch.step.present .patch-case2-step.step-2{animation:case2StepActive 15s ease-in-out infinite;animation-delay:5s}#slide-08b-patch.step.present .patch-case2-step.step-3{animation:case2StepActive 15s ease-in-out infinite;animation-delay:10s}#slide-08b-patch.step.present .text-card,#slide-08b-patch.step.present .text-mode-chip{animation:case2DetectPulse 15s ease-in-out infinite}#slide-08b-patch.step.present .update-pill{animation:case2UpdateAction 15s ease-in-out infinite}#slide-08b-patch.step.present .dom-text.after{animation:case2TextApply 15s ease-in-out infinite}#slide-08b-patch.step.present .return-pill{animation:case2ReturnAction 15s ease-in-out infinite}@keyframes case2StepActive{0%,18%,to{background:#c9d1d90f;border-color:#c9d1d93d;box-shadow:none}4%,14%{background:#ffd93d3d;border-color:#ffd93d8c;box-shadow:0 0 0 2px #ffd93d33}}@keyframes case2DetectPulse{0%,34%,to{box-shadow:none}6%,24%{box-shadow:0 0 0 3px #ffd93d33}}@keyframes case2UpdateAction{0%,45%,to{background:#c9d1d914;border-color:#c9d1d93d}52%,70%{background:#ffd93d47;border-color:#ffd93d8f;color:#fff8e6}}@keyframes case2TextApply{0%,45%,to{opacity:.25;transform:translate(-14px) scale(.95)}52%,72%{opacity:1;transform:translate(0) scale(1)}}@keyframes case2ReturnAction{0%,68%,to{background:#c9d1d914;border-color:#c9d1d93d}76%,92%{background:#3fb9504d;border-color:#3fb9508f;color:#ecfff0}}.patch-case3-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:1rem;align-items:stretch}.patch-case3-layout pre{margin:0;height:100%}.patch-case3-explainer{background:linear-gradient(160deg,#101814f2,#0c120feb);border:2px solid rgba(63,185,80,.34);border-radius:12px;padding:1rem;display:flex;flex-direction:column;gap:.9rem;height:100%}.patch-case3-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.patch-case3-step{display:flex;align-items:center;gap:.6rem;border-radius:999px;border:2px solid rgba(201,209,217,.24);background:#c9d1d90f;padding:.55rem 1rem}.patch-case3-step .step-number{width:2.2rem;height:2.2rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.2rem;font-weight:700;border:2px solid rgba(201,209,217,.36);background:#c9d1d924;flex-shrink:0}.patch-case3-step .step-label{font-family:var(--font-display);font-size:1.45rem;font-weight:600;color:#ebfff1f2}.patch-case3-scene{display:grid;grid-template-columns:1fr;gap:.6rem}.patch-case3-lane{border:2px solid rgba(201,209,217,.16);border-radius:10px;background:#c9d1d90a;padding:.7rem .9rem}.patch-case3-lane .lane-title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#c9d1d9e0;margin-bottom:.45rem}.array-compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.array-card{border-radius:10px;border:1px solid rgba(201,209,217,.24);background:#0d1117d1;padding:.5rem;display:flex;flex-direction:column;gap:.3rem}.array-label{font-family:var(--font-display);font-size:1.1rem;color:#c9d1d9c7}.array-items{display:flex;flex-wrap:wrap;gap:.35rem}.array-item{font-family:var(--font-display);font-size:1.1rem;font-weight:600;border-radius:999px;padding:.26rem .6rem;border:1px solid rgba(201,209,217,.3);background:#c9d1d91a;color:#f1f9fff2}.array-item.diff{border-color:#57a5ff85;background:#57a5ff40}.array-item.extra{border-color:#3fb9508a;background:#3fb9503d}.minlength-chip{margin-top:.55rem;font-family:var(--font-display);font-size:1.25rem;display:inline-block;border-radius:999px;padding:.35rem .85rem;color:#ebfff1;border:1px solid rgba(87,165,255,.54);background:#57a5ff33}.cursor-row{margin-top:.5rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.cursor-chip{font-family:var(--font-display);font-size:1rem;font-weight:700;border-radius:999px;padding:.28rem .5rem;text-align:center;border:1px solid rgba(87,165,255,.35);background:#57a5ff24;color:#ecf6ffeb}.extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.extra-box{border-radius:10px;border:1px solid rgba(201,209,217,.24);background:#0d1117d1;padding:.6rem;display:flex;flex-direction:column;gap:.35rem}.extra-title{font-family:var(--font-display);font-size:1rem;color:#c9d1d9c7}.extra-chip{font-family:var(--font-display);font-size:1.2rem;font-weight:700;border-radius:999px;padding:.35rem .75rem;width:fit-content}.extra-state{font-family:var(--font-display);font-size:.86rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;width:fit-content;border-radius:999px;padding:.2rem .5rem}.remove-state{color:#ffe7e3;border:1px solid rgba(247,127,100,.48);background:#f77f642e}.add-state{color:#ecfff0;border:1px solid rgba(63,185,80,.48);background:#3fb9502e}.remove-chip{color:#ffe7e3;border:1px solid rgba(247,127,100,.52);background:#f77f643d}.add-chip{color:#ecfff0;border:1px solid rgba(63,185,80,.56);background:#3fb9503d}.case3-actions{margin-top:.55rem;display:flex;gap:.5rem;flex-wrap:wrap}.patch-case3-explainer .action-pill{font-size:1.1rem}.recurse-pill{color:#edf6ff}.remove-pill{color:#ffe7e3}.add-pill{color:#ecfff0}#slide-08c-patch.step.present .patch-case3-step.step-1{animation:case3StepActive 18s ease-in-out infinite}#slide-08c-patch.step.present .patch-case3-step.step-2{animation:case3StepActive 18s ease-in-out infinite;animation-delay:6s}#slide-08c-patch.step.present .patch-case3-step.step-3{animation:case3StepActive 18s ease-in-out infinite;animation-delay:12s}#slide-08c-patch.step.present .array-item,#slide-08c-patch.step.present .extra-box,#slide-08c-patch.step.present .case3-actions .action-pill,#slide-08c-patch.step.present .extra-state,#slide-08c-patch.step.present .cursor-chip{opacity:.34}#slide-08c-patch.step.present .extras-lane{animation:case3RevealExtras 18s ease-in-out infinite}#slide-08c-patch.step.present .array-item.match{animation:case3PairwisePatch 18s ease-in-out infinite}#slide-08c-patch.step.present .cursor-chip.cursor-0{animation:case3CursorActive 18s ease-in-out infinite}#slide-08c-patch.step.present .cursor-chip.cursor-1{animation:case3CursorActive 18s ease-in-out infinite;animation-delay:1.4s}#slide-08c-patch.step.present .cursor-chip.cursor-2{animation:case3CursorActive 18s ease-in-out infinite;animation-delay:2.8s}#slide-08c-patch.step.present .array-item.diff,#slide-08c-patch.step.present .minlength-chip,#slide-08c-patch.step.present .recurse-pill{animation:case3DiffPulse 18s ease-in-out infinite}#slide-08c-patch.step.present .remove-chip,#slide-08c-patch.step.present .remove-pill,#slide-08c-patch.step.present .remove-state{animation:case3UnmountAction 18s ease-in-out infinite}#slide-08c-patch.step.present .add-chip,#slide-08c-patch.step.present .add-pill,#slide-08c-patch.step.present .add-state,#slide-08c-patch.step.present .array-item.extra{animation:case3MountAction 18s ease-in-out infinite}@keyframes case3StepActive{0%,18%,to{background:#c9d1d90f;border-color:#c9d1d93d;box-shadow:none}5%,14%{background:#3fb9503d;border-color:#3fb9508c;box-shadow:0 0 0 2px #3fb95033}}@keyframes case3RevealExtras{0%,40%{opacity:.16;transform:translateY(8px)}48%,to{opacity:1;transform:translateY(0)}}@keyframes case3PairwisePatch{0%,36%,to{transform:translateY(0);box-shadow:none;opacity:.34}8%,28%{transform:translateY(-3px);box-shadow:0 0 0 2px #57a5ff3d;opacity:1}}@keyframes case3CursorActive{0%,32%,to{opacity:.34;transform:scale(.98);background:#57a5ff24;border-color:#57a5ff59}6%,18%{opacity:1;transform:scale(1.03);background:#57a5ff4d;border-color:#57a5ff8f}}@keyframes case3DiffPulse{0%,44%,to{box-shadow:none;opacity:.34}12%,32%{box-shadow:0 0 0 3px #57a5ff38;opacity:1}}@keyframes case3UnmountAction{0%,49%,to{background:#f77f643d;border-color:#f77f6485;opacity:.26}56%,72%{background:#f77f6466;border-color:#f77f64a8;opacity:1}}@keyframes case3MountAction{0%,73%,to{background:#3fb95038;border-color:#3fb9508f;opacity:.26}80%,96%{background:#3fb9505c;border-color:#3fb950ad;opacity:1}}.case3-focus-explainer{display:flex;flex-direction:column;gap:1rem;background:linear-gradient(165deg,#0e1712f2,#0b110deb);border:2px solid rgba(63,185,80,.35);border-radius:14px;padding:1.1rem}.case3-focus-input{border-radius:12px;border:2px solid rgba(87,165,255,.32);background:#57a5ff1a;padding:.75rem .85rem;display:flex;flex-direction:column;gap:.5rem}.case3-focus-input .input-title{margin:0;font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:#e8f5ff}.case3-focus-input .input-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.case3-focus-input .input-box{border-radius:10px;border:1px solid rgba(201,209,217,.3);background:#0a100db3;padding:.45rem .55rem;display:flex;flex-direction:column;gap:.2rem}.case3-focus-input .input-label{font-family:var(--font-display);font-size:1.8rem;color:#c9d1d9d1}.case3-focus-input .input-value{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:#ecfff0}.case3-focus-input .new-input .input-value{color:#d7ffde}.case3-focus-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}.case3-focus-step{display:flex;align-items:center;gap:.6rem;border-radius:999px;border:2px solid rgba(201,209,217,.24);background:#c9d1d914;padding:.6rem 1rem}.case3-focus-step .step-number{width:2.8rem;height:2.8rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.8rem;font-weight:700;border:2px solid rgba(201,209,217,.38);background:#c9d1d924;flex-shrink:0}.case3-focus-step .step-label{font-family:var(--font-display);font-size:1.8rem;font-weight:600;color:#ebfff1f2}.case3-focus-storyboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.focus-panel{border-radius:12px;border:2px solid rgba(201,209,217,.18);background:#0c120ed1;padding:.9rem;min-height:280px;display:flex;flex-direction:column;gap:.65rem;opacity:.34}.focus-panel h3{margin:0;font-size:1.8rem;color:#d9fbe0}.focus-math,.focus-code-ref{font-family:var(--font-display);font-size:1.8rem;color:#e3f5ece6}.focus-cursor-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.focus-cursor{font-family:var(--font-display);font-size:1.8rem;font-weight:700;border-radius:999px;text-align:center;padding:.45rem .6rem;border:1px solid rgba(87,165,255,.35);background:#57a5ff24;color:#ecf6ffeb}.focus-results{display:flex;flex-direction:column;gap:.45rem}.focus-result{font-family:var(--font-display);font-size:1.8rem;font-weight:600;border-radius:999px;padding:.45rem .8rem;border:1px solid rgba(63,185,80,.48);background:#3fb95038;color:#ecfff0}.focus-result.diff{border-color:#57a5ff8c;background:#57a5ff3d;color:#edf6ff}.focus-extra-row{display:flex;gap:.4rem;flex-wrap:wrap}.focus-extra{font-family:var(--font-display);font-size:1.8rem;border-radius:999px;padding:.4rem .7rem;border:1px solid rgba(201,209,217,.35);background:#c9d1d924}.focus-extra.new{border-color:#3fb9508f;background:#3fb95038;color:#ecfff0}.focus-mount-chip{font-family:var(--font-display);font-size:1.8rem;font-weight:700;border-radius:999px;width:fit-content;padding:.5rem .9rem;border:1px solid rgba(63,185,80,.6);background:#3fb95042;color:#ecfff0}.focus-new-node{font-family:var(--font-display);font-size:1.8rem;font-weight:700;border-radius:999px;width:fit-content;padding:.45rem .8rem;border:1px solid rgba(63,185,80,.64);background:#3fb95047;color:#ecfff0}.case3-focus-alt-branch{font-family:var(--font-display);font-size:1.8rem;color:#e3f5ecdb;opacity:.78;margin:0}#slide-08d-patch-case3-flow.step.present .case3-focus-step.step-1{animation:case3FocusStepActive 20s ease-in-out infinite}#slide-08d-patch-case3-flow.step.present .case3-focus-step.step-2{animation:case3FocusStepActive 20s ease-in-out infinite;animation-delay:6.7s}#slide-08d-patch-case3-flow.step.present .case3-focus-step.step-3{animation:case3FocusStepActive 20s ease-in-out infinite;animation-delay:13.4s}#slide-08d-patch-case3-flow.step.present .panel-loop{animation:case3FocusPanelOne 20s ease-in-out infinite}#slide-08d-patch-case3-flow.step.present .panel-patch{animation:case3FocusPanelTwo 20s ease-in-out infinite}#slide-08d-patch-case3-flow.step.present .panel-mount{animation:case3FocusPanelThree 20s ease-in-out infinite}#slide-08d-patch-case3-flow.step.present .focus-cursor.c0{animation:case3FocusCursor 20s ease-in-out infinite}#slide-08d-patch-case3-flow.step.present .focus-cursor.c1{animation:case3FocusCursor 20s ease-in-out infinite;animation-delay:1.5s}#slide-08d-patch-case3-flow.step.present .focus-cursor.c2{animation:case3FocusCursor 20s ease-in-out infinite;animation-delay:3s}#slide-08d-patch-case3-flow.step.present .focus-result,#slide-08d-patch-case3-flow.step.present .focus-code-ref{animation:case3FocusPatchItems 20s ease-in-out infinite}#slide-08d-patch-case3-flow.step.present .focus-mount-chip,#slide-08d-patch-case3-flow.step.present .focus-new-node,#slide-08d-patch-case3-flow.step.present .focus-extra.new{animation:case3FocusMountItems 20s ease-in-out infinite}@keyframes case3FocusStepActive{0%,18%,to{background:#c9d1d914;border-color:#c9d1d93d;box-shadow:none}5%,14%{background:#3fb95042;border-color:#3fb95094;box-shadow:0 0 0 2px #3fb95033}}@keyframes case3FocusPanelOne{0%,35%,to{opacity:.34;transform:translateY(0)}4%,30%{opacity:1;transform:translateY(-2px)}}@keyframes case3FocusPanelTwo{0%,35%,to{opacity:.34;transform:translateY(0)}38%,63%{opacity:1;transform:translateY(-2px)}}@keyframes case3FocusPanelThree{0%,68%,to{opacity:.34;transform:translateY(0)}72%,96%{opacity:1;transform:translateY(-2px)}}@keyframes case3FocusCursor{0%,34%,to{opacity:.45;transform:scale(.98);background:#57a5ff24}7%,16%{opacity:1;transform:scale(1.04);background:#57a5ff4d}}@keyframes case3FocusPatchItems{0%,38%,to{opacity:.42}44%,62%{opacity:1}}@keyframes case3FocusMountItems{0%,70%,to{opacity:.32;transform:translateY(0)}76%,95%{opacity:1;transform:translateY(-2px)}}.demo-container{display:flex;gap:2rem;height:850px;margin-top:1rem}.demo-code{flex:1;display:flex;flex-direction:column}.code-editor{flex:1;background:var(--code-bg);border-radius:8px;padding:1.5rem;font-size:1.8rem;font-family:var(--font-display);color:var(--text);border:none;resize:none;outline:none;line-height:1.5}.code-editor:focus{box-shadow:0 0 0 2px var(--primary)}.demo-controls{display:flex;gap:1.5rem;align-items:center;padding:.75rem 1rem;background:#ffffff0d;border-radius:8px;margin-top:.75rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-family:var(--font-display);font-size:1rem;cursor:pointer;transition:all .2s ease}.btn-primary{background:var(--primary);color:var(--background)}.btn-primary:hover{background:#79b8ff}.btn-secondary{background:#ffffff1a;color:var(--text)}.btn-secondary:hover{background:#fff3}.slider-container,.toggle-container{display:flex;align-items:center;gap:.5rem;font-size:1rem}.toggle-container label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.demo-result{flex:1;display:flex;flex-direction:column}#demo-app{flex:0 0 auto;min-height:180px;background:var(--code-bg);border-radius:8px;padding:1.5rem}#demo-inspector{flex:1;min-height:400px;background:#0000004d;border-radius:8px;margin-top:1rem;padding:1rem;font-family:var(--font-display);font-size:1.4rem;overflow:auto}.demo-result .container{padding:1rem;border:2px solid var(--primary);border-radius:8px}.demo-result .container h1,.demo-result .container p{color:var(--text);margin:.5rem 0;font-size:2.2rem}.demo-result .container span{padding:.25rem .5rem;margin:.25rem;background:#57a5ff33;border-radius:4px;display:inline-block;font-size:2rem}.demo-result .changed{border-color:var(--success);background:#3fb9501a}.demo-result .removed{border-color:var(--accent);background:#f77f641a}#demo-metrics{padding:.75rem 1rem;background:#0000004d;border-radius:8px;margin-bottom:.75rem;font-family:var(--font-display);font-size:1rem;text-align:center}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{background:var(--primary)}.benchmark-content{display:flex;flex-direction:column;gap:2rem}.benchmark-live-content{gap:1.25rem}.benchmark-controls{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;border-radius:8px;background:#ffffff0a}.benchmark-summary{margin-left:auto;font-family:var(--font-display);font-size:1rem;padding:.45rem .8rem;border-radius:999px;background:#57a5ff29;color:var(--primary)}.benchmark-stage-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.benchmark-stage-panel{padding:.9rem;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0000003d}.benchmark-stage-panel h3{margin-bottom:.5rem;font-size:1.35rem}.benchmark-live-label{font-family:var(--font-display);font-size:.9rem;color:var(--text);opacity:.85;margin-bottom:.55rem}.benchmark-stage{min-height:110px;max-height:115px;overflow:auto;border-radius:8px;padding:.85rem;border:1px solid rgba(255,255,255,.1);background:var(--code-bg)}.benchmark-stage ul{margin:0;padding:0;list-style:none}.benchmark-stage li{padding:.2rem .4rem;font-family:var(--font-display);font-size:.9rem;border-bottom:1px dashed rgba(255,255,255,.12)}.benchmark-stage li:before{content:none}.benchmark-table{width:100%;border-collapse:collapse;font-size:1.2rem}.benchmark-live-table{font-size:1.7rem}.benchmark-table th,.benchmark-table td{padding:1rem 1.5rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.benchmark-table th{background:#57a5ff33;color:var(--primary);font-family:var(--font-display)}.benchmark-table td{font-family:var(--font-display)}.benchmark-table .highlight{color:var(--success);font-weight:700}.disclaimer{font-size:.9rem;color:var(--text);opacity:.5;text-align:center;font-style:italic}.when-matters{display:flex;gap:3rem}.when-matters-split{margin-top:2rem}.when-block{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:1.4rem}.when-block h3{margin-bottom:.8rem}.when-block ul{display:flex;flex-direction:column;gap:.55rem}.when-block li{font-size:1.7rem}.when-block li p{margin:0;padding-left:.8rem}.when-block .detail{font-size:1.6rem;color:#c9d1d9bf;margin-top:.2rem}.when-block .example{font-size:1.6rem;color:var(--primary);font-style:italic}.when-block .metric{font-size:1.6rem;color:var(--success);font-family:var(--font-display);margin-top:.15rem}.when-block .problem{font-size:1.6rem;color:var(--accent)}.when-block .alt{font-size:1.7rem;color:var(--secondary);margin-top:.15rem}.when-matters>div{flex:1}.comparison-content{display:flex;flex-direction:column;gap:2rem}.comparison-table{width:100%;border-collapse:collapse;font-size:1.2rem}.comparison-table th,.comparison-table td{padding:1rem 1.5rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.comparison-table th{background:#a373f733;color:var(--secondary);font-family:var(--font-display)}.comparison-table .yes{color:var(--success);font-size:1.5rem}.comparison-table .no{color:var(--accent);font-size:1.5rem}.message{text-align:center;font-size:1.5rem;color:var(--primary);font-weight:600}.vue-info{padding:1.5rem;background:#3fb9501a;border-radius:8px}.timeline{display:flex;justify-content:space-between;align-items:flex-start;margin:2rem 0;padding:2rem 0;border-top:2px solid var(--primary);border-bottom:2px solid var(--primary)}.timeline-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem}.timeline-item .year{font-family:var(--font-display);font-size:1.5rem;color:var(--primary);font-weight:700}.timeline-item .tech{font-family:var(--font-display);font-size:1.2rem;color:var(--secondary)}.timeline-item .desc{font-size:.9rem;color:var(--text);opacity:.7}.overkill,.alternatives{margin-top:1.5rem;padding:1.5rem;border-radius:8px}.overkill{background:#f77f641a}.alternatives{background:#3fb9501a}.resources{padding:1.5rem;background:#57a5ff1a;border-radius:8px;margin-bottom:2rem}.qr-container{margin-top:1.5rem;text-align:center}.qr-container img{width:250px;height:250px;border-radius:8px;border:2px solid rgba(87,165,255,.3);padding:8px;background:#fff}.tldr{padding:1.5rem;background:#a373f71a;border-radius:8px;margin-bottom:2rem}.closing{text-align:center;padding:2rem}.closing h1{font-size:4rem;margin-bottom:1rem}.joke{font-family:var(--font-display);font-size:1.5rem;color:var(--accent)}.joke-sub{font-size:1.2rem;color:var(--text);opacity:.7}pre code.hljs{background:transparent;padding:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.step.present .slide-cover .title{animation:fadeInUp 1s ease-out}.step.present .counter-number{animation:pulse 2s infinite}.notes{display:none}#overview{opacity:.3}#overview:hover{opacity:.8}@media (max-width: 1200px){.step{width:1400px;height:800px;padding:32px 44px}.step h1{font-size:2.5rem}.step h2{font-size:1.5rem}.step p,.step li{font-size:1.4rem}.mount-explainer,.code-signatures,.mount-steps,.patch-case1-steps,.patch-case1-layout,.patch-case2-layout,.patch-case3-layout{grid-template-columns:1fr}.benchmark-stage-grid,.when-matters{grid-template-columns:1fr;display:grid;gap:1rem}.case3-focus-steps,.case3-focus-storyboard,.case3-focus-input .input-grid{grid-template-columns:1fr}.mount-step-item .step-label{font-size:.76rem}.mount-lane .lane-title,.patch-case1-lane .lane-title,.patch-case2-lane .lane-title,.patch-case3-lane .lane-title,.vnode-chip,.final-node,.node-tag{font-size:.72rem}.patch-case1-step .step-label,.patch-case2-step .step-label,.patch-case3-step .step-label,.case3-focus-step .step-label,.tag-chip,.replace-node,.text-chip,.dom-text,.array-item,.extra-chip,.focus-result,.focus-mount-chip,.focus-new-node{font-size:.74rem}.mismatch-chip,.action-pill,.tag-label,.text-mode-chip,.text-label,.dom-label,.array-label,.minlength-chip,.extra-title,.cursor-chip,.extra-state,.focus-code-ref,.focus-cursor,.focus-extra,.case3-focus-alt-branch,.case3-focus-input .input-title,.case3-focus-input .input-label,.case3-focus-input .input-value{font-size:.62rem}.prop-chip,.child-chip{font-size:.64rem}.analogy-boxes{flex-direction:column}.plate{width:78px;height:44px;font-size:1.15rem}.phase-labels span{font-size:.92rem}.kitchen-stage{font-size:.96rem}.compare-title,.delta-chip,.result-chip{font-size:.82rem}}@media (prefers-reduced-motion: reduce){.step.present .analogy-item .phase-labels span,.step.present .analogy-item .compare-grid .plate.delta,.step.present .analogy-item .delta-chip,.step.present .analogy-direct-dom .direct-pass .plate,.step.present .analogy-direct-dom .direct-line .chef-action,.step.present .analogy-direct-dom .result-chip,.step.present .analogy-with-vdom .vdom-pass .changing,.step.present .analogy-with-vdom .vdom-pass .plate:not(.changing),.step.present .analogy-with-vdom .vdom-line .chef-action,#slide-07-mount.step.present .mount-step-item,#slide-07-mount.step.present .dom-node-shell,#slide-07-mount.step.present .prop-chip,#slide-07-mount.step.present .child-chip,#slide-07-mount.step.present .final-node,#slide-08a-patch.step.present .patch-case1-step,#slide-08a-patch.step.present .tag-card,#slide-08a-patch.step.present .mismatch-chip,#slide-08a-patch.step.present .mount-pill,#slide-08a-patch.step.present .replace-node.new-node,#slide-08a-patch.step.present .unmount-pill,#slide-08a-patch.step.present .replace-node.old-node,#slide-08b-patch.step.present .patch-case2-step,#slide-08b-patch.step.present .text-card,#slide-08b-patch.step.present .text-mode-chip,#slide-08b-patch.step.present .update-pill,#slide-08b-patch.step.present .dom-text.after,#slide-08b-patch.step.present .return-pill,#slide-08c-patch.step.present .patch-case3-step,#slide-08c-patch.step.present .extras-lane,#slide-08c-patch.step.present .array-item.match,#slide-08c-patch.step.present .array-item.diff,#slide-08c-patch.step.present .minlength-chip,#slide-08c-patch.step.present .cursor-chip,#slide-08c-patch.step.present .recurse-pill,#slide-08c-patch.step.present .remove-chip,#slide-08c-patch.step.present .remove-pill,#slide-08c-patch.step.present .remove-state,#slide-08c-patch.step.present .add-chip,#slide-08c-patch.step.present .add-pill,#slide-08c-patch.step.present .add-state,#slide-08c-patch.step.present .array-item.extra,#slide-08d-patch-case3-flow.step.present .case3-focus-step,#slide-08d-patch-case3-flow.step.present .panel-loop,#slide-08d-patch-case3-flow.step.present .panel-patch,#slide-08d-patch-case3-flow.step.present .panel-mount,#slide-08d-patch-case3-flow.step.present .focus-cursor,#slide-08d-patch-case3-flow.step.present .focus-result,#slide-08d-patch-case3-flow.step.present .focus-code-ref,#slide-08d-patch-case3-flow.step.present .focus-mount-chip,#slide-08d-patch-case3-flow.step.present .focus-new-node,#slide-08d-patch-case3-flow.step.present .focus-extra.new{animation:none}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}
