.xd{--ink:#1d1d1f;--ink2:#3a3a40;--muted:#65656b;--faint:#8a8a93;--line:#e5e5ea;--bg:#f5f5f7;--card:#fff;--accent:#2f5bea;--accent-ink:#2449bd;--accent-soft:#e8eeff;--warn:#e8912d;--warn-ink:#a3560a;--wrong:#c4313b;--wrong-ink:#a1222b;--wrong-soft:#fde2e4;--right:#1f8a5b;--right-ink:#17663f;--right-soft:#dcf3e6;--radius:22px;--shadow:0 1px 2px #0000000a,0 24px 60px -28px #0000002e;--mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 -apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;accent-color:var(--accent)}.xd *{box-sizing:border-box}.xd a{color:var(--accent-ink);text-underline-offset:3px}.xd ::selection{background:#d6e1ff;color:#142e77}.xd :focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}.xd code{font-family:var(--mono);font-size:.92em}.xd-wrap{max-width:1240px;margin:0 auto;padding:0 24px 40px;min-width:0}.xd-main .xn-breadcrumb{margin-top:20px;font-size:13px}.xd h1{font-size:clamp(32px,3.6vw,50px);line-height:1.06;letter-spacing:-.035em;margin:0;text-wrap:balance}.xd h2{font-size:30px;line-height:1.15;letter-spacing:-.025em;margin:0 0 12px;text-wrap:balance}.xd h3,.xd .xd-h3{font-size:19px;line-height:1.3;letter-spacing:-.01em;margin:0 0 8px;text-wrap:balance}.xd-kicker{font-size:13px;font-weight:600;color:var(--accent-ink);margin:0 0 4px;letter-spacing:.01em}.xd-kicker-warn{color:var(--wrong-ink)}.xd-story{display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);grid-template-areas:"hero stage" "flow stage";column-gap:48px;align-items:start}.xd-hero{grid-area:hero;padding:22px 0 6px}.xd-eyebrow{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:600;color:var(--accent-ink);margin:0 0 14px}.xd-eyebrow span{color:var(--muted);font-weight:500}.xd-eyebrow span:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:currentColor;margin:0 8px 2px 0}.xd-answer{font-size:18px;line-height:1.55;color:var(--ink2);margin:18px 0 0}.xd-meta{font-size:13px;color:var(--muted);margin:14px 0 0}.xv{font-weight:650;color:var(--accent-ink);background:linear-gradient(transparent 62%,#dfe7ff 62%);padding:0 1px;border-radius:2px;font-variant-numeric:tabular-nums;white-space:nowrap}.xv.flash{animation:xd-flash .9s ease}@keyframes xd-flash{0%{background:#ffe2a8;color:#7a3e00}}.xd-stage{grid-area:stage;position:sticky;top:16px;margin-top:22px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 20px 14px;min-width:0;z-index:5}.xd-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.xd-stage-titles{min-width:0}.xd-stage-title{font-size:19px;font-weight:650;letter-spacing:-.01em;line-height:1.3;margin:0}.xd-dots{display:flex;gap:6px;flex:none}.xd-dots a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font:600 14px var(--mono);color:var(--muted);background:#f2f2f7;text-decoration:none;transition:background .25s,color .25s,transform .25s}.xd-dots a:hover{background:var(--accent-soft);color:var(--accent-ink)}.xd-dots a[aria-current]{background:var(--accent);color:#fff;transform:scale(1.04)}.xd-fig{margin:0;min-width:0}.xd-readout{display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px;min-height:26px;margin:10px 0 2px;font-size:13px;color:var(--faint);font-variant-numeric:tabular-nums}.xd-readout.on{color:var(--muted)}.xd-readout b{color:var(--ink);font-weight:600}.xd-readout>b:first-child{font-size:14px}.xd-rank{display:inline-grid;place-items:center;min-width:22px;height:20px;padding:0 5px;margin-right:6px;border-radius:6px;background:#f2f2f7;font:600 13px var(--mono);color:var(--muted)}.xd-chart{position:relative;min-width:0}.xd-chart svg{display:block;width:100%;height:auto;overflow:visible;touch-action:pan-y;user-select:none;-webkit-user-select:none}.xd-chart.xd-hscroll{overflow-x:auto;overscroll-behavior-x:contain}.xd-chart svg.fixed{width:auto;height:auto;max-width:none;touch-action:pan-x pan-y}.xd-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--muted);min-height:4px;margin-top:4px}.xd-legend:empty{display:none}.xd-key{display:inline-flex;align-items:center;gap:7px}.xd-key i{width:12px;height:12px;border-radius:3px}.xd-stage.has-error .xd-readout,.xd-fig .xd-error{color:var(--wrong-ink)}.xd-stage-knobs{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:10px 28px;align-items:end;margin-top:12px;padding-top:14px;border-top:1px solid var(--line)}.xd-stage-foot{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--muted);margin:12px 0 0}.xd-engine{display:inline-flex;align-items:center;gap:7px}.xd-engine:before{content:"";width:7px;height:7px;border-radius:50%;background:#b8bcc8}.xd-engine.is-busy:before{background:var(--warn);animation:xd-pulse 1s ease-in-out infinite}.xd-engine.is-live:before{background:var(--right)}.xd-engine.is-error{color:var(--wrong-ink)}.xd-engine.is-error:before{background:var(--wrong)}@keyframes xd-pulse{50%{opacity:.3}}.xd-svg text{font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;font-size:13px;font-variant-numeric:tabular-nums}.xd-svg .grid{stroke:#ececf1;stroke-width:1}.xd-svg .gridx{stroke:#f2f2f6}.xd-svg .base{stroke:#c9c9d1;stroke-width:1}.xd-svg .tick{fill:var(--faint)}.xd-svg .tick2{fill:#6d84d6}.xd-svg .cap{fill:var(--muted)}.xd-svg .cell{transition:stroke .15s}.xd-svg .cell.hot{stroke:var(--ink);stroke-width:2}.xd-svg .cell-label{pointer-events:none;font-weight:550}.xd-svg .bar{transition:fill-opacity .15s}.xd-svg.hovering .bar:not(.hot){fill-opacity:.32}.xd-svg .line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.xd-svg .line-wrong{stroke:var(--wrong)}.xd-svg .line-right{stroke:var(--accent)}.xd-svg .ghost{fill:none;stroke:#b7bccb;stroke-width:2;stroke-dasharray:4 5}.xd-svg .pt{fill:#fff;stroke:var(--accent);stroke-width:1.75}.xd-svg .pt.hot{fill:var(--accent);stroke-width:3}.xd-svg .ref{stroke:var(--warn);stroke-width:2;stroke-dasharray:7 5}.xd-svg .ref-label{fill:var(--warn-ink);font-weight:650}.xd-svg .cross{stroke:var(--ink);stroke-width:1.25;stroke-dasharray:2 4}.xd-svg .cross-dot{fill:var(--warn);stroke:#fff;stroke-width:2.5}.xd-svg .cross-wrong{fill:var(--wrong)}.xd-svg .cross-right{fill:var(--accent)}.xd-svg .cross-label{fill:var(--ink);font-weight:650}.xd-svg .handle{fill:#fff;stroke:var(--warn);stroke-width:2;cursor:ns-resize;touch-action:none}.xd-svg.draggable .ref,.xd-svg.dragging{cursor:ns-resize}.xd-svg.dragging .handle{fill:var(--warn)}.xd-svg .rank-n{fill:var(--faint);font-family:var(--mono)!important;font-weight:600}.xd-svg .rank-l{fill:var(--ink)}.xd-svg .rank-v{fill:var(--muted)}.xd-flow{grid-area:flow;position:relative;padding:18px 0 24px;min-width:0}.xd-flow:before{content:"";position:absolute;left:17px;top:48px;bottom:56px;width:2px;background:linear-gradient(var(--line),var(--line) 92%,transparent)}.xd-step{position:relative;display:grid;grid-template-columns:36px minmax(0,1fr);gap:16px;padding:20px 0;scroll-margin-top:24px}.xd-step-num{position:relative;z-index:1;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--bg);box-shadow:inset 0 0 0 2px #d5d7df;font:650 14px var(--mono);color:var(--muted);transition:background .3s,color .3s,box-shadow .3s}.xd-step-num-data{background:#fff;color:var(--accent-ink);box-shadow:inset 0 0 0 2px var(--accent-soft)}.xd-step.is-active .xd-step-num{background:var(--accent);color:#fff;box-shadow:0 0 0 6px var(--accent-soft)}.xd-step-body{min-width:0;padding-top:4px}.xd-note p,.xd-note-p{margin:0 0 10px;color:var(--ink2)}.xd-data-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:14px;margin:2px 0 10px}.xd-tag{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:#ebebf0;color:var(--muted);font-size:13px;font-weight:600;text-decoration:none!important}.xd-tag-wrong{background:var(--wrong-soft);color:var(--wrong-ink)}.xd-tag-right{background:var(--right-soft);color:var(--right-ink)}.xd-data .xd-h3{text-wrap:pretty}.xd-data .xd-table{border:1px solid var(--line);border-radius:14px;background:#fff;margin-top:12px}.xd-data th code{font-size:13px;font-weight:600;color:var(--ink2)}.xd-tabs{margin-top:14px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;min-width:0}.xd-tabbar{display:flex;align-items:center;gap:2px;padding:4px;border-bottom:1px solid var(--line)}.xd-tabbar [role=tab],.xd-copy{appearance:none;border:0;background:transparent;font-family:inherit;font-size:14px;font-weight:600;line-height:1;color:var(--muted);height:40px;padding:0 13px;border-radius:11px;cursor:pointer}.xd-tabbar [role=tab]:hover,.xd-copy:hover{color:var(--ink);background:#f4f4f7}.xd-tabbar [aria-selected=true]{background:var(--accent-soft);color:var(--accent-ink)}.xd-copy{margin-left:auto;font-weight:500}.js .xd-panel:not(.on){display:none}.xd-panel-label{display:none}html:not(.js) .xd-tabbar{display:none}html:not(.js) .xd-panel-label{display:block;margin:0;padding:10px 16px 0;font-size:13px;font-weight:600;color:var(--muted)}html:not(.js) .xd-panel+.xd-panel{border-top:1px solid var(--line)}.xd-pre{margin:0;padding:14px 16px;overflow:auto;font:13.5px/1.65 var(--mono);color:#24292f;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;background:#fcfcfd;max-width:100%}.xd-ln{display:block;padding-left:calc((var(--i,0) + 2) * 1ch);text-indent:calc((var(--i,0) + 2) * -1ch)}.xd-pre code{font-size:inherit}.xd-pre .k{color:#7c3aed;font-weight:600}.xd-pre .f{color:#2449bd}.xd-pre .d{color:#a3560a}.xd-pre .s{color:#15803d}.xd-pre .n{color:#c2410c}.xd-pre .c{color:var(--faint);font-style:italic}.xd-pre .o{color:var(--muted)}.xd-pre .kb{background:#fff1d1;box-shadow:inset 0 -2px 0 var(--warn);border-radius:3px;padding:0 2px;color:#7a3e00}.xd-pre .kb.pulse{animation:xd-flash .8s ease}.xd-pre mark{color:inherit;border-radius:3px;padding:1px 0}.xd-pre mark.del{background:var(--wrong-soft);text-decoration:underline wavy var(--wrong);text-decoration-thickness:1.5px;text-underline-offset:4px}.xd-pre mark.ins{background:var(--right-soft);text-decoration:underline var(--right);text-decoration-thickness:2px;text-underline-offset:4px}.xd-verify{margin:0;padding:10px 16px;border-top:1px solid var(--line);font-size:13px;line-height:1.45;color:var(--right-ink);background:#f3faf6}.xd-verify b{font-weight:650}.xd-table{max-height:300px;overflow:auto;min-width:0;overscroll-behavior:contain}.xd-table table{border-collapse:collapse;width:100%;font-size:13.5px;font-variant-numeric:tabular-nums}.xd-table th{position:sticky;top:0;z-index:1;background:#fff;text-align:left;font-size:13px;font-weight:600;color:var(--muted);padding:9px 14px;border-bottom:1px solid var(--line);white-space:nowrap}.xd-table td{padding:7px 14px;border-bottom:1px solid #f1f1f4;white-space:nowrap}.xd-table tr:last-child td{border-bottom:0}.xd-table .num{text-align:right}.xd-error{color:var(--wrong-ink);font-size:14px;margin:0;padding:12px 16px}.xd-status{color:var(--muted);font-size:14px;margin:0}.xd-knob{min-width:0}.xd-knob-label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13px;font-weight:600;color:var(--ink2);margin:0 0 2px}.xd-knob-label output{font-size:16px;font-weight:700;color:var(--accent-ink);font-variant-numeric:tabular-nums}.xd-knob input[type=range]{-webkit-appearance:none;appearance:none;display:block;width:100%;height:40px;margin:0;background:transparent;cursor:pointer;--p:50%}.xd-knob input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--p),#e1e3ea var(--p))}.xd-knob input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--p),#e1e3ea var(--p))}.xd-knob input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-9px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 2px 6px #2f5bea40;transition:transform .15s}.xd-knob input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid var(--accent);box-shadow:0 2px 6px #2f5bea40}.xd-knob input[type=range]:active::-webkit-slider-thumb{transform:scale(1.12)}.xd-knob-scale{display:flex;justify-content:space-between;font-size:13px;color:var(--faint);margin-top:-6px}.xd-seg{display:flex;background:#f0f0f4;border-radius:13px;padding:3px;gap:2px;margin-top:4px}.xd-seg button{flex:1;appearance:none;border:0;background:transparent;height:40px;padding:0 16px;border-radius:10px;font-family:inherit;font-size:14px;font-weight:600;line-height:1;color:var(--muted);cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}.xd-seg button:hover{color:var(--ink)}.xd-seg button[aria-checked=true]{background:#fff;color:var(--ink);box-shadow:0 1px 3px #0000001f,0 0 0 .5px #0000000d}.xd-seg button:disabled{opacity:.4;cursor:not-allowed}.xd-knob-block{background:#fff;border-radius:18px;box-shadow:var(--shadow)}.xd-knob-inline{margin:4px 0 4px 52px;padding:14px 18px 10px;border:1px solid #f6dfba;background:linear-gradient(#fffdf8,#fff)}.xd-knob-wide{max-width:820px;padding:20px 24px 18px;margin:20px 0 8px}.xd-knob-wide>.xd-knob{max-width:340px;margin-bottom:8px}.xd-knob-wide .xd-fig .xd-readout{margin-top:0}html:not(.js) .xd-knob,html:not(.js) .xd-stage-knobs,html:not(.js) .xd-knob-inline,html:not(.js) .xd-drop{display:none}html:not(.js) .xd-knob-wide{display:block}html:not(.js) .xd-readout{display:none}.xd-chapters{padding-top:8px;min-width:0}.xd-prose{max-width:720px}.xd-prose h2{margin:48px 0 12px}.xd-prose h3{margin:28px 0 8px}.xd-prose p,.xd-prose li{color:var(--ink2);font-size:17px;line-height:1.6}.xd-prose p{margin:0 0 14px}.xd-trap{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px 26px 26px;margin:24px 0}.xd-trap h3{margin:2px 0 6px}.xd-trap-why{margin:0;max-width:78ch;color:var(--ink2)}.xd-trap-note{border-left:4px solid var(--warn);padding:20px 24px;box-shadow:0 1px 2px #0000000a}.xd-trap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:18px}.xd-trap-side{margin:0;min-width:0;border:1px solid var(--line);border-radius:18px;padding:14px 16px 16px;background:#fcfcfd;display:flex;flex-direction:column}.xd-trap-side .xd-tabs{margin-top:10px}.xd-wrong{border-color:#f2cdd0;background:#fffbfb}.xd-right{border-color:#cbe7d8;background:#fbfefc}.xd-trap-side figcaption{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;font-size:13px;color:var(--muted)}.xd-try{margin:16px 0 8px}.xd-drop{display:flex;align-items:center;gap:18px;background:#fff;border:2px dashed #c8cedc;border-radius:var(--radius);padding:20px 22px;transition:border-color .2s,background .2s}.xd-dragging .xd-drop{border-color:var(--accent);background:var(--accent-soft)}.xd-drop-icon{flex:none;width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.xd-drop-text{flex:1;min-width:0}.xd-drop-title{margin:0;font-weight:650;font-size:17px}.xd-drop-sub{margin:2px 0 0;font-size:14px;color:var(--muted)}body.xd-dragging:after{content:"Drop your CSV to run every step on it";position:fixed;inset:12px;z-index:100;display:grid;place-items:center;border:3px dashed var(--accent);border-radius:26px;background:#e8eeffde;color:var(--accent-ink);font-size:22px;font-weight:650;pointer-events:none}.xd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border:0;border-radius:999px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;text-decoration:none}.xd-btn-primary{background:var(--accent);color:#fff}.xd-btn-primary:hover{background:#2348c5}.xd-btn-ghost{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.xd-btn-ghost:hover{box-shadow:inset 0 0 0 1px #c9c9d1}.xd-link{appearance:none;border:0;background:none;padding:10px 0;margin:-10px 0;font:inherit;color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.xd-map{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:18px 22px 8px;margin-top:14px}.xd-map-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.xd-map-head p{margin:0}.xd-map-lede{margin:8px 0 6px;color:var(--muted);font-size:14px}.xd-map-row{display:grid;grid-template-columns:240px minmax(0,1fr);gap:8px 18px;padding:12px 0;border-top:1px solid var(--line)}.xd-map-name code{font-weight:650;font-size:15px}.xd-map-name span{display:block;font-size:13px;color:var(--muted)}.xd-chips{display:flex;flex-wrap:wrap;gap:8px}.xd-chip{appearance:none;height:40px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:500 14px var(--mono);cursor:pointer}.xd-chip:hover{border-color:#b9bfd0}.xd-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.xd-chip-skip{font-family:inherit;color:var(--muted)}.xd-try-out{margin-top:14px}.xd-try-out>.xd-status,.xd-try-out>.xd-error{background:#fff;border-radius:16px;padding:14px 18px}.xd-mine{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:20px 32px;background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px}.xd-mine-answer{font-size:18px;line-height:1.55;color:var(--ink2);margin:4px 0 12px}.xd-mine-links{margin:0;font-size:15px}.xd-mine-err{color:var(--wrong-ink);font-size:14px}.xd-faq{max-width:820px;margin-top:56px}.xd-faq details{border-top:1px solid var(--line)}.xd-faq details:last-child{border-bottom:1px solid var(--line)}.xd-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:10px 0;cursor:pointer;list-style:none}.xd-faq summary::-webkit-details-marker{display:none}.xd-faq summary:after{content:"";flex:none;width:9px;height:9px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg) translateY(-3px);transition:transform .2s}.xd-faq details[open] summary:after{transform:rotate(225deg) translateY(-2px)}.xd-faq summary h3{font-size:17px;font-weight:600;margin:0;letter-spacing:0}.xd-faq details p{margin:0 0 18px;color:var(--ink2);max-width:70ch}.xd-sources{margin-top:36px;max-width:820px}.xd-sources ul{margin:0;padding:0;list-style:none;font-size:14px}.xd-sources span{color:var(--muted)}.xd-main .xn-related{margin-top:40px}@media(max-width:1023px){.xd-story{grid-template-columns:minmax(0,1fr);grid-template-areas:"hero" "stage" "flow"}.xd-stage{position:sticky;top:0;margin:16px -24px 0;padding:10px 24px 8px;border-radius:0 0 20px 20px;box-shadow:0 14px 28px -22px #00000059,0 1px 0 var(--line)}.xd-stage .xd-kicker,.xd-stage-knobs,.xd-stage-foot{display:none}.xd-stage-head{align-items:center}.xd-stage-title{font-size:15px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.xd-readout{min-height:22px;margin:6px 0 0}.xd-step{scroll-margin-top:calc(var(--stage-h,330px) + 8px)}.xd-mine,.xd-trap-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.xd-wrap{padding:0 16px 32px}.xd-stage{margin:14px -16px 0;padding:8px 16px 6px}.xd-dots{gap:4px}.xd-answer{font-size:17px}.xd-flow:before{left:13px}.xd-step{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:16px 0}.xd-step-num{width:28px;height:28px;font-size:13px}.xd-step.is-active .xd-step-num{box-shadow:0 0 0 4px var(--accent-soft)}.xd-knob-inline{margin-left:0}.xd-trap{padding:18px 16px;border-radius:18px}.xd-trap-side{padding:12px}.xd-drop{flex-wrap:wrap;padding:18px}.xd-drop .xd-btn{width:100%}.xd-map{padding:16px}.xd-map-row{grid-template-columns:minmax(0,1fr)}.xd-knob-wide,.xd-mine{padding:18px 16px}.xd-prose p,.xd-prose li{font-size:16px}.xd-pre{font-size:13px}}@media(prefers-reduced-motion:reduce){.xd *{animation:none!important;transition:none!important}}.xd-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.xd-stat-box{margin:14px 0}.xd-stat{border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px 18px;min-width:0}.xd-stat p{margin:0}.xd-stat-label{font-size:14px;font-weight:600;color:var(--muted)}.xd-stat-value{font-size:40px;line-height:1.1;font-weight:700;letter-spacing:-.02em;margin:6px 0 4px!important;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.xd-stat-delta{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.xd-stat-delta.is-good{color:#15803d}.xd-stat-delta.is-bad{color:#b91c1c}.xd-stat-delta.is-flat,.xd-stat-vs{color:var(--muted);font-weight:500}.xd-stat-sub{font-size:14px;color:var(--muted);margin-top:4px!important}.xd-stat-stage,.xd-fig[data-mode=stat] .xd-chart{display:none}.xd-fig[data-mode=stat] .xd-stat-stage{display:block;padding:24px 0}.xd-fig[data-mode=stat] .xd-stat-value{font-size:56px}.xd-svg .wf-conn{stroke:#9a9aa6;stroke-width:1;stroke-dasharray:3 3}.xd-svg .wf-label{font-size:12.5px;font-weight:600;fill:var(--ink);font-variant-numeric:tabular-nums}.xd-svg .wf-total{filter:none}.xd-shelves{margin:48px 0}.xd-shelves-grid{display:grid;grid-template-columns:minmax(290px,330px) 1fr;gap:16px;margin-top:16px}.xd-marks{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff}.xd-marks-head{margin:0 0 10px;font-size:13px;font-weight:700;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px}.xd-marks-head span{font-size:13px;font-weight:600;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:4px 8px}.xd-marks ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.xd-marks .xd-pill{white-space:nowrap}.xd-marks li{display:grid;grid-template-columns:76px 1fr;align-items:center;gap:8px;margin:0}.xd-enc{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.xd-shelf-col{display:grid;gap:10px;align-content:start}.xd-shelf{display:grid;grid-template-columns:76px 1fr;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:#fff}.xd-shelf-name{font-size:13px;font-weight:700;color:var(--muted)}.xd-pills{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.xd-pill{display:inline-block;max-width:100%;overflow-wrap:anywhere;font:600 13px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;color:#173c9c;background:#e8eefd;border:1px solid #c4d2f8;border-radius:999px;padding:4px 10px}.xd-pill.is-measure{color:#0b5a3e;background:#e3f5ec;border-color:#b9e3cd}.xd-pill.is-empty{color:var(--muted);background:transparent;border-style:dashed;border-color:var(--line);font-family:inherit}.xd-shelf-note{margin:2px 0 0;font-size:13px;color:var(--muted)}.xd-variants{margin:48px 0}.xd-variants .xd-seg{margin:12px 0 8px}.xd-variant-label{display:none}html.js .xd-variant:not(.on){display:none}html:not(.js) .xd-variant-label{display:block;font-weight:700;margin:20px 0 4px}html:not(.js) .xd-variants .xd-seg{display:none}@media(max-width:760px){.xd-shelves-grid{grid-template-columns:1fr}}.xd-svg .line-series,.xd-svg .line-facet{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.xd-svg .line-facet{stroke-width:2.2}.xd-svg .grid-bg{fill:#f7f7fa;stroke:none}.xd-svg .facet-title{font-size:13px;font-weight:600;fill:var(--ink)}.xd-svg .facet-label{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.xd-svg .map-pt{stroke:#fff;stroke-width:1}.xd-svg .map-cell{stroke:#fff;stroke-width:.5}.xd-svg .map-scale{stroke:var(--ink);stroke-width:2}.xd-svg .map-label{font-size:13px;font-weight:600;fill:var(--ink);paint-order:stroke;stroke:#fff;stroke-width:3px}.xd-kind-choose .xd-story{display:block;max-width:820px}.xd-kind-choose .xd-chapters{max-width:1100px}.xd-verdict{margin:28px 0 8px;max-width:820px;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:18px;padding:22px 26px}.xd-verdict-pick{font-size:32px;font-weight:750;letter-spacing:-.02em;margin:4px 0 8px}.xd-verdict-why{font-size:17px;line-height:1.55;margin:0 0 14px;color:var(--ink2)}.xd-verdict-unless{background:#f7f7fa;border-radius:12px;padding:12px 16px}.xd-verdict-unless-h{font-size:13px;font-weight:700;color:var(--muted);margin:0 0 4px}.xd-verdict-unless p:last-child{margin:0;line-height:1.5}.xd-verdict-note{font-size:13px;color:var(--muted);margin:12px 0 0}.xd-compare{margin:40px 0}.xd-cmp{display:grid;grid-template-columns:minmax(130px,170px) repeat(var(--n),minmax(0,1fr));background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}.xd-cmp-row{display:contents}.xd-cmp-row>*{padding:14px;border-top:1px solid var(--line)}.xd-cmp-head>*{border-top:0;font-weight:700;font-size:15px;background:#fafafc}.xd-cmp-tool i{display:block;font-style:normal;font-size:13px;font-weight:600;color:var(--accent-ink)}.xd-cmp-crit{font-size:14px;font-weight:700;color:var(--muted)}.xd-cmp-cell{display:flex;flex-direction:column;gap:6px;font-size:14.5px;line-height:1.45}.xd-cmp .is-pick{background:var(--accent-soft)}.xd-cmp-head .is-pick{background:#dfe7ff}.xd-cmp-name{display:none}.xd-cmp-catch{font-size:13.5px;color:var(--muted)}.xd-cmp-src{font-size:13px;color:var(--muted);margin-top:auto;padding:6px 0;min-height:40px;display:flex;align-items:flex-end}@media(max-width:900px){.xd-cmp{display:block;border:0;background:none;overflow:visible}.xd-cmp-row.xd-cmp-head{display:none}.xd-cmp-row{display:flex;gap:10px;margin:0 -16px 22px;padding:30px 16px 4px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:16px;position:relative}.xd-cmp-row>*{border:1px solid var(--line);border-radius:12px;background:var(--card);flex:0 0 78%;scroll-snap-align:start}.xd-cmp-crit{position:absolute;top:0;left:16px;border:0!important;background:none!important;padding:0 2px!important;font-size:15px;color:var(--ink)}.xd-cmp-name{display:block;font-size:14px}}.xd-situations ul{list-style:none;padding:0;margin:16px 0 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px}.xd-situations li{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin:0}.xd-sit-when{margin:0 0 10px;line-height:1.5}.xd-sit-when span{font-weight:700;color:var(--muted)}.xd-sit-pick{margin:0 0 4px;font-size:19px;font-weight:700}.xd-sit-why{margin:0;color:var(--ink2);line-height:1.5}.xd-demo{margin:40px 0}.xd-step-table{margin:12px 0}.xd-sit-if{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.xd-demo-foot{justify-content:flex-start;margin:-6px 0 14px}.xd-sources a,.xd-prose a,.xd-sit-why a,.xd-sit-when a{overflow-wrap:anywhere}.xh-hero{max-width:860px;margin-bottom:12px}.xh-toc{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}.xh-toc a{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}.xh-toc a span{color:var(--muted);font-weight:500}.xh-group{margin:44px 0 0;scroll-margin-top:80px}.xh-group h2{font-size:26px;letter-spacing:-.015em;margin:0 0 4px}.xh-blurb{color:var(--muted);margin:0 0 18px}.xh-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px}.xh-grid-big{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr))}.xh-card{margin:0}.xh-card a{display:flex;flex-direction:column;height:100%;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:14px 16px 18px;color:var(--ink);text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}.xh-card a:hover{border-color:#c9d3f5;box-shadow:0 8px 24px #1e285a14;transform:translateY(-2px)}.xh-thumb{display:block;margin:0 0 12px;border-radius:12px;background:#fafafc;overflow:hidden;pointer-events:none}.xh-thumb svg{display:block;width:100%;height:auto}.xh-kind{font-size:13px;font-weight:700;color:var(--accent-ink);margin:0 0 4px}.xh-title{font-size:18px;font-weight:700;line-height:1.3;letter-spacing:-.01em;margin:0 0 6px}.xh-card-big .xh-title{font-size:21px}.xh-desc{font-size:14.5px;line-height:1.5;color:var(--ink2)}.xh-rows{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.xh-row{margin:0;border-bottom:1px solid var(--line)}.xh-row a{display:grid;grid-template-columns:1fr auto;gap:2px 24px;padding:16px 4px;color:var(--ink);text-decoration:none}.xh-row a:hover .xh-title{color:var(--accent-ink)}.xh-row .xh-title{margin:0;font-size:17px}.xh-for{grid-column:1;font-size:14px;color:var(--muted)}.xh-pick{grid-column:2;grid-row:1/span 2;align-self:center;font-size:14px;color:var(--muted);white-space:nowrap}.xh-pick b{color:var(--ink)}.xh-links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px 28px}.xh-links li{margin:0;padding:10px 0;border-bottom:1px solid var(--line)}.xh-links a{font-weight:600;display:inline-block;min-height:24px}.xh-links span{display:block;font-size:14px;color:var(--muted);margin-top:2px}@media(max-width:640px){.xh-row a{grid-template-columns:1fr}.xh-pick{grid-column:1;grid-row:auto}}.xd-table-more{font-size:13px;color:var(--muted);margin:8px 2px 0}.xd-pre .d,.xd-pre .n{white-space:nowrap}.xd-svg .trap-value{font-size:30px;font-weight:750;letter-spacing:-.02em;fill:var(--ink)}.xd-svg .trap-value-wrong{fill:var(--wrong)}.xd-svg .trap-ghost{fill:none;stroke:#b9b9c4;stroke-width:1.5;stroke-dasharray:4 3}.xd-cmp-unknown{color:var(--muted);font-style:italic}.xd-analysis{margin:28px 0;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px 24px}.xd-analysis h2{font-size:22px;margin:0 0 8px}.xd-analysis p{line-height:1.55;margin:0 0 12px}.xd-analysis-def{font-size:14px;color:var(--ink2);background:#f7f7fa;border-radius:12px;padding:10px 14px}.xd-analysis .seo-file{display:inline-flex;align-items:center;gap:10px;font-weight:600;margin:4px 0 12px}.xd-analysis input[type=file]{font:inherit;font-size:14px}.xd-analysis input[type=file]::file-selector-button{font:600 14px inherit;min-height:40px;padding:0 16px;border-radius:999px;border:0;background:var(--accent);color:#fff;cursor:pointer;margin-right:10px}.xd-analysis label{font-weight:600}.xd-analysis textarea{display:block;width:100%;margin-top:6px;font:13.5px/1.5 var(--mono);border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fcfcfd;box-sizing:border-box}.xd-analysis button{font:600 14px inherit;min-height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;margin:0 6px 6px 0}.xd-analysis button[data-paste]{background:var(--accent);color:#fff;border-color:var(--accent)}.xd-analysis button:disabled{opacity:.45;cursor:default}.xd-analysis select{font:inherit;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:#fff;width:100%}.xd-analysis [data-controls]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin:8px 0 12px}.xd-analysis [role=status]{font-size:14px;color:var(--muted)}.xd-analysis [data-output]{overflow-x:auto;margin:6px 0 12px}.xd-analysis [data-output] h3{font-size:17px;margin:12px 0 6px}.xd-analysis table{border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.xd-analysis th,.xd-analysis td{padding:8px 14px 8px 0;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.xd-analysis th{font-weight:600;color:var(--muted)}.xd-analysis .seo-file{white-space:nowrap;flex-wrap:wrap}.xd-analysis [data-controls] *{font-size:max(14px,1em)}.xd-flow .xd-trap-grid{grid-template-columns:1fr}.xe-wrap{max-width:1100px}.xe-hero{max-width:860px}.xe-box{margin:14px 0 16px;border:1px solid #f1c4c8;background:#fff5f5;border-left:5px solid var(--wrong);border-radius:14px;padding:14px 18px}.xe-box-title{display:block;font-size:13px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:#a3262f;margin:0 0 4px}.xe-box h1{font:650 clamp(24px,3.4vw,36px)/1.2 var(--mono);letter-spacing:-.01em;margin:0;color:#5f1016;overflow-wrap:anywhere}.xe-main,.xe-more,.xe-check,.xe-fns{margin:40px 0}.xe-main h2,.xe-more h2,.xe-check h2,.xe-fns h2{font-size:26px;letter-spacing:-.015em;margin:0 0 14px}.xe-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.xe-side{margin:0;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px;min-width:0}.xe-wrong{border-color:#f1c4c8;background:snow}.xe-right{border-color:#bfe3d0;background:#fafffc}.xe-side figcaption{margin:0 0 8px}.xe-side .xd-pre,.xe-more .xd-pre{border:1px solid var(--line);border-radius:10px}.xe-msg{margin:12px 0 6px;font-size:15px;color:#7a1a22}.xe-diag{font-size:13.5px;color:var(--muted);margin:4px 0 0}.xe-diag span{font-weight:600}.xe-runs{font-size:14px;color:var(--muted);margin:12px 0 6px}.xe-null{color:var(--faint);font-style:italic}.xe-why{font-size:17px;line-height:1.6;max-width:820px;margin:18px 0 10px}.xe-data summary{cursor:pointer;color:var(--muted);font-size:14px;min-height:40px;display:flex;align-items:center}.xe-more ol{list-style:none;padding:0;margin:0;display:grid;gap:16px}.xe-more li{margin:0;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px}.xe-more-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.xe-label{display:block;font-size:13px;font-weight:700;margin:0 0 6px;color:var(--muted)}.xe-label-wrong{color:#a3262f}.xe-label-right{color:#0b7a55}.xe-more-why{margin:10px 0 4px;line-height:1.55}.xe-checked{font-size:13px;color:#0b7a55;margin:0}.xe-check{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px 22px}.xe-check textarea{display:block;width:100%;box-sizing:border-box;font:14px/1.55 var(--mono);border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fcfcfd;resize:vertical}.xe-actions{margin:12px 0}.xe-out{min-height:40px}.xe-hint{font-size:14px;color:var(--muted)}.xe-bad{color:#a3262f}.xe-good{color:#0b7a55}.xe-fns ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.xe-fns a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);font:600 14px var(--mono);text-decoration:none;color:var(--ink)}@media(max-width:760px){.xe-pair,.xe-more-pair{grid-template-columns:1fr}}.xe-res{font-weight:700;color:#0b5a3e}.xh-msg{font-family:var(--mono);font-size:15.5px!important;color:#5f1016}.xe-check code{font-size:14px}.xd-kind-error main code{font-size:max(13px,.86em)}.xe-side .xd-table{overflow-x:auto;max-width:100%}.xe-side td,.xe-side th{white-space:normal;overflow-wrap:break-word}.xf-hero{max-width:860px}.xf-hero h1{font-size:clamp(30px,4.4vw,46px);letter-spacing:-.025em;margin:6px 0 14px}.xf-syntax,.xf-examples,.xf-gotchas,.xf-casesec,.xf-dialects{margin:44px 0}.xf-syntax h2,.xf-examples h2,.xf-gotchas h2,.xf-casesec h2,.xf-dialects h2{font-size:26px;letter-spacing:-.015em;margin:0 0 12px}.xf-syntax .xd-pre,.xf-ex .xd-pre,.xf-got .xd-pre,.xf-dialects .xd-pre{border:1px solid var(--line);border-radius:10px;margin:0}.xf-args{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;margin:16px 0 8px;max-width:860px}.xf-args dt{margin:0}.xf-args dd{margin:0;line-height:1.55}.xf-returns{margin:10px 0 0;max-width:860px;line-height:1.55}.xf-lede{color:var(--muted);max-width:820px;margin:0 0 16px}.xf-ex,.xf-got{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;margin:0 0 16px}.xf-ex h3,.xf-got h3{font-size:19px;margin:0 0 12px;letter-spacing:-.01em}.xf-code{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 12px}.xf-code3{grid-template-columns:repeat(3,minmax(0,1fr))}.xf-code>div{min-width:0}.xf-note,.xf-why{line-height:1.55;margin:0 0 12px;max-width:820px}.xf-table{overflow-x:auto;max-width:100%}.xf-table td,.xf-table th{white-space:nowrap}.xf-res{font-weight:650;color:#0b5a3e;text-align:right}th.xf-res{text-align:right}.xf-wrong{color:#7a1a22}.xf-right{color:#0b5a3e}td.xf-diff{background:var(--wrong-soft);color:#7a1a22}.xf-got{border-color:#f1d9c4;background:#fffcf8}.xf-cases table{font-size:14px}.xf-cases td code{white-space:normal;overflow-wrap:anywhere;font-size:13px}.xf-cases th[scope=row]{white-space:nowrap;font-weight:600}.xf-cases tr:target{background:#fff6d6}.xf-src{font-size:13.5px;margin:6px 0 0}@media(max-width:900px){.xf-code3{grid-template-columns:1fr}}@media(max-width:760px){.xf-code,.xf-args{grid-template-columns:1fr}.xf-args dd{margin-bottom:6px}}.xf-cases,.xf-table{max-height:none}.xf-cases{background:#fff;border:1px solid var(--line);border-radius:14px}.xf-cases td,.xf-cases th{vertical-align:top}.xf-cases td:nth-child(2){min-width:220px;white-space:normal}.xf-cases td:nth-child(3){min-width:260px;white-space:normal}.xf-cases td.xf-res{font-weight:600}.xf-cases td:nth-child(2){min-width:300px}.xf-cases td:nth-child(3){min-width:0}.xf-cases code{display:block}.xf-cases .xf-sql{color:var(--muted);margin-top:4px}.xf-d,.xf-t{white-space:nowrap}@media(max-width:760px){.xf-table td,.xf-table th{white-space:normal}.xf-table td{padding:7px 8px}.xf-table .xf-t{display:block;color:var(--muted)}.xf-cases td:nth-child(2){min-width:220px}}@media(max-width:760px){.xf-table .xf-right{display:none}}@media(max-width:760px){.xf-table th,.xf-table td{padding:7px 6px}.xf-table th:first-child,.xf-table td:first-child{padding-left:0}.xf-got,.xf-ex{padding:14px 12px}}.xf-cu{font-size:14px;color:var(--muted);margin:8px 0 0}.xh-fns{display:grid;grid-template-columns:1fr 1fr;column-gap:40px}.xh-fn a{grid-template-columns:1fr}.xh-fn .xh-name{font-family:var(--mono);font-size:15.5px!important}.xh-fn .xh-for{font-size:14.5px}@media(max-width:760px){.xh-fns{grid-template-columns:1fr}}.xt-dims{border:0;padding:0;margin:14px 0 0;display:flex;flex-wrap:wrap;gap:8px 10px}.xt-dims legend{font-size:13px;font-weight:700;color:var(--muted);margin:0 0 8px;padding:0}.xt-dims label{display:inline-flex;align-items:center;gap:6px;font-size:14px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;cursor:pointer}.xt-dims label:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.xt-data{font-size:13px;color:var(--muted);margin-left:4px}.xt-sql .xe-label{display:flex;align-items:center;justify-content:space-between;gap:10px}.xt-copy{min-height:32px;padding:6px 14px;font-size:13px}.xt-fns{font-size:14px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center}.xt-fns a{font-family:var(--mono);font-size:13px;padding:3px 10px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink)}.xt-fns a:hover{border-color:var(--accent)}.xt-sample{margin-top:16px}.xt-sample summary{cursor:pointer;font-size:14px;font-weight:600}.xt-snippet{font:13px/1.5 var(--mono);background:#fcfcfd;border:1px solid var(--line);border-radius:12px;padding:10px 12px;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.xt-tab{margin-bottom:10px}
