:root{--bg:#f5f4f1;--surface:#ffffff;--surface-2:#ebeae5;--border:#dcdad3;--text:#16181c;--text-dim:#5c6169;--accent:#12805f;--accent-dim:rgba(18,128,95,.14);--cyan:#157e8c;--cyan-dim:rgba(21,126,140,.14);--legacy:#a1522c;--shadow:rgba(20,20,15,.06)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0b0d10;--surface:#14171c;--surface-2:#1a1e25;--border:#272c34;--text:#e7e9ec;--text-dim:#838b97;--accent:#34d1a0;--accent-dim:rgba(52,209,160,.14);--cyan:#5ec8d8;--cyan-dim:rgba(94,200,216,.12);--legacy:#d98a5f;--shadow:rgba(0,0,0,.35)}}:root[data-theme=dark]{--bg:#0b0d10;--surface:#14171c;--surface-2:#1a1e25;--border:#272c34;--text:#e7e9ec;--text-dim:#838b97;--accent:#34d1a0;--accent-dim:rgba(52,209,160,.14);--cyan:#5ec8d8;--cyan-dim:rgba(94,200,216,.12);--legacy:#d98a5f;--shadow:rgba(0,0,0,.35)}.data-indexing-pipeline,.data-indexing-pipeline *{box-sizing:border-box}.data-indexing-pipeline{background:var(--bg);color:var(--text);font-family:IBM Plex Sans,system-ui,-apple-system,sans-serif;min-height:100vh;margin:0;display:flex;flex-direction:column;align-items:center;padding:clamp(20px,4vw,48px) clamp(16px,4vw,40px) clamp(32px,5vw,64px);gap:clamp(20px,3vw,32px)}.dip-page{width:100%;max-width:1180px;display:flex;flex-direction:column;gap:clamp(20px,3vw,32px)}.dip-header{display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--border);padding-bottom:clamp(16px,2.5vw,24px)}.dip-eyebrow{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:8px}.dip-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.dip-header h1{margin:0;font-size:clamp(24px,3.4vw,32px);font-weight:600;letter-spacing:-.01em;text-wrap:balance}.dip-header p{margin:0;max-width:62ch;color:var(--text-dim);font-size:14.5px;line-height:1.6}.dip-stage-wrap{border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 1px 2px var(--shadow);overflow:hidden}.dip-stage{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.dip-stage-wrap figure{margin:0}svg#diagram{display:block;width:100%;min-width:760px;height:auto;font-family:IBM Plex Mono,monospace}.dip-stage-wrap figcaption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}#diagram rect,#diagram .ring,#diagram path.flow,#diagram .diffnode path{filter:url(#sketch)}.ring{fill:none;stroke:var(--border)}.ring-domain{stroke-dasharray:3 5}.legend-dot{transition:opacity .25s}.legend text{font-size:11px;fill:var(--text-dim)}.legend .lk{font-weight:500;fill:var(--text)}.node rect,.node path.node-shape{fill:var(--surface);stroke:var(--border);stroke-width:1.4;transition:stroke .3s,fill .3s,opacity .3s}.node text{fill:var(--text);font-size:12px}.node .sub{fill:var(--text-dim);font-size:9.5px;letter-spacing:.03em}.node.topic-primary rect{stroke:var(--accent);stroke-width:2}.node.topic-primary text.title{font-size:13.5px;font-weight:500}.node.es-primary rect{stroke:var(--accent);stroke-width:2}.node-small rect{fill:var(--surface-2)}.node-small text{font-size:10.5px}.chip rect{fill:var(--surface-2);stroke:var(--border);stroke-dasharray:3 4}.chip text{fill:var(--text-dim);font-size:9px}.flow{fill:none;stroke:var(--border);stroke-width:1.5}.flow.core{stroke:color-mix(in srgb,var(--accent) 55%,var(--border))}.flow.read{stroke:color-mix(in srgb,var(--cyan) 55%,var(--border));stroke-dasharray:1 5}.flow.faint{stroke:var(--border);stroke-dasharray:2 5;opacity:.6}.flow.domain-link{stroke:var(--text-dim);stroke-dasharray:2 4;opacity:.5}marker path{fill:var(--border)}marker.m-core path{fill:color-mix(in srgb,var(--accent) 55%,var(--border))}marker.m-read path{fill:color-mix(in srgb,var(--cyan) 55%,var(--border))}.particle{fill:var(--accent)}.particle.p-neutral{fill:var(--text-dim)}.particle.p-cyan{fill:var(--cyan)}.band-label text{font-size:10px;letter-spacing:.06em}.band-label .kicker{fill:var(--text-dim)}.band-label .name{fill:var(--text);font-weight:500}.legacy rect{stroke-dasharray:3 4}.legacy text,.legacy .sub{opacity:.85}.diffnode path{stroke:var(--border);stroke-width:1.4;fill:var(--surface)}.diffnode text{font-size:9.5px}.diffnode .check{opacity:0;transition:opacity .35s}#diagram[data-mode=a] .es-shadow{opacity:1}#diagram[data-mode=a] .es-shadow-fill{transform:scaleX(1)}#diagram[data-mode=a] .alias-tag{transform:translate(1424px,373px)}#diagram[data-mode=a] .idx-main-old{opacity:.35}#diagram[data-mode=a] .flow-shadow{opacity:1}#diagram[data-mode=b] .chip-metadata{stroke:var(--accent)}#diagram[data-mode=b] .chip-metadata rect{stroke:var(--accent);stroke-dasharray:none;stroke-width:1.8}#diagram[data-mode=b] .chip-metadata text{fill:var(--accent);opacity:1}#diagram[data-mode=b] .lock-icon{opacity:1}#diagram[data-mode=b] .chip-content rect{fill:var(--surface-2)}#diagram[data-mode=b] .chip-content text{opacity:.55}#diagram[data-mode=b] .merge-good{opacity:1}#diagram[data-mode=b] .merge-bad{opacity:.4}#diagram[data-mode=c] .legacy{opacity:1}#diagram[data-mode=c] .legacy rect{stroke:var(--legacy)}#diagram[data-mode=c] .flow-legacy{opacity:1;stroke:var(--legacy)}#diagram[data-mode=c] .flow-new-cmp{opacity:1}#diagram[data-mode=c] .diffnode path{stroke:var(--accent)}#diagram[data-mode=c] .diffnode .check{opacity:1}#diagram[data-mode=c].legacy-fade .legacy{opacity:.1;transition:opacity 1.4s ease}#diagram[data-mode=c].legacy-fade .legacy rect{stroke:var(--border);transition:stroke 1.4s ease}#diagram[data-mode=c].legacy-fade .flow-legacy{opacity:.1;transition:opacity 1.4s ease}.es-shadow{opacity:0;transition:opacity .5s}.es-shadow-fill{transform:scaleX(0);transform-origin:left;transition:transform 2.4s ease}.alias-tag{transform:translate(1424px,417px);transition:transform .6s ease}.idx-main-old{transition:opacity .6s}.flow-shadow,.lock-icon,.merge-good,.merge-bad{opacity:0;transition:opacity .4s}.legacy{opacity:.6;transition:opacity .5s}.flow-legacy{opacity:.6;transition:opacity .5s,stroke .5s}.flow-new-cmp{opacity:.3;stroke:var(--accent);transition:opacity .4s}.dip-strip{display:flex;align-items:center;gap:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:14px 18px}.dip-strip-btn{all:unset;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--text-dim);transition:background .2s,color .2s}.dip-strip-btn:hover,.dip-strip-btn:focus-visible{background:var(--surface-2);color:var(--text)}.dip-strip-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.dip-strip-btn svg{width:14px;height:14px}.dip-strip-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.dip-strip-caption{font-size:14px;line-height:1.4}.dip-strip-caption b{font-weight:600;color:var(--accent)}.dip-dots{display:flex;gap:6px}.dip-dot{all:unset;cursor:pointer;width:18px;height:6px;border-radius:3px;background:var(--border);transition:background .3s,width .3s}.dip-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dip-dot[aria-current=true]{background:var(--accent);width:26px}@media(max-width:640px){.dip-strip{flex-wrap:wrap}.dip-strip-body{order:3;width:100%}}@media(prefers-reduced-motion:reduce){.es-shadow-fill,.alias-tag,.idx-main-old,.flow-shadow,.lock-icon,.merge-good,.merge-bad,.legacy,.flow-legacy,.flow-new-cmp,.diffnode .check{transition-duration:.01ms!important}}.dip-story{display:grid;gap:clamp(20px,3vw,32px);border-top:1px solid var(--border);padding-top:clamp(20px,3vw,32px)}@media(max-width:860px){.dip-story{grid-template-columns:1fr}}.dip-story-block h2{margin:0 0 10px;font-size:16px;font-weight:600;letter-spacing:-.005em;text-wrap:balance}.dip-story-block p{margin:0;color:var(--text-dim);font-size:14px;line-height:1.65}.dip-story-block strong{color:var(--text);font-weight:600}.dip-story-block em{color:var(--accent);font-style:normal}.dip-story-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.dip-story-list li{color:var(--text-dim);font-size:14px;line-height:1.65;padding-left:16px;position:relative}.dip-story-list li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%;background:var(--border)}.dip-story-list li strong{color:var(--accent);font-weight:600;font-variant-numeric:tabular-nums}.data-indexing-pipeline .return{text-align:center;padding:8px 0 32px}.data-indexing-pipeline .return a{font-family:IBM Plex Mono,monospace;font-size:12.5px;color:var(--text-dim);text-decoration:none;border-bottom:1px solid var(--border);padding-bottom:2px;transition:color .2s,border-color .2s}.data-indexing-pipeline .return a:hover,.data-indexing-pipeline .return a:focus-visible{color:var(--accent);border-color:var(--accent)}.data-indexing-pipeline .return a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
