/* Two distinct workflows, grounded in the same business definitions. */
.context-flow{--flow-bg:#17211c;--flow-panel:#1d2a22;--flow-muted:#b9c6ba;--flow-line:#47594b;--flow-accent:#ffae96;--flow-green:#b9d9b4;--sheet-green:#276846;position:relative;padding:28px clamp(20px,4vw,62px) 22px;color:#f7f8f1;background-color:var(--flow-bg);background-image:linear-gradient(#c1d2c107 1px,transparent 1px),linear-gradient(90deg,#c1d2c107 1px,transparent 1px);background-size:64px 64px;border-radius:12px;isolation:isolate}
.context-flow [hidden]{display:none!important}
.flow-topline,.flow-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:var(--flow-muted)}
.flow-topline{margin-bottom:22px}.flow-playback{display:flex;gap:20px;flex-shrink:0}.flow-playback button{display:inline-flex;align-items:center;gap:8px;min-height:44px;border:0;padding:0;background:none;color:var(--flow-muted);font-size:11px}.flow-playback button>span:first-child{font-size:19px}.flow-playback button:disabled{opacity:.45;cursor:default}
.flow-mode-switch{display:grid;grid-template-columns:1fr 1fr;max-width:670px;gap:8px;padding:5px;background:#101b15;border:1px solid #35483a;border-radius:9px}
.flow-mode-switch button{display:flex;align-items:center;gap:13px;text-align:left;border:1px solid transparent;background:transparent;color:var(--flow-muted);padding:15px 18px;border-radius:5px;transition:background 180ms ease,border-color 180ms ease,transform 150ms cubic-bezier(.23,1,.32,1)}
.flow-mode-switch button[aria-pressed=true]{background:#2e4133;color:#fff;border-color:#6b826d}.flow-mode-switch svg{width:27px;height:27px;flex-shrink:0}.flow-mode-switch strong,.flow-mode-switch small{display:block}.flow-mode-switch strong{font-size:15px;font-weight:600;line-height:1.3}.flow-mode-switch small{font-size:10px;line-height:1.5;margin-top:4px;color:var(--flow-muted)}
.flow-question{font-size:clamp(16px,1.65vw,23px);line-height:1.5;max-width:900px;letter-spacing:-.02em;margin:25px 0 24px;text-wrap:pretty}
.flow-experience{min-width:0}.flow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:19px 0 0;padding:0;list-style:none}.flow-steps li{display:flex;gap:9px;align-items:baseline;font-size:10px;line-height:1.65;color:#a9b8ac;padding-top:10px;border-top:1px solid var(--flow-line)}.flow-steps li>span:first-child{font:10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;opacity:.6}.flow-steps li[aria-current=step]{border-top-color:var(--flow-accent);color:var(--flow-accent)}.flow-steps li[data-complete=true]{color:#e0e9da}

/* Spreadsheet chrome is an illustration; only the workflow controls are buttons. */
.flow-workbook{position:relative;isolation:isolate;border:1px solid #809486;border-radius:8px;overflow:hidden;color:#27392e;background:#fff;box-shadow:0 12px 35px #08150e20}
.sheet-titlebar{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:46px;padding:11px 18px;background:#21543d;color:#fff;font-size:10px;line-height:1.4}.sheet-titlebar>span:last-child{color:#deece0;font-size:9px}.sheet-file{display:inline-flex;gap:10px;align-items:center;font-weight:600}.sheet-file svg{width:20px;height:20px}
.sheet-ribbon{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:0 17px;min-height:44px;background:#f4f7f3;border-bottom:1px solid #dce3dc;font-size:10px}.sheet-menu,.sheet-tools{display:flex;align-items:center;gap:19px}.sheet-menu>span{display:block;padding:13px 0 11px;border-bottom:2px solid transparent}.sheet-data-menu{color:var(--sheet-green);font-weight:600}.context-flow:not([data-human-stage=open]) .sheet-data-menu{border-bottom-color:var(--sheet-green)}.sheet-tools i{width:1px;height:17px;background:#d6e0d7}.sheet-sum-tool{display:flex;gap:6px;align-items:center}.sheet-sum-tool b{font-size:19px;font-weight:400;line-height:1}
.sheet-formula{display:flex;align-items:center;gap:12px;height:38px;border-bottom:1px solid #dce3dc;padding:5px 13px;background:#fff;font-size:10px}.sheet-cell-name{display:flex;align-items:center;justify-content:center;min-width:60px;height:26px;border:1px solid #dce3dc;color:#425649;font-variant-numeric:tabular-nums}.sheet-formula i{font:italic 15px Georgia,serif;color:#738379}.sheet-formula code{font:11px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#354f3b}
.sheet-body{display:grid;grid-template-columns:minmax(0,1fr) 230px}.sheet-scroll{min-width:0;overflow-x:auto;overscroll-behavior-x:contain;background:#fff;scrollbar-width:thin;scrollbar-color:#9cad9e #f5f7f3}.sheet-scroll:focus-visible{outline:2px solid var(--sheet-green);outline-offset:-2px}
.sheet-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:565px;font:11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums}.sheet-col-index{width:29px}.sheet-col-order{width:15%}.sheet-col-product{width:15%}.sheet-col-batch{width:18%}.sheet-col-feedback{width:28%}.sheet-col-amount{width:19%}
.sheet-grid :is(th,td){border-right:1px solid #e2e7e1;border-bottom:1px solid #e2e7e1;height:39px;padding:9px 8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:400;text-align:left}.sheet-grid tr>th:first-child{background:#f2f5ef;color:#68776b;text-align:center;padding-inline:2px;font-size:9px}.sheet-grid .sheet-letters th{height:25px;padding:5px 0;background:#f2f5ef;color:#68776b;text-align:center;font-size:9px}.sheet-grid .sheet-column-headings>th:not(:first-child){background:#e8f0e5;color:#244e35;font:600 11px/1.4 Manrope,Arial,sans-serif}.sheet-column-headings i{float:right;font-style:normal;color:#4b6953;margin-left:2px}.sheet-grid .sheet-amount{text-align:right}.sheet-grid tbody td:nth-child(5){font:10px/1.5 Manrope,Arial,sans-serif}
.sheet-grid tr[data-selected=true] .sheet-amount{background:#dcebdc;box-shadow:inset 2px 0 var(--sheet-green),inset -2px 0 var(--sheet-green);color:#164727}.sheet-grid tr[data-selection-start] .sheet-amount{border-top:2px solid var(--sheet-green);padding-top:7px}.sheet-grid tr[data-selection-end] .sheet-amount{border-bottom:2px solid var(--sheet-green);padding-bottom:8px}.sheet-grid tr[data-out-of-scope=true] td{color:#89928b;background:#f3f5f1}.sheet-grid .sheet-total-row td{font-weight:600;background:#f8faf5;color:#244e35}.sheet-grid .sheet-total-row td:nth-child(2){font:600 10px/1.5 Manrope,Arial,sans-serif;text-align:right}.sheet-total-cell{position:relative}.sheet-total-cell strong{font-size:12px}.context-flow[data-human-stage=resolved] .sheet-total-cell{box-shadow:inset 0 0 0 2px var(--sheet-green)}.context-flow[data-human-stage=resolved] .sheet-total-cell:after{content:'';position:absolute;right:0;bottom:0;width:5px;height:5px;background:var(--sheet-green)}
.sheet-context{padding:19px 17px 16px;background:#f3f6ef;border-left:1px solid #d9e1d6;min-width:0}.sheet-context-title{display:flex;align-items:center;gap:9px;font-size:11px}.sheet-context-title img{flex-shrink:0}.sheet-context-intro{font-size:10px;line-height:1.7;color:#61715e;margin:11px 0 18px}.sheet-filters{border:1px solid #d3dfce;border-radius:5px;overflow:hidden;background:#fff}.sheet-filters>div{padding:10px 12px;border-bottom:1px solid #e4eadf}.sheet-filters>div:last-child{border:0}.sheet-filters span,.sheet-filters strong{display:block;font-size:10px;line-height:1.6}.sheet-filters span{color:#66735f}.sheet-filters strong{font-size:11px;font-weight:600;color:#28462e;margin-top:3px}.context-flow[data-human-stage=open] .sheet-filters{opacity:.45}.context-flow[data-human-stage=scope] .sheet-filters{outline:2px solid #779c67;outline-offset:2px}.sheet-context-result{margin-top:15px}.sheet-match-count{font-size:11px;font-weight:600;color:#31533a}.sheet-context-result p{font-size:10px;line-height:1.75;color:#66735f;margin-top:7px}.sheet-result{border-top:1px solid #d3dfce;padding-top:15px;margin-top:16px}.sheet-result>span,.sheet-result small{display:block;font-size:9px;line-height:1.7;color:#61715e}.sheet-result strong{display:block;font-size:25px;font-weight:600;letter-spacing:-.04em;line-height:1.3;margin:6px 0 4px;color:#244e35;font-variant-numeric:tabular-nums}
.sheet-tabs{min-height:37px;display:flex;align-items:stretch;gap:0;padding-inline:9px;background:#f0f4ed;border-top:1px solid #d7e0d3;font-size:9px}.sheet-tabs>span{padding:11px 15px 9px}.sheet-tabs .sheet-active-tab{color:#245c3d;background:#fff;border-bottom:2px solid var(--sheet-green);font-weight:600}.sheet-tabs>span:first-child{color:#778a73;font-size:14px;padding:6px 15px}.sheet-tabs .sheet-zoom{margin-left:auto;color:#6b7b66;font-size:9px}.sheet-status{min-height:29px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;font-size:9px;line-height:1.4;background:#e7eee2;color:#385a3d}.sheet-status>span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}
.sheet-cursor{position:absolute;left:0;top:0;z-index:2;pointer-events:none;filter:drop-shadow(0 2px 2px #18341f30)}.context-flow[data-human-stage=resolved] .sheet-cursor{opacity:0}

/* The agent uses a console, never the spreadsheet or a human result card. */
.agent-console{border:1px solid #627469;border-radius:8px;background:#101b16;overflow:hidden}.agent-titlebar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 23px;background:#25332b;border-bottom:1px solid var(--flow-line);font-size:11px}.agent-titlebar>span:first-child{display:flex;align-items:center;gap:10px}.agent-titlebar i{width:7px;height:7px;border-radius:50%;background:var(--flow-accent)}.agent-titlebar>span:last-child{font-size:9px;color:var(--flow-muted)}
.agent-console-body{display:grid;grid-template-columns:1fr 1.15fr;min-height:400px}.agent-request,.agent-response{padding:27px 25px;min-width:0}.agent-request{border-right:1px solid #36463b}.agent-message-head{display:flex;align-items:center;gap:9px;font-size:11px;color:#c6d3c7;margin-bottom:25px}.agent-code-icon{font:18px/1 ui-monospace,monospace;color:var(--flow-accent)}.agent-tool-name{display:inline-flex;border:1px solid #576f5b;border-radius:4px;font:11px/1.6 ui-monospace,monospace;color:var(--flow-accent);padding:4px 8px}.context-flow pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace;margin:17px 0 0;color:#e8efe1}.agent-request pre{color:#c8d8ca}.agent-request-note{font-size:10px;color:var(--flow-muted);line-height:1.8;margin-top:25px}.agent-response-status{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:9px;line-height:1.6;color:var(--flow-accent)}.flow-format-label{display:block;font-size:9px;line-height:1.7;color:var(--flow-muted);margin-top:18px}.agent-pending{min-height:285px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.agent-pending-mark{font:36px/1.4 ui-monospace,monospace;color:#77977b;margin-bottom:18px}.agent-pending strong{font-size:14px;font-weight:500;color:var(--flow-accent)}.agent-pending p{font-size:11px;line-height:1.8;color:var(--flow-muted);margin-top:10px;max-width:290px}.agent-console-foot{display:flex;justify-content:space-between;gap:20px;padding:14px 23px;border-top:1px solid var(--flow-line);font-size:9px;color:var(--flow-muted);line-height:1.6}

.flow-wire{position:relative;height:32px;width:1px;background:var(--flow-line);margin-inline:auto}.flow-wire i{display:block;height:100%;width:2px;background:var(--flow-accent);transform-origin:top;transform:scaleY(1)}.context-flow[data-stage=question] .flow-wire i{transform:scaleY(0)}
.flow-surface{background:var(--flow-panel);border:1px solid var(--flow-line);border-radius:8px}.flow-ontology{position:relative;padding:24px 27px;border-color:#627a65;background:#223227}.flow-ontology-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.flow-eyebrow{font-size:9px;font-weight:600;color:var(--flow-muted)}.flow-ontology-head h3{font-size:clamp(21px,2.2vw,29px);line-height:1.3;font-weight:600;letter-spacing:-.025em;margin-top:7px}.flow-resolved{display:inline-flex;gap:8px;align-items:center;font-size:10px;color:var(--flow-green);white-space:nowrap}.flow-resolved i{width:6px;height:6px;background:currentColor;border-radius:50%}
.flow-type-path{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);align-items:center;gap:8px;margin-block:23px 0;padding-block:18px;border-block:1px solid var(--flow-line)}.flow-type-path>span{display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;line-height:1.5;min-width:0}.flow-type-path img{flex-shrink:0}.flow-type-path>i{font-style:normal;font-size:14px;color:var(--flow-accent);text-align:center}
.flow-context-rows{margin:15px 0 0}.flow-context-rows>div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:20px;padding:10px 12px;margin-inline:-12px;border-radius:3px}.flow-context-rows dt{font-size:10px;color:var(--flow-muted);padding-top:2px;line-height:1.7}.flow-context-rows dd{margin:0;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.flow-context-rows code{font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.flow-context-rows b{font-weight:600;color:var(--flow-accent)}.flow-code-arrow{color:var(--flow-accent);margin-inline:9px}
.flow-definition{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px}.flow-definition>span{font-size:11px;color:var(--flow-muted);line-height:1.7}.flow-definition>div{display:flex;gap:7px;flex-wrap:wrap;flex-shrink:0}.flow-definition button{font-size:10px;border:1px solid #829682;background:transparent;color:#f7f8f1;border-radius:5px;min-height:44px;padding:8px 12px;line-height:1.5;transition:transform 150ms cubic-bezier(.23,1,.32,1)}.flow-definition button[aria-pressed=true]{border-color:var(--flow-accent);background:var(--flow-accent);color:#291d17;font-weight:600}.flow-rule-note{font-size:10px;color:var(--flow-muted);line-height:1.8;margin-top:14px;min-height:18px}.flow-ontology-foot{display:flex;gap:15px;justify-content:space-between;color:var(--flow-muted);font-size:9px;margin-top:18px}
.context-flow[data-stage=mapping] [data-context-row=mapping],.context-flow[data-stage=mapping] [data-context-row=scope],.context-flow[data-stage=rules] [data-context-row=rule],.context-flow[data-stage=rules] [data-context-row=identity]{background:#3b4631}
.flow-bottom{padding-top:20px;align-items:baseline;line-height:1.7;font-size:10px}.flow-bottom a{display:inline-flex;gap:15px;align-items:center;min-height:44px;color:var(--flow-accent);font-weight:600;flex-shrink:0}.context-flow :is(button,a):focus-visible{outline-color:var(--flow-accent)}.context-flow button:active:not(:disabled){transform:scale(.98)}
.flow-disclosure{font-size:11px;line-height:1.8;color:var(--muted);margin-top:18px;max-width:850px}.example-details{margin-top:32px;scroll-margin-top:110px}.example-details>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;border-block:1px solid var(--line);padding-block:20px;min-height:64px;font-size:13px;font-weight:600;cursor:pointer}.example-details>summary::-webkit-details-marker{display:none}.details-plus{font-size:23px;color:var(--red);line-height:1;transition:transform .2s}.example-details[open] .details-plus{transform:rotate(45deg)}.example-details .demo-workspace{margin-top:23px}.example-details~.demo-footnote{display:none}.example-details[open]~.demo-footnote{display:block}
html[data-paused=true] .context-flow *,html[data-motion=still] .context-flow *{transition:none}
@media(hover:hover) and (pointer:fine){.flow-playback button:hover:not(:disabled){color:#fff}.flow-mode-switch button:hover{background:#293c30}.flow-definition button:hover:not([aria-pressed=true]){background:#344939}.flow-bottom a:hover{text-decoration:underline;text-underline-offset:5px}.example-details>summary:hover{color:var(--red)}}
@media(max-width:1150px){.context-flow{padding-inline:25px}.sheet-body{grid-template-columns:minmax(0,1fr) 206px}.sheet-context{padding-inline:13px}.sheet-context-title{font-size:10px}.sheet-result strong{font-size:23px}.flow-type-path>span{flex-direction:column;gap:6px;text-align:center}}
@media(max-width:900px){.sheet-body{grid-template-columns:1fr}.sheet-context{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;border-left:0;border-top:1px solid #d9e1d6;padding:17px}.sheet-context-title{grid-column:1/-1}.sheet-context-intro{display:none}.sheet-filters{grid-row:2/4;grid-column:1}.sheet-context-result{margin:0}.sheet-result{margin:0;padding-top:10px}.sheet-filters>div{padding:7px 10px}.sheet-context-result p{margin-top:4px}.sheet-result strong{font-size:25px}.sheet-cursor{display:none}.agent-console-body{grid-template-columns:1fr 1fr}.agent-request,.agent-response{padding:22px 18px}.context-flow pre{font-size:11px}}
@media(max-width:680px){
  .context-flow{padding:15px 14px 16px;border-radius:8px;background-size:42px 42px}.flow-topline{gap:12px;font-size:9px;margin-bottom:15px}.flow-playback{gap:13px}.flow-playback button{font-size:9px;gap:5px}.flow-topline>span{max-width:125px}.flow-mode-switch{gap:3px;padding:3px}.flow-mode-switch button{padding:12px 9px;gap:9px}.flow-mode-switch svg{width:22px;height:22px}.flow-mode-switch strong{font-size:13px}.flow-mode-switch small{font-size:9px;max-width:110px}.flow-question{font-size:17px;margin:20px 0}.flow-steps{gap:10px;margin-top:12px}.flow-steps li{display:block;font-size:9px;line-height:1.6}.flow-steps li>span:first-child{display:block;font-size:9px;margin-bottom:3px}
  .sheet-titlebar{padding:10px 12px;font-size:10px;gap:10px}.sheet-titlebar>span:last-child{font-size:8px;max-width:85px;text-align:right}.sheet-file{gap:6px}.sheet-file svg{width:17px;height:17px}.sheet-ribbon{padding-inline:12px;gap:10px;font-size:9px}.sheet-menu{gap:12px}.sheet-tools{gap:10px}.sheet-tools>span:first-child,.sheet-tools i{display:none}.sheet-formula{padding-inline:9px;gap:9px}.sheet-formula code{font-size:10px}.sheet-cell-name{min-width:46px}.sheet-context{gap:12px;padding:14px 12px}.sheet-context-title{font-size:11px}.sheet-result strong{font-size:23px}.sheet-tabs>span{padding-inline:11px}.sheet-tabs .sheet-zoom{display:none}.sheet-status{padding-inline:12px;font-size:8px;align-items:flex-start;gap:12px}.sheet-status>span:first-child{max-width:180px}.sheet-status>span:last-child{white-space:normal;text-align:right}
  .agent-titlebar{padding:13px 16px;gap:14px;font-size:10px}.agent-titlebar>span:last-child{font-size:8px;max-width:95px;text-align:right}.agent-console-body{grid-template-columns:1fr}.agent-request,.agent-response{padding:20px 17px}.agent-request{border-right:0;border-bottom:1px solid #36463b}.agent-message-head{font-size:10px;margin-bottom:15px}.agent-pending{min-height:245px}.context-flow pre{font-size:10px;line-height:1.8}.agent-console-foot{padding:13px 16px;font-size:8px;gap:13px}.agent-console-foot>span:last-child{text-align:right;flex-shrink:0}
  .flow-ontology{padding:20px 17px}.flow-ontology-head{gap:13px;flex-wrap:wrap}.flow-ontology-head h3{font-size:23px}.flow-eyebrow,.flow-resolved{font-size:9px}.flow-type-path{gap:4px;grid-template-columns:minmax(0,1fr) 8px minmax(0,1fr) 8px minmax(0,1fr) 8px minmax(0,1fr) 8px minmax(0,1fr);margin-top:18px;padding-block:15px}.flow-type-path>span{font-size:9px}.flow-type-path img{width:23px;height:23px}.flow-type-path>i{font-size:11px}.flow-context-rows>div{grid-template-columns:1fr;gap:4px;padding-block:10px}.flow-context-rows dt{font-size:9px}.flow-context-rows dd,.flow-context-rows code{font-size:11px}.flow-code-arrow{margin-inline:4px}.flow-definition{align-items:flex-start;flex-direction:column;gap:12px;margin-top:17px}.flow-definition button{padding-inline:15px}.flow-ontology-foot{font-size:8px;gap:13px;line-height:1.7;margin-top:17px}.flow-bottom{flex-direction:column;align-items:flex-start;gap:5px;font-size:9px;padding-top:17px}.flow-bottom a{font-size:10px}.flow-disclosure{font-size:10px}.example-details{margin-top:25px}.example-details>summary{font-size:12px;padding-block:17px}
}
@media(max-width:380px){.context-flow{padding-inline:10px}.flow-topline>span{max-width:100px}.flow-mode-switch svg{display:none}.flow-mode-switch button{padding-inline:12px}.sheet-result strong{font-size:21px}.flow-ontology{padding-inline:14px}.flow-type-path{gap:2px}.flow-type-path>span{font-size:8px}.flow-ontology-head h3{font-size:22px}.flow-definition button{padding-inline:11px}}
@media(prefers-reduced-motion:reduce){.context-flow *,.details-plus{transition:none!important}.sheet-cursor{display:none}}
