:root{--glow:#e39a2f;--water:#3b7fb6;--laser:#d1443a;--sheet-rule:color-mix(in srgb, var(--card-border) 62%, transparent);--sheet-shadow:0 1px 0 #1a181412, 0 16px 28px -22px #1a18144d, 0 40px 64px -48px #1a181457}html[data-theme=dark]{--glow:#f2bb57;--water:#7db1df;--laser:#ee6a5b;--sheet-shadow:0 1px 0 #0006, 0 18px 30px -22px #0009, 0 40px 64px -44px #000000b3}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.fig-label-row{justify-content:space-between;align-items:center;gap:12px;min-height:34px;display:flex}.fig-label{font-family:var(--f-display);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:23px;line-height:1}.fig-num{color:var(--accent-ink);font-style:italic}.sheet-controls{align-items:center;gap:6px;display:inline-flex}.sheet-control{border:1px solid var(--paper-line);background:var(--paper-2);width:32px;height:32px;color:var(--ink-2);cursor:pointer;border-radius:999px;place-items:center;transition:color .14s,border-color .14s,transform .14s;display:inline-grid}.sheet-control:hover{color:var(--ink);border-color:var(--card-border);transform:translateY(-1px)}.sheet-control-icon{width:14px;height:14px}.sheet-control-icon.is-flipped{transform:scaleX(-1)}.sheet-count{text-align:center;min-width:96px;font-family:var(--f-display);color:var(--ink-2);font-size:17px;font-style:italic}.drafting-figure{margin:0}.sheet-stack{isolation:isolate;margin:2px 6px 0;position:relative}.sheet-stack:before,.sheet-stack:after{content:"";z-index:0;border:1px solid var(--card-border);background:var(--card-bg);box-shadow:var(--sheet-shadow);border-radius:3px;position:absolute;inset:0}.sheet-stack:before{opacity:.75;transform:rotate(-2.4deg)translate(-8px,8px)}.sheet-stack:after{opacity:.9;transform:rotate(1.7deg)translate(9px,11px)}.drafting-sheet{z-index:1;border:1px solid var(--card-border);background:var(--card-bg);outline:1px solid var(--sheet-rule);outline-offset:-9px;box-shadow:var(--sheet-shadow);border-radius:3px;padding:20px 20px 14px;position:relative;transform:rotate(.4deg)}.sheet-header{font-family:var(--f-display);color:var(--ink);transition:opacity .32s}.sheet-header.is-classic{text-align:center;gap:1px;padding:4px 10px 8px;display:grid}.sheet-header-inventor,.sheet-header-title{text-transform:uppercase;letter-spacing:.1em;font-size:15px;line-height:1.2}.sheet-header-title{letter-spacing:.14em;color:var(--ink-2);font-size:13.5px}.sheet-header-meta,.sheet-header.is-modern{color:var(--ink-2);justify-content:space-between;gap:12px;font-size:15px;font-style:italic;display:flex}.sheet-header-meta{margin-top:8px}.sheet-header.is-modern{letter-spacing:.02em;padding:4px 10px 30px;font-style:normal}.drafting-sheet[data-phase=exiting] .sheet-header{opacity:0}.sheet-art{width:100%;height:clamp(232px,37vh,330px);transition:opacity .38s,transform .38s;display:block}.drafting-sheet[data-phase=exiting] .sheet-art{opacity:0;transform:translateY(-6px)rotate(-.6deg)}.sheet-caption{gap:12px;margin-top:26px;padding-inline:6px;display:grid}.sheet-caption-text{color:var(--ink-2);min-height:3.1em;font-size:15px;line-height:1.55}.sheet-actions{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.sheet-action{border:1px solid var(--card-border);background:var(--card-bg);min-height:36px;color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;padding:7px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:border-color .14s,background-color .14s;display:inline-flex}.sheet-action:hover{border-color:var(--ink)}.sheet-action.is-quiet{min-height:0;color:var(--ink-muted);text-underline-offset:4px;background:0 0;border:0;padding:0;font-weight:400;text-decoration:underline}.sheet-action.is-quiet:hover{color:var(--accent-ink)}.ink-art{color:var(--ink);overflow:visible}.ink-art :where([data-draw],.ink path,.ink circle,.ink ellipse,.ink rect,.ink line){fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;transition:fill-opacity .26s}.ink-art .solid{fill:var(--card-bg)}.ink-art .shade{fill:color-mix(in srgb, var(--ink) 8%, var(--card-bg))}.ink-art .thin{stroke-width:1.05px}.ink-art .fill-dot{fill:currentColor;stroke:none}.ref-lead{fill:none;stroke:var(--ink-muted);stroke-width:.9px;stroke-linecap:round}.ref-callout text{font-family:var(--f-display);fill:var(--ink-2);font-size:15px;font-style:italic}.pen{opacity:0;pointer-events:none;transition:opacity .18s}.pen-tip{fill:var(--accent)}.pen-halo{fill:color-mix(in srgb, var(--accent) 24%, transparent)}.drafting-sheet[data-phase=pending] [data-draw]{visibility:hidden}.drafting-sheet[data-phase=drafting] .pen{opacity:1}.drafting-sheet .ref-callout,.drafting-sheet .fill-in{opacity:0;transition:opacity .45s}.drafting-sheet .ref-lead{stroke-dasharray:1;stroke-dashoffset:1px;transition:stroke-dashoffset .6s .12s}.drafting-sheet:is([data-phase=operating],[data-phase=exiting],[data-phase=static]) :is(.ref-callout,.fill-in){opacity:1}.drafting-sheet:is([data-phase=operating],[data-phase=exiting],[data-phase=static]) .ref-lead{stroke-dashoffset:0}.drafting-sheet[data-inview=false] *{animation-play-state:paused!important}.op-lamp-glow,.op-lamp-rays{opacity:0}.op-lamp-rays{fill:none;stroke:var(--glow);stroke-width:2.2px;stroke-linecap:round}[data-phase=operating] .op-lamp-glow{animation:1.4s ease-out forwards lamp-flicker}[data-phase=operating] .op-lamp-rays{animation:3.6s ease-in-out forwards lamp-rays}[data-phase=operating] .op-lamp-filament{animation:1.4s ease-out forwards filament-heat}[data-phase=static] :is(.op-lamp-glow,.op-lamp-rays){opacity:1}[data-phase=static] .op-lamp-filament{stroke:var(--glow)}@keyframes lamp-flicker{0%{opacity:0}14%{opacity:.75}22%{opacity:.1}36%{opacity:.9}46%{opacity:.35}64%,to{opacity:1}}@keyframes filament-heat{0%{stroke:currentColor}14%{stroke:var(--glow)}22%{stroke:currentColor}36%,to{stroke:var(--glow);stroke-width:2.3px}}@keyframes lamp-rays{0%,38%{opacity:0}52%,70%{opacity:1}84%{opacity:.55}to{opacity:1}}.op-flyer,.op-flyer-prop{transform-box:view-box}.op-flyer{transform-origin:160px 120px}[data-phase=operating] .op-flyer{animation:2.6s ease-in-out infinite flyer-bob}[data-phase=operating] .op-flyer-prop{animation:.34s linear infinite prop-spin}@keyframes flyer-bob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-5px)rotate(-1.4deg)}}@keyframes prop-spin{to{transform:rotate(360deg)}}.op-signal-stop,.op-signal-go{transform-box:fill-box}.op-signal-stop{transform-origin:100%}.op-signal-go{transform-origin:0%}.signal-word{font-family:var(--f-mono);letter-spacing:.14em;fill:currentColor;font-size:9.5px}.signal-bolt{fill:currentColor}[data-phase=operating] .op-signal-stop{animation:4s ease-in-out infinite signal-stop}[data-phase=operating] .op-signal-go{animation:4s ease-in-out infinite signal-go}[data-phase=operating] .op-signal-lamp{animation:4s step-end infinite signal-lamp}@keyframes signal-stop{0%,44%{transform:rotate(0)}54%,90%{transform:rotate(-64deg)}to{transform:rotate(0)}}@keyframes signal-go{0%{transform:rotate(0)}10%,44%{transform:rotate(64deg)}54%,to{transform:rotate(0)}}@keyframes signal-lamp{0%{fill:var(--laser)}50%{fill:var(--accent)}92%{fill:var(--glow)}}.hatch-line{stroke:var(--ink-muted);stroke-width:.8px}.stair-section{stroke:none}.drafting-sheet .stair-section.fill-in{transition-duration:.7s}:is([data-phase=operating],[data-phase=exiting],[data-phase=static]) .stair-section{opacity:.55!important}.ink-art .op-slinky-coil{stroke-width:1.15px}.op-water{fill:none;stroke:var(--water);stroke-width:3.4px;stroke-linecap:round;stroke-dasharray:16 9;opacity:0}.op-water-drops circle{fill:var(--water);opacity:0}[data-phase=operating] .op-pump{animation:3.6s ease-in-out infinite pump}[data-phase=operating] .op-water{animation:3.6s linear infinite water-on,.45s linear infinite water-flow}[data-phase=operating] .op-water-drops circle{animation:3.6s ease-in infinite drop-fall}[data-phase=operating] .op-water-drops circle:nth-child(2){animation-delay:.18s}[data-phase=operating] .op-water-drops circle:nth-child(3){animation-delay:.32s}[data-phase=static] :is(.op-water,.op-water-drops circle){opacity:1}@keyframes pump{0%,40%,to{transform:translate(0)}10%,30%{transform:translate(-17px)}20%{transform:translate(0)}}@keyframes water-on{0%,42%{opacity:0}46%,88%{opacity:1}94%,to{opacity:0}}@keyframes water-flow{to{stroke-dashoffset:-25px}}@keyframes drop-fall{0%,48%{opacity:0;transform:translateY(0)}54%{opacity:1}88%,to{opacity:0;transform:translateY(28px)}}.ink-art .cat-beam{stroke:var(--laser);stroke-width:1.2px;stroke-dasharray:2 4}.cat-dot-core,.cat-button,.cat-pupil,.cat-nose{fill:currentColor}.cat-dot-core{fill:var(--laser)}.cat-dot-halo{fill:color-mix(in srgb, var(--laser) 26%, transparent);transform-box:fill-box;transform-origin:50%}.op-cat-tail{transform-box:view-box;transform-origin:291px 212px}[data-phase=operating] .cat-dot-halo{animation:.7s ease-in-out infinite alternate dot-pulse}[data-phase=operating] .op-cat-tail{animation:1.5s ease-in-out infinite tail-swish}@keyframes dot-pulse{to{transform:scale(1.5)}}@keyframes tail-swish{0%,to{transform:rotate(0)}50%{transform:rotate(-10deg)}}.stamp{background:color-mix(in srgb, var(--card-bg) 86%, currentColor);box-shadow:inset 0 0 0 2px var(--card-bg), inset 0 0 0 3.5px currentColor;font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap;opacity:.92;border:2.5px solid;border-radius:5px;padding:7px 13px 6px;font-size:15px;font-weight:500;animation:.34s cubic-bezier(.2,1.4,.45,1) both stamp-down;position:absolute;top:5%;right:0;transform:rotate(-9deg)}.stamp.is-granted{color:var(--accent-ink)}.stamp.is-void{color:var(--bad)}@keyframes stamp-down{0%{opacity:0;transform:rotate(-17deg)scale(1.9)}62%{opacity:1;transform:rotate(-8deg)scale(.95)}to{opacity:.92;transform:rotate(-9deg)scale(1)}}.patent-figure{min-width:0;margin:0}.figure-sheet{outline-offset:-8px;padding:16px 16px 12px}.figure-sheet .sheet-header.is-modern{padding:2px 6px 12px;font-size:13.5px}.figure-sheet .sheet-header.is-classic{padding:2px 6px 8px}.figure-sheet .sheet-header-inventor{font-size:14px}.figure-sheet .sheet-header-title{font-size:12px}.figure-sheet .sheet-header-meta{font-size:13.5px}.figure-stage{position:relative}.figure-art{aspect-ratio:4/3;width:100%;height:auto;display:block}.figure-caption{color:var(--ink-muted);margin:12px 4px 0;font-size:13.5px;line-height:1.5}.figure-caption .fig-num{margin-right:4px}.figure-stamp{opacity:0;animation:none;top:2%;right:0}.drafting-sheet[data-phase=operating] .figure-stamp{animation:.34s cubic-bezier(.2,1.4,.45,1) .25s both stamp-down}.drafting-sheet[data-phase=static] .figure-stamp{opacity:.92}.stamp.is-warn{color:var(--warn)}.figure-intro{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:40px;margin-bottom:30px;display:grid}.figure-intro .patent-figure{position:sticky;top:104px}.guide-intro{margin-bottom:26px}.figure-intro .display{font-size:clamp(36px,4.4vw,56px)}.figure-strip{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;gap:28px;margin-bottom:34px;display:grid}.figure-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:26px 20px;margin:0;padding:0;list-style:none;display:grid}.figure-grid.is-guides{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.figure-card{color:inherit;gap:6px;text-decoration:none;display:grid}.figure-card .figure-sheet{margin-bottom:8px;padding:12px;transition:transform .22s,box-shadow .22s}a.figure-card:is(:hover,:focus-visible) .figure-sheet{transform:translateY(-3px)rotate(-.4deg)}a.figure-card:focus-visible{outline:none}a.figure-card:focus-visible .figure-sheet{box-shadow:var(--focus-ring), var(--sheet-shadow)}.figure-card-title{font-family:var(--f-display);letter-spacing:-.01em;font-size:21px;line-height:1.15}a.figure-card:hover .figure-card-title{color:var(--accent-ink)}.figure-card-meta{color:var(--ink-muted);font-size:13.5px;line-height:1.45}.figure-card .figure-stamp{letter-spacing:.1em;border-width:2px;padding:3px 7px 2px;font-size:10px;top:0;right:-4px}.cluster-card{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:26px;display:grid}.cluster-card .figure-sheet{padding:10px}.guide-section{gap:20px;margin-top:12px;display:grid}.figure-art :where(path,circle,ellipse,rect,line,polygon,polyline):not([fill]){fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.figure-art .pen circle,.figure-art :is(.cat-dot-core,.cat-dot-halo,.cat-button,.cat-pupil,.cat-nose,.signal-bolt),.figure-art .op-water-drops circle{stroke:none}.ink-art .coffee-stream{stroke:color-mix(in srgb, #7a4b2a 80%, var(--ink));stroke-width:2.6px;stroke-dasharray:3 3}.ink-art .dashed{stroke-dasharray:4 5}.ink-art .note-strip{fill:color-mix(in srgb, var(--note-yellow) 70%, var(--glow));stroke:none}.ink-art .water-drops path{fill:var(--water);stroke:none}.ink-art .ink-fill{fill:currentColor;stroke:none}.ink-art .paper-dot{fill:var(--card-bg);stroke:none}.ink-art .led{fill:var(--accent);stroke:none}.ink-art .screen{fill:color-mix(in srgb, var(--ink) 7%, var(--card-bg))}.ink-art .glass{fill:color-mix(in srgb, var(--note-sky) 55%, var(--card-bg))}.ink-art .liquid{fill:color-mix(in srgb, var(--water) 22%, var(--card-bg))}.ink-art .coffee{fill:color-mix(in srgb, #7a4b2a 50%, var(--card-bg))}.ink-art .warm{fill:color-mix(in srgb, var(--glow) 38%, var(--card-bg))}.ink-art .rose{fill:var(--note-pink)}.ink-art .mint{fill:var(--note-mint)}.ink-art .butter{fill:var(--note-yellow)}.ink-art .peach{fill:var(--note-peach)}.ink-art .sky{fill:var(--note-sky)}.ink-art .heart{fill:var(--laser);stroke:none}.ink-art .coin{fill:var(--glow);stroke:none}.ink-art .accent-line{stroke:var(--accent);stroke-width:1.6px;fill:none}.ink-art .water-line{stroke:var(--water);fill:none}.ink-art .laser-line{stroke:var(--laser);fill:none}.ink-art .glow-line{stroke:var(--glow);fill:none}.ink-art .grille{stroke:var(--ink-muted)}.ink-art .ring-light{fill:none;stroke:color-mix(in srgb, var(--water) 70%, var(--card-bg));stroke-width:4px}.ink-art .card-digits{stroke-width:2.6px;stroke-dasharray:2.5 3.5}.ink-art .scanbar{fill:color-mix(in srgb, var(--accent) 22%, transparent);stroke:none}.ink-art .reel-symbol{font-family:var(--f-display);fill:currentColor;font-size:14px}.ink-art .tv-cursor{fill:none;stroke:var(--accent);stroke-width:2px}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .tv-cursor{animation:4.8s step-end infinite tv-cursor}@keyframes tv-cursor{0%{transform:translate(0)}25%{transform:translate(34px,20px)}50%{transform:translateY(40px)}75%{transform:translate(56px,40px)}}.ink-art .label-text{font-family:var(--f-mono);letter-spacing:.08em;fill:currentColor;font-size:8px}.ink-art .wood{fill:color-mix(in srgb, var(--glow) 20%, var(--card-bg))}.ink-art .tint{fill:color-mix(in srgb, var(--ink) 22%, transparent);stroke:none}.ink-art .led-bar{stroke:var(--accent);stroke-width:3px}.ink-art .hose-core{stroke:var(--card-bg);stroke-width:4.4px;fill:none}.ink-art .led-panel{fill:color-mix(in srgb, var(--accent) 30%, transparent);stroke:none}.ink-art .rung{stroke:var(--ink-muted)}.ink-art .paper-line{stroke:color-mix(in srgb, #fff 80%, var(--note-sky));stroke-width:2px}.ink-art .hop-block{fill:color-mix(in srgb, var(--accent) 45%, var(--card-bg));stroke:var(--accent);stroke-width:1.2px}.ink-art .hole-dots{stroke-width:3.2px;stroke-dasharray:.1 9;stroke-linecap:round}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .hop-block{animation:3.2s step-end infinite freq-hop}@keyframes freq-hop{0%{transform:translate(0)}12.5%{transform:translate(60px,-38px)}25%{transform:translate(120px,-14px)}37.5%{transform:translate(20px,-48px)}50%{transform:translate(100px,-26px)}62.5%{transform:translate(140px)}75%{transform:translate(40px,-22px)}87.5%{transform:translate(80px,-48px)}}.ink-art :is(.fx-spin,.fx-spin-slow,.fx-pulse,.fx-shake,.fx-squish,.fx-tumble){transform-box:fill-box;transform-origin:50%}.ink-art .fx-write{transform-box:fill-box;transform-origin:0%}.ink-art :is(.fx-blind,.fx-blind-down){transform-box:fill-box;transform-origin:50% 0}.ink-art .fx-twist{transform-box:fill-box;transform-origin:50%}.ink-art :is(.fx-sway,.fx-tilt,.fx-wave){transform-box:view-box}.ink-art .fx-flow{stroke-dasharray:5 6}.ink-art .fx-on{opacity:0;transition:opacity .4s}:is(.drafting-sheet:is([data-phase=operating],[data-phase=static]),.figure-card:is(:hover,:focus-within)) .fx-on{opacity:1}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-spin{animation:fx-spin var(--dur,1.1s) linear var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-spin-slow{animation:fx-spin var(--dur,7s) linear var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-bob{animation:fx-bob var(--dur,1.8s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-lift{animation:fx-lift var(--dur,2.6s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-slide{animation:fx-slide var(--dur,2.4s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-sway{animation:fx-sway var(--dur,2.4s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-tilt{animation:fx-tilt var(--dur,3.2s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-press{animation:fx-press var(--dur,1.6s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-shake{animation:fx-shake var(--dur,.18s) linear var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-pulse{animation:fx-pulse var(--dur,1.6s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-squish{animation:fx-squish var(--dur,2.2s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-blink{animation:fx-blink var(--dur,1.4s) steps(1) var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-glow{animation:fx-glow var(--dur,2.2s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-flow{animation:fx-flow var(--dur,.9s) linear var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-rise{animation:fx-rise var(--dur,2.2s) ease-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-fall{animation:fx-fall var(--dur,1.8s) ease-in var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-wave{animation:fx-wave var(--dur,2s) ease-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-write{animation:fx-write var(--dur,3.6s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-reel{animation:fx-reel var(--dur,.45s) linear var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-launch{animation:fx-launch var(--dur,2.4s) ease-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-blind{animation:fx-blind var(--dur,4s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-blind-down{animation:fx-blind-down var(--dur,3.4s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-twist{animation:fx-twist var(--dur,2.4s) ease-in-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-hit{animation:fx-hit var(--dur,2.6s) ease-out var(--d,0s) infinite}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .fx-tumble{animation:fx-tumble var(--dur,2.4s) ease-in-out var(--d,0s) infinite}.drafting-sheet[data-inview=false] [class*=fx-]{animation-play-state:paused!important}@keyframes fx-spin{to{transform:rotate(360deg)}}@keyframes fx-bob{0%,to{transform:translateY(0)}50%{transform:translateY(var(--bob,-5px))}}@keyframes fx-lift{0%,15%,to{transform:translate(0)}45%,70%{transform:translate(var(--lift-x,0), var(--lift,-10px))}}@keyframes fx-slide{0%,to{transform:translate(0)}50%{transform:translateX(var(--slide,12px))}}@keyframes fx-sway{0%,to{transform:rotate(calc(var(--sway,8deg) * -1))}50%{transform:rotate(var(--sway,8deg))}}@keyframes fx-tilt{0%,12%,to{transform:rotate(0)}40%,70%{transform:rotate(var(--tilt,-20deg))}}@keyframes fx-press{0%,55%,to{transform:translateY(0)}72%{transform:translateY(var(--press,3px))}}@keyframes fx-shake{0%,to{transform:translate(0)}25%{transform:translate(var(--shake,1.5px), 0)}75%{transform:translate(calc(var(--shake,1.5px) * -1), 0)}}@keyframes fx-pulse{0%,to{opacity:1;transform:scale(1)}50%{transform:scale(var(--pulse,1.12));opacity:.75}}@keyframes fx-squish{0%,to{transform:scale(1)}40%{transform:scale(1.06,.92)}70%{transform:scale(.98,1.03)}}@keyframes fx-blink{0%,49%{opacity:1}50%,to{opacity:.15}}@keyframes fx-glow{0%,to{opacity:.25}50%{opacity:1}}@keyframes fx-flow{to{stroke-dashoffset:var(--flow,-22)}}@keyframes fx-rise{0%{opacity:0;transform:translateY(4px)}30%{opacity:.9}to{opacity:0;transform:translateY(var(--rise,-16px))}}@keyframes fx-fall{0%{opacity:0;transform:translateY(0)}15%,80%{opacity:1}to{opacity:0;transform:translateY(var(--fall,18px))}}@keyframes fx-wave{0%{opacity:0;transform:scale(.7)}35%{opacity:1}to{opacity:0;transform:scale(1.3)}}@keyframes fx-write{0%{opacity:1;transform:scaleX(0)}40%,85%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}@keyframes fx-reel{0%{transform:translateY(0)}to{transform:translateY(var(--reel,-48px))}}@keyframes fx-launch{0%,25%{opacity:0;transform:translate(0)}32%{opacity:1}to{opacity:0;transform:translate(var(--lx,60px), var(--ly,-20px))}}@keyframes fx-blind{0%,to{transform:scaleY(1)}45%,60%{transform:scaleY(.18)}}@keyframes fx-blind-down{0%,to{transform:scaleY(.35)}45%,70%{transform:scaleY(1)}}@keyframes fx-twist{0%,to{transform:scaleY(1)}50%{transform:scaleY(.12)}}@keyframes fx-hit{0%{opacity:1;transform:translate(0)}35%{opacity:0;transform:translate(var(--lx,60px), var(--ly,-60px))}36%,92%{opacity:0;transform:translate(0)}to{opacity:1;transform:translate(0)}}@keyframes fx-tumble{0%,to{transform:translate(0)rotate(0)}35%{transform:translate(var(--tx,10px), var(--ty,-14px)) rotate(var(--tr,120deg))}60%{transform:translate(calc(var(--tx,10px) * 1.4), 0) rotate(calc(var(--tr,120deg) * 1.6))}80%{transform:translate(calc(var(--tx,10px) * 1.4), 0) rotate(calc(var(--tr,120deg) * 1.6))}}.sticker{stroke-width:1.1px}.ink-art .sticker.c1{fill:var(--note-yellow)}.ink-art .sticker.c2{fill:var(--note-mint)}.ink-art .sticker.c3{fill:var(--note-sky)}.ink-art .sticker.c4{fill:var(--note-pink)}.ink-art .sticker.c5{fill:var(--note-peach)}.ink-art .sticker.c6{fill:var(--card-bg)}.ink-art .pore{opacity:.35}.cooker-readout{font-family:var(--f-mono);letter-spacing:.08em;fill:currentColor;font-size:8.5px}.op-spin,.op-twist,.op-blink,.op-squish{transform-box:fill-box;transform-origin:50%}.op-squish{transform-origin:50% 100%;transition:transform .36s cubic-bezier(.3,1.6,.5,1)}.op-twist{transition:transform .62s cubic-bezier(.55,0,.2,1)}.op-brick-drop{opacity:0;transition:transform .42s cubic-bezier(.3,1.5,.5,1),opacity .2s;transform:translateY(-30px)}.op-straw{transition:transform .42s}.ink-art .op-droplet{fill:color-mix(in srgb, var(--water) 30%, var(--card-bg));stroke:var(--water);stroke-width:1px;opacity:0}.ink-art .op-steam{stroke:var(--ink-muted);stroke-width:1.3px;opacity:0}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-spin{animation:2.4s cubic-bezier(.3,.1,.3,1) infinite fx-spin}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-twist{--tilt:90deg;animation:3s ease-in-out infinite fx-tilt}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-brick-drop{animation:3.2s cubic-bezier(.3,1.4,.5,1) infinite brick-click}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-straw{--bob:-6px;animation:2.4s ease-in-out infinite fx-bob}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-droplet{animation:2.4s ease-in infinite droplet-run}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-squish{animation:2.2s ease-in-out infinite fx-squish}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-blink{animation:3.2s ease-in-out 1s infinite blink}:is(.drafting-sheet[data-phase=operating],.figure-card:is(:hover,:focus-within)) .op-steam{animation:1.8s ease-out infinite steam-rise}@keyframes droplet-run{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(42px)}}@keyframes blink{50%{transform:scaleY(.12)}}@keyframes steam-rise{0%{opacity:0;transform:translateY(6px)}30%{opacity:.9}to{opacity:0;transform:translateY(-10px)}}@keyframes brick-click{0%,10%{opacity:0;transform:translateY(-30px)}35%,80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30px)}}@media (max-width:900px){.figure-intro{grid-template-columns:1fr;gap:24px}.figure-intro .patent-figure{width:min(100%,440px);position:static}.cluster-card{grid-template-columns:1fr}.cluster-card-figure{width:min(100%,220px)}.drafting-figure{width:min(100%,520px);margin-inline:auto}.sheet-art{aspect-ratio:320/260;height:auto}}@media (max-width:640px){.fig-label{font-size:20px}.figure-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.figure-grid.is-guides{grid-template-columns:1fr}.figure-card-title{font-size:18px}.figure-card .figure-stamp{letter-spacing:.08em;padding:2px 5px 1px;font-size:8.5px}.figure-sheet .sheet-header.is-modern{flex-wrap:wrap;font-size:12px}.sheet-count{min-width:0;font-size:15px}.drafting-sheet{padding:16px 14px 10px}.sheet-header-inventor,.sheet-header-meta,.sheet-header.is-modern{font-size:13px}.sheet-header-title{font-size:12px}}@media (max-width:400px){.fig-label-row{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){.stamp,.figure-card [class*=fx-],.figure-card [class*=op-]{animation:none!important}.sheet-art,.sheet-header{transition:none!important}}
