.notes-main{padding-top:77px}.notes-header nav a[aria-current=page]{color:var(--blue)}.language-links{padding:5px}.language-links a{min-width:30px;min-height:28px;color:var(--muted);place-items:center;padding:0 6px;transition:color .2s,background .2s;display:grid}.language-links a:hover{color:var(--blue)}.language-links a[aria-current=page]{color:var(--white);background:var(--blue)}.language-links a:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.notes-hero{background-color:var(--ice);background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:72px 72px;grid-template-rows:1fr auto;grid-template-columns:minmax(0,1fr) minmax(400px,.9fr);gap:clamp(28px,4vw,60px);min-height:clamp(460px,70svh,620px);padding:clamp(38px,5vw,68px) clamp(20px,4vw,64px) 20px;display:grid}.notes-hero-copy{align-self:center;max-width:670px}.notes-hero h1{letter-spacing:-.06em;max-width:600px;margin-top:15px;font-size:clamp(3.15rem,5.3vw,5.35rem);font-weight:600;line-height:.91}.notes-hero-intro{max-width:480px;color:var(--muted);margin-top:20px;font-size:16px;line-height:1.6}.notes-hero>.hero-in:nth-child(2){align-self:center;animation-delay:.16s}.notes-hero h1.hero-in{animation-delay:60ms}.notes-hero-intro.hero-in{animation-delay:.13s}.notes-hero-meta{border-top:1px solid var(--line);color:var(--muted);font:400 9px var(--mono);text-transform:uppercase;letter-spacing:.08em;grid-column:1/-1;justify-content:space-between;padding-top:14px;display:flex}.notes-flow{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fafcffc7;min-height:320px;position:relative;overflow:hidden}.notes-flow-map{width:100%;height:100%;color:var(--blue);position:absolute;inset:0}.notes-flow-grid{stroke:#111a3514;stroke-width:1px}.notes-flow-shadow{stroke:#111a351a;stroke-width:14px}.notes-flow-line{stroke:var(--blue);stroke-width:4px;stroke-linecap:round;stroke-dasharray:760;stroke-dashoffset:760px;animation:2.1s cubic-bezier(.22,1,.36,1) .35s forwards draw-route}.notes-feedback-line{stroke:#2457ff61;stroke-width:2px;stroke-dasharray:6 10}.notes-flow-map circle{fill:var(--white);stroke:var(--blue);stroke-width:3px}.notes-flow-map .notes-flow-current{fill:var(--blue);transform-box:fill-box;transform-origin:50%;animation:2s ease-in-out infinite pulse}.notes-flow-label{color:var(--ink);font:500 10px/1.4 var(--mono);text-transform:uppercase;gap:5px;display:grid;position:absolute}.notes-flow-label b{color:var(--blue);font-weight:500}.flow-source{bottom:20%;left:6%}.flow-retrieve{top:20%;left:27%}.flow-answer{bottom:20%;left:53%}.flow-review{top:20%;right:17%}.flow-improve{text-align:right;bottom:20%;right:4%}.notes-list-section{background:var(--white);grid-template-columns:minmax(160px,.4fr) 1.6fr;gap:6vw;padding-top:clamp(60px,7vw,92px);padding-bottom:clamp(60px,7vw,92px);display:grid}.notes-list-heading .notes-count{color:var(--blue);letter-spacing:-.08em;margin-top:12px;font-size:clamp(3.4rem,6vw,6rem);font-weight:500;line-height:.8}.notes-list-content{min-width:0}.blog-filters{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:0 24px;margin-bottom:18px;display:flex}.blog-filters button{color:var(--muted);font:500 10px var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin:0 0 -1px;padding:0 0 11px;transition:color .2s,border-color .2s}.blog-filters button span{color:#8f97a8;margin-left:6px;font-size:8px}.blog-filters button:hover,.blog-filters button[aria-pressed=true]{color:var(--blue)}.blog-filters button[aria-pressed=true]{border-color:var(--blue)}.blog-filters button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}.notes-list{border-top:1px solid var(--line)}.note-row[hidden]{display:none}.note-row{border-bottom:1px solid var(--line);grid-template-columns:30px 108px minmax(0,1fr) 78px 20px;align-items:start;gap:clamp(12px,2vw,26px);padding:24px 0;transition:padding .25s,background .25s;display:grid}.note-row:hover{background:var(--ice);padding-left:12px;padding-right:12px}.note-index,.note-row time,.note-row small{color:var(--muted);font:400 10px/1.6 var(--mono);text-transform:uppercase}.note-index{color:var(--blue)}.note-row-copy>p{color:var(--blue);font:500 10px var(--mono);text-transform:uppercase;letter-spacing:.06em}.note-row-copy h2{letter-spacing:-.04em;max-width:620px;margin-top:8px;font-size:clamp(1.55rem,2.4vw,2.4rem);font-weight:550;line-height:1.06}.note-row-copy>span{max-width:600px;color:var(--muted);margin-top:12px;font-size:14px;line-height:1.6;display:block}.note-row i{color:var(--blue);justify-self:end;font-style:normal}.blog-empty{border-bottom:1px solid var(--line);color:var(--muted);padding:28px 0;font-size:14px}.notes-cta{color:var(--white);background:var(--ink);padding-top:clamp(60px,7vw,92px);padding-bottom:clamp(60px,7vw,92px)}.notes-cta-line{grid-template-columns:1fr auto;align-items:end;gap:40px;margin-top:20px;display:grid}.notes-cta h2{letter-spacing:-.055em;max-width:680px;font-size:clamp(2.45rem,4.2vw,4.3rem);font-weight:500;line-height:.93}.notes-cta-line p{color:#c0c8dc;max-width:520px;margin-top:22px;font-size:16px}.notes-cta-line>a,.article-end-line>a{color:var(--ink);background:var(--white);font:500 11px var(--mono);text-transform:uppercase;align-items:center;gap:9px;padding:13px 16px;transition:transform .2s,color .2s,background .2s;display:inline-flex}.notes-cta-line>a:hover,.article-end-line>a:hover{color:var(--white);background:var(--blue);transform:translateY(-2px)}.article-hero{isolation:isolate;color:var(--white);background:var(--ink);flex-direction:column;padding:clamp(30px,4vw,52px) clamp(20px,7vw,110px) 0;display:flex;position:relative;overflow:hidden}.article-hero:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#111a35f7 0%,#11224fc7 58%,#111a35e3 100%);position:absolute;inset:0}.article-hero:after{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px);background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0,#0000 78%);mask-image:linear-gradient(#000 0,#0000 78%)}.article-hero-art{z-index:-2;object-fit:cover;object-position:center 48%;opacity:.52;filter:saturate(.72)contrast(1.08);width:100%;height:100%;position:absolute;inset:0}.article-hero-top{z-index:1;color:#c0c8dc;font:400 10px var(--mono);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;gap:24px;display:flex;position:relative}.article-back{transition:color .2s}.article-back:hover{color:#8da8ff}.article-category{animation-delay:50ms}.article-category a{color:inherit;border-bottom:1px solid #c0c8dc73;transition:color .2s,border-color .2s}.article-category a:hover{color:#8da8ff;border-color:currentColor}.article-category a:focus-visible{outline-offset:3px;outline:2px solid #8da8ff}.article-hero>h1{z-index:1;letter-spacing:-.055em;max-width:860px;margin-top:clamp(28px,3.5vh,42px);font-size:clamp(2.9rem,4.6vw,4.6rem);font-weight:560;line-height:.93;animation-delay:80ms;position:relative}.article-deck{z-index:1;color:#c0c8dc;max-width:650px;margin:18px 0 30px;font-size:clamp(.98rem,1.25vw,1.1rem);line-height:1.55;animation-delay:.16s;position:relative}.article-process{z-index:1;border-top:1px solid var(--line-dark);grid-template-columns:repeat(5,1fr);display:grid;position:relative}.article-process span{color:#c0c8dc;font:400 9px/1.45 var(--mono);text-transform:uppercase;gap:4px;padding:15px 12px 18px 0;display:grid}.article-process b{color:#8da8ff;font-weight:500}.article-layout{background:var(--white);grid-template-columns:minmax(170px,.42fr) minmax(0,1.58fr);align-items:start;gap:clamp(44px,8vw,120px);padding-top:clamp(56px,6vw,84px);padding-bottom:clamp(64px,7vw,100px);display:grid}.article-aside{position:sticky;top:30px}.article-aside dl{border-top:1px solid var(--line)}.article-aside dl>div{border-bottom:1px solid var(--line);padding:15px 0}.article-aside dt{color:var(--muted);font:400 9px var(--mono);text-transform:uppercase;letter-spacing:.06em}.article-aside dd{margin-top:4px;font-size:14px}.article-aside>a{color:var(--blue);font:500 10px var(--mono);text-transform:uppercase;align-items:center;gap:8px;margin-top:24px;display:inline-flex}.article-body{width:min(100%,720px);color:var(--ink);font-size:clamp(1.02rem,1.25vw,1.14rem);line-height:1.76}.article-body>p:first-of-type{letter-spacing:-.024em;font-size:clamp(1.3rem,1.9vw,1.68rem);line-height:1.42}.article-body p+p{margin-top:1.35em}.article-body h2{letter-spacing:-.045em;margin:2.2em 0 .7em;font-size:clamp(1.85rem,2.8vw,2.85rem);font-weight:550;line-height:1}.article-body ul{border-top:1px solid var(--line);margin:1.4em 0;padding:0;list-style:none}.article-body li{border-bottom:1px solid var(--line);color:var(--muted);padding:13px 0 13px 28px;position:relative}.article-body li:before{content:"→";color:var(--blue);font:500 12px var(--mono);position:absolute;left:0}.article-body strong{font-weight:600}.article-body a{color:var(--blue);border-bottom:1px solid}.article-body :not(pre)>code{color:var(--blue);background:var(--ice);font:500 .84em var(--mono);padding:2px 5px}.article-body pre{border-left:3px solid var(--blue);color:#dce3f8;background:var(--ink);max-width:100%;font:400 12px/1.7 var(--mono);tab-size:2;margin:1.7em 0;padding:42px 20px 20px;position:relative;overflow-x:auto}.article-body pre:before{content:"CODE";color:#8da8ff;font:500 8px var(--mono);letter-spacing:.1em;position:absolute;top:13px;left:20px}.article-body pre:has(.language-java):before{content:"JAVA"}.article-body pre:has(.language-json):before{content:"JSON / EVAL"}.article-body pre code{font:inherit}.article-body blockquote{border-top:1px solid var(--blue);border-bottom:1px solid var(--blue);color:var(--blue);letter-spacing:-.02em;margin:2em 0;padding:20px 0 20px clamp(18px,3vw,38px);font-size:clamp(1.22rem,2vw,1.7rem);line-height:1.4}.article-body blockquote p{margin:0}.article-body>p:last-child{border-top:1px solid var(--line);color:var(--muted);font:400 11px/1.65 var(--mono);margin-top:3.5em;padding-top:18px}.article-sketch{background-color:#f7f3e6;background-image:linear-gradient(#47628a14 1px,#0000 1px),linear-gradient(90deg,#47628a14 1px,#0000 1px);background-size:24px 24px;border:1px solid #755f3738;margin:2.2em 0;padding:18px 18px 8px;overflow-x:auto}.article-sketch-heading{grid-template-columns:130px 1fr;align-items:baseline;gap:18px;min-width:680px;display:grid}.article-sketch-heading span{color:var(--blue);font:500 10px var(--mono);text-transform:uppercase;letter-spacing:.06em}.article-sketch-heading strong{letter-spacing:-.01em;font-size:16px;font-weight:600}.sketch-canvas{min-width:680px;position:relative}.sketch-flow{grid-template-columns:repeat(4,minmax(0,1fr) 24px) minmax(0,1fr);align-items:center;padding:58px 12px 20px;display:grid}.sketch-step{--pencil:#2457ff;background:#fffdf7;align-content:center;gap:8px;min-height:72px;padding:12px;display:grid;position:relative}.sketch-step:nth-of-type(2){--pencil:#d3544c}.sketch-step:nth-of-type(3){--pencil:#d88428}.sketch-step:nth-of-type(4){--pencil:#388565}.sketch-step:nth-of-type(5){--pencil:#745bb0}.sketch-step:before,.sketch-step:after{content:"";pointer-events:none;border:1.5px solid var(--pencil);position:absolute}.sketch-step:before{inset:-2px 0 1px -1px;transform:rotate(-.65deg)}.sketch-step:after{opacity:.42;inset:0 -2px -1px 1px;transform:rotate(.5deg)}.sketch-step:nth-of-type(2n):before{inset:0 -1px -2px 1px;transform:rotate(.55deg)}.sketch-step:nth-of-type(2n):after{inset:-2px 1px 0 -2px;transform:rotate(-.4deg)}.sketch-step span{z-index:1;color:var(--pencil);font:500 9px var(--mono);position:relative}.sketch-step strong{font:600 12px/1.25 var(--sans);position:relative}.sketch-flow>i{color:var(--blue);font:600 26px/1 var(--hand);text-align:center}.sketch-flow>i:nth-of-type(2){color:#d3544c}.sketch-flow>i:nth-of-type(3){color:#d88428}.sketch-flow>i:nth-of-type(4){color:#388565}.sketch-scribble{z-index:2;color:#d3544c;font:600 18px/1 var(--hand);white-space:nowrap;position:absolute}.sketch-scribble:before{margin-right:4px;font-size:20px}.sketch-scribble:after{content:"";opacity:.42;border-top:2px solid;border-radius:50%;position:absolute;bottom:-4px;left:18px;right:0}.sketch-scribble-1{top:18px;left:16px}.sketch-scribble-1:before{content:"↘"}.sketch-scribble-2{color:#388565;top:10px;left:285px}.sketch-scribble-2:before{content:"↓"}.sketch-scribble-3{color:#745bb0;top:18px;right:16px}.sketch-scribble-3:before{content:"↙"}.sketch-note{color:#47628a;font:600 16px var(--hand);text-align:center;padding:0 12px 17px}.article-end{color:var(--white);background:var(--blue);padding-top:clamp(60px,7vw,92px);padding-bottom:clamp(60px,7vw,92px)}.article-end .eyebrow{color:#fafcffad}.article-end-line{grid-template-columns:1fr auto;align-items:end;gap:40px;margin-top:20px;display:grid}.article-end h2{letter-spacing:-.055em;max-width:760px;font-size:clamp(2.5rem,4.4vw,4.5rem);font-weight:520;line-height:.92}@media (width<=980px){.notes-header nav{gap:19px}.notes-hero{grid-template-columns:1fr;min-height:auto}.notes-hero-copy{padding-top:26px}.notes-flow{min-height:300px}}@media (width<=900px){.notes-main{padding-top:69px}.notes-list-section,.article-layout{grid-template-columns:1fr}.notes-list-section,.article-layout,.article-aside,.article-body{min-width:0}.notes-list-heading{justify-content:space-between;align-items:end;display:flex}.article-aside{grid-template-columns:1fr auto;align-items:end;gap:26px;display:grid;position:static}.article-aside>a{justify-self:end}}@media (width<=620px){.notes-main{padding-top:69px}.notes-header .header-location{display:none}.notes-hero{background-size:52px 52px;gap:22px;min-height:auto;padding:34px 17px 14px}.notes-hero h1{font-size:clamp(2.65rem,12.5vw,3.1rem);line-height:.94}.notes-hero-intro{margin-top:14px;font-size:15px;line-height:1.55}.notes-flow{min-height:195px}.notes-flow-map{width:112%;max-width:none;transform:translate(-6%)}.notes-flow-label{font-size:8px}.flow-source{left:3%}.flow-retrieve{left:24%}.flow-answer{left:50%}.flow-review{right:15%}.flow-improve{right:2%}.notes-hero-meta{gap:18px;padding-top:12px;line-height:1.45}.notes-hero-meta span{max-width:47%}.notes-list-section{padding-top:52px;padding-bottom:58px}.notes-list-heading .notes-count{font-size:3.7rem}.blog-filters{gap:0 18px;margin-bottom:8px}.blog-filters button{min-height:40px;padding-top:8px}.note-row{grid-template-columns:25px 1fr 20px;gap:10px 14px}.note-row time{grid-area:1/2}.note-row-copy,.note-row small{grid-column:2}.note-row i{grid-area:1/3/span 4}.notes-cta-line,.article-end-line{grid-template-columns:1fr;align-items:start}.notes-cta-line>a,.article-end-line>a{width:max-content}.article-hero{padding:26px 17px 0}.article-hero:before{background:#111a35e6}.article-hero-art{object-position:56% center;opacity:.38}.article-hero-top{align-items:flex-start}.article-category{text-align:right;max-width:48%}.article-hero>h1{margin-top:28px;font-size:clamp(2.45rem,10.8vw,3.15rem);line-height:.96}.article-deck{margin:16px 0 24px;font-size:15px}.article-process{grid-template-columns:repeat(3,1fr)}.article-process span{padding:11px 8px 13px 0;font-size:8px}.article-layout{gap:38px}.article-aside{grid-template-columns:1fr;width:100%}.article-aside>a{justify-self:start}.article-body{overflow-wrap:anywhere;width:100%;font-size:16.5px;line-height:1.72}.article-body>p:first-of-type{font-size:1.28rem;line-height:1.45}.article-body h2{margin-top:1.9em;font-size:clamp(1.75rem,9vw,2.2rem);line-height:1.04}.article-body pre{width:100%;padding-left:16px;padding-right:16px;font-size:11px}.article-body :not(pre)>code{word-break:break-word}.article-body blockquote{padding-left:16px;font-size:1.2rem}.article-sketch{margin:1.8em 0;padding:15px 14px 8px;overflow:hidden}.article-sketch-heading{grid-template-columns:1fr;gap:5px;min-width:0}.article-sketch-heading strong{font-size:15px;line-height:1.35}.sketch-canvas{min-width:0;display:grid}.sketch-scribble{white-space:normal;max-width:100%;margin-top:13px;font-size:16px;position:static}.sketch-scribble-2{justify-self:end}.sketch-scribble-3{justify-self:center}.sketch-flow{grid-template-columns:minmax(0,1fr);gap:5px;padding:20px 3px 12px}.sketch-step{min-height:62px;padding:10px 12px}.sketch-flow>i{font-size:22px;transform:rotate(90deg)}.sketch-note{padding:3px 4px 12px;font-size:15px;line-height:1.3}.article-end{padding-top:58px;padding-bottom:58px}.article-end h2{font-size:clamp(2.2rem,10.5vw,2.7rem)}}@media (width<=380px){.notes-hero{padding-inline:14px}.notes-hero h1{font-size:2.55rem}.notes-list-section,.notes-cta,.article-layout,.article-end{padding-inline:14px}.blog-filters{gap:0 14px}.note-row{gap-inline:11px;grid-template-columns:22px minmax(0,1fr) 18px}.article-hero{padding:22px 14px 0}.article-hero-top{gap:12px;font-size:9px}.article-category{max-width:52%}.article-hero>h1{margin-top:24px;font-size:2.3rem}.article-deck{font-size:14px}.article-process span{font-size:7.5px}.article-layout{gap:32px}.article-sketch{margin-inline:0}}
