:root {
  --wiki-bg: #090a0c;
  --wiki-surface: #121419;
  --wiki-surface-2: #171a20;
  --wiki-line: #272a31;
  --wiki-text: #f2f2f0;
  --wiki-muted: #92969e;
  --wiki-quiet: #62666e;
  --wiki-accent: #c7a36a;
  --wiki-accent-soft: rgba(199, 163, 106, .12);
  --wiki-teal: #65cdbf;
  --wiki-purple: #9184d8;
}

* { box-sizing: border-box; }
html { background: var(--wiki-bg); scroll-behavior: smooth; }
body { min-width: 320px; margin: 0; color: var(--wiki-text); background: var(--wiki-bg); font-family: Space Grotesk, Inter, "Segoe UI", Arial, sans-serif; line-height: 1.55; -webkit-font-smoothing: antialiased; }
a { color: inherit; }
code, .wiki-kicker, .wiki-slug, .wiki-pill, .wiki-table th { font-family: "IBM Plex Mono", Consolas, monospace; }

.wiki-shell { width: min(calc(100% - 48px), 1160px); margin-inline: auto; }
.wiki-header { position: sticky; z-index: 20; top: 0; border-bottom: 1px solid #272a31; background: rgba(9, 10, 12, .94); backdrop-filter: blur(14px); }
.wiki-header-inner { display: flex; align-items: center; width: min(calc(100% - 64px), 1180px); min-height: 76px; }
.wiki-brand { display: inline-flex; align-items: center; }
.wiki-brand img { display: block; width: 178px; height: 54px; object-fit: contain; object-position: left center; }
.wiki-nav { display: flex; align-items: center; gap: 32px; margin-left: auto; color: #92969e; font-family: Inter, "Segoe UI Variable", "Segoe UI", Arial, sans-serif; font-size: 12px; }
.wiki-nav a { text-decoration: none; }
.wiki-nav a:hover { color: var(--wiki-text); }
.wiki-header-actions { display: flex; align-items: center; gap: 12px; margin-left: 34px; }
.wiki-header-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; border: 1px solid #f2f2f0; border-radius: 6px; padding: 0 15px; color: #090a0c; background: #f2f2f0; font-family: Inter, "Segoe UI Variable", "Segoe UI", Arial, sans-serif; font-size: 11px; font-weight: 700; line-height: 1; text-decoration: none; }

.wiki-main { padding: 68px 0 110px; }
.wiki-kicker { margin: 0 0 13px; color: var(--wiki-accent); font-size: .7rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.wiki-hero { max-width: 820px; }
.wiki-hero h1, .wiki-article-header h1 { margin: 0; color: var(--wiki-text); font-size: clamp(2.6rem, 6vw, 5.5rem); line-height: .95; letter-spacing: -.07em; }
.wiki-lede, .wiki-article-lede { max-width: 740px; margin: 22px 0 0; color: var(--wiki-muted); font-size: 1.06rem; }
.wiki-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.wiki-button { display: inline-flex; align-items: center; min-height: 42px; border: 1px solid var(--wiki-line); border-radius: 6px; padding: 0 15px; color: var(--wiki-text); background: var(--wiki-surface); font-size: .82rem; font-weight: 600; text-decoration: none; }
.wiki-button:hover { border-color: var(--wiki-accent); }
.wiki-button--primary { border-color: var(--wiki-text); color: var(--wiki-bg); background: var(--wiki-text); }

.wiki-section { margin-top: 72px; }
.wiki-section h2 { margin: 0 0 18px; color: var(--wiki-text); font-size: clamp(1.55rem, 3vw, 2.4rem); line-height: 1.05; letter-spacing: -.05em; }
.wiki-section h3 { margin: 0 0 7px; color: var(--wiki-text); font-size: 1.02rem; }
.wiki-section p { max-width: 760px; margin: 0 0 14px; color: var(--wiki-muted); }
.wiki-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.wiki-card { min-width: 0; border: 1px solid var(--wiki-line); border-radius: 10px; padding: 20px; background: var(--wiki-surface); }
.wiki-card p { margin: 0; font-size: .88rem; }
.wiki-count { display: inline-flex; margin-bottom: 13px; color: var(--wiki-accent); font: .72rem "IBM Plex Mono", Consolas, monospace; }
.wiki-directory { display: grid; gap: 34px; }
.wiki-directory-group { border-top: 1px solid var(--wiki-line); padding-top: 15px; }
.wiki-directory-group h3 { display: flex; justify-content: space-between; gap: 16px; }
.wiki-directory-group h3 span { color: var(--wiki-quiet); font: .68rem "IBM Plex Mono", Consolas, monospace; }
.wiki-directory-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px 18px; }
.wiki-directory-links a { color: var(--wiki-muted); font-size: .86rem; text-decoration: none; }
.wiki-directory-links a span { color: var(--wiki-quiet); font-size: .72rem; }
.wiki-directory-links a:hover { color: var(--wiki-accent); }

.wiki-breadcrumbs { margin-bottom: 28px; color: var(--wiki-quiet); font-size: .78rem; }
.wiki-breadcrumbs a { text-decoration: none; }
.wiki-breadcrumbs a:hover { color: var(--wiki-text); }
.wiki-article-header { max-width: 850px; }
.wiki-slug { display: inline-block; margin-top: 17px; color: var(--wiki-teal); font-size: .78rem; }
.wiki-preview-layout { display: grid; grid-template-columns: minmax(320px, 420px) minmax(0, 1fr); gap: 34px; align-items: center; margin-top: 38px; border: 1px solid var(--wiki-line); border-radius: 14px; padding: 24px; background: var(--wiki-surface); }
.wiki-overview { min-width: 0; padding: 8px 12px 8px 0; }
.wiki-overview > p:not(.wiki-kicker) { max-width: 650px; margin: 17px 0 0; color: var(--wiki-muted); font-size: .96rem; }
.wiki-preview-layout .wiki-overview > p.wiki-overview-lead { max-width: 620px; margin-top: 0; color: var(--wiki-text); font-size: clamp(1.65rem, 3vw, 2.65rem); font-weight: 700; line-height: 1.04; letter-spacing: -.05em; }
.wiki-use-case { margin-top: 24px; border-left: 2px solid var(--wiki-accent); padding: 3px 0 3px 15px; }
.wiki-use-case span { color: var(--wiki-accent); font: .68rem "IBM Plex Mono", Consolas, monospace; letter-spacing: .1em; text-transform: uppercase; }
.wiki-use-case p { margin: 6px 0 0; color: var(--wiki-text); font-size: .9rem; }
.wiki-article-grid { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 24px; align-items: start; }
.wiki-article-content, .wiki-aside { min-width: 0; }
.wiki-panel { border: 1px solid var(--wiki-line); border-radius: 10px; padding: 20px; background: var(--wiki-surface); }
.wiki-panel + .wiki-panel { margin-top: 12px; }
.wiki-panel h2 { margin: 0 0 14px; font-size: 1.22rem; letter-spacing: -.035em; }
.wiki-panel h3 { margin: 21px 0 9px; font-size: .86rem; }
.wiki-panel h3:first-child { margin-top: 0; }
.wiki-panel p { margin: 0 0 13px; color: var(--wiki-muted); font-size: .9rem; }
.wiki-figure { min-width: 0; margin: 0; }
.wiki-figure img { display: block; width: 360px; max-width: 100%; height: auto; margin-inline: auto; border: 1px solid var(--wiki-line); border-radius: 10px; background: #0d0f12; }
.wiki-figure figcaption { max-width: 360px; margin: 10px auto 0; color: var(--wiki-quiet); font-size: .72rem; }
.wiki-node-preview { --foreground: #eef1f5; --muted: #a5adbb; --line: #ffffff14; --trigger: #efb163; --content-edge: #4dc7b0; --branch-true: #56c78b; --branch-false: #ea6b77; display: grid; place-items: center; min-height: 360px; border: 1px solid var(--wiki-line); border-radius: 10px; padding: 34px 24px; background: #0d0f12; overflow: visible; }
.wiki-node-preview .react-flow__node { position: relative; width: 300px; max-width: 100%; overflow: visible; }
.wiki-node-preview .flow-card { position: relative; display: grid; gap: .42rem; width: 300px; max-width: 100%; min-height: 136px; border: 1px solid var(--line); border-radius: 20px; padding: .9rem .9rem .84rem; color: var(--foreground); background: linear-gradient(#141822f7, #0f121af7); box-shadow: 0 12px 26px #00000038; overflow: visible; }
.wiki-node-preview .flow-card--trigger { border-color: #efb16342; }
.wiki-node-preview .flow-card--condition { border-color: #7b68ee47; }
.wiki-node-preview .flow-card strong { font-size: 1rem; line-height: 1.2; }
.wiki-node-preview .flow-card__eyebrow, .wiki-node-preview .flow-card__type { color: var(--muted); font-size: .76rem; letter-spacing: .11em; text-transform: uppercase; }
.wiki-node-preview .flow-card__type { color: #cfd5e3; }
.wiki-node-preview .flow-card__summary { display: grid; gap: .25rem; }
.wiki-node-preview .flow-card__summary span { color: var(--muted); font-size: .9rem; line-height: 1.45; }
.wiki-node-preview .flow-card__flow-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: .65rem; margin-top: .1rem; }
.wiki-node-preview .flow-card__inputs, .wiki-node-preview .flow-card__footer, .wiki-node-preview .flow-branches { display: grid; gap: .55rem; margin: 0; padding: 0; }
.wiki-node-preview .flow-card__inputs { justify-items: start; }
.wiki-node-preview .flow-card__footer, .wiki-node-preview .flow-branches { justify-items: end; }
.wiki-node-preview .flow-branches { justify-content: stretch; }
.wiki-node-preview .flow-card__data-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .35rem .65rem; margin: .25rem -.2rem 0; }
.wiki-node-preview .flow-data-port { position: relative; display: flex; align-items: center; min-width: 0; min-height: 2rem; padding: .18rem 0; color: #cfd5e3; font-size: .72rem; line-height: 1.25; overflow: visible; }
.wiki-node-preview .flow-data-port--output { grid-column: 2; justify-content: flex-end; text-align: right; }
.wiki-node-preview .flow-data-port > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wiki-node-preview .flow-port { position: relative; display: inline-flex; align-items: center; border-radius: 999px; padding: .32rem .62rem; background: #ffffff0d; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
.wiki-node-preview .flow-port--control { color: #e9c187; }
.wiki-node-preview .flow-port--data { max-width: 100%; overflow: hidden; color: #8bded8; text-overflow: ellipsis; white-space: nowrap; }
.wiki-node-preview .flow-port--true { color: #93ebbb; }
.wiki-node-preview .flow-port--false { color: #f3a0aa; }
.wiki-node-preview .react-flow__handle { pointer-events: none; position: absolute; width: 16px; min-width: 16px; height: 16px; min-height: 16px; border: 2px solid #0d1017; border-radius: 100%; }
.wiki-node-preview .react-flow__handle-left { top: 50%; left: 0; transform: translate(-50%, -50%); }
.wiki-node-preview .react-flow__handle-right { top: 50%; right: 0; transform: translate(50%, -50%); }
.wiki-node-preview .flow-card__inputs .react-flow__handle-left { left: -.9rem; }
.wiki-node-preview .flow-card__footer .react-flow__handle-right, .wiki-node-preview .flow-branches .react-flow__handle-right { right: -.9rem; }
.wiki-node-preview .flow-data-port--input .react-flow__handle-left { left: -.7rem; }
.wiki-node-preview .flow-data-port--output .react-flow__handle-right { right: -.7rem; }
.wiki-node-preview .flow-handle--control-in, .wiki-node-preview .flow-handle--control-out { background: var(--trigger); }
.wiki-node-preview .flow-handle--data { background: #61d7ce; }
.wiki-node-preview .flow-handle--true { background: var(--branch-true); }
.wiki-node-preview .flow-handle--false { background: var(--branch-false); }
.wiki-note { border-left: 2px solid var(--wiki-teal); padding: 10px 13px; color: var(--wiki-muted); background: rgba(90, 210, 214, .06); font-size: .84rem; }
.wiki-steps { display: grid; gap: 13px; margin: 0; padding: 0; list-style: none; counter-reset: steps; }
.wiki-steps li { display: grid; grid-template-columns: 31px minmax(0, 1fr); gap: 12px; counter-increment: steps; }
.wiki-steps li::before { content: counter(steps, decimal-leading-zero); color: var(--wiki-accent); font: .7rem "IBM Plex Mono", Consolas, monospace; }
.wiki-steps strong { display: block; margin-bottom: 3px; font-size: .88rem; }
.wiki-steps span { color: var(--wiki-muted); font-size: .86rem; }
.wiki-pill-row { display: flex; flex-wrap: wrap; gap: 6px; }
.wiki-pill { display: inline-flex; border: 1px solid var(--wiki-line); border-radius: 999px; padding: 4px 8px; color: var(--wiki-muted); font-size: .67rem; }
.wiki-port-list { display: grid; gap: 7px; }
.wiki-port { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; border: 1px solid var(--wiki-line); border-radius: 7px; padding: 9px 10px; }
.wiki-port strong { display: block; color: var(--wiki-text); font-size: .82rem; }
.wiki-port small { color: var(--wiki-quiet); font-size: .72rem; }
.wiki-port em { color: var(--wiki-accent); font-size: .68rem; font-style: normal; white-space: nowrap; }
.wiki-table-wrap { overflow-x: auto; border: 1px solid var(--wiki-line); border-radius: 7px; }
.wiki-table { width: 100%; border-collapse: collapse; font-size: .82rem; }
.wiki-table th, .wiki-table td { border-bottom: 1px solid var(--wiki-line); padding: 10px 12px; text-align: left; vertical-align: top; }
.wiki-table tr:last-child td { border-bottom: 0; }
.wiki-table th { color: var(--wiki-quiet); font-size: .65rem; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.wiki-table td { color: var(--wiki-muted); }
.wiki-table td:first-child { color: var(--wiki-text); font-weight: 600; }
.wiki-related { display: grid; gap: 7px; }
.wiki-related a { color: var(--wiki-muted); font-size: .83rem; text-decoration: none; }
.wiki-related a:hover { color: var(--wiki-accent); }
.wiki-empty { color: var(--wiki-quiet); font-size: .83rem; }
.wiki-related + .wiki-button { margin-top: 18px; }
.wiki-table-wrap + p, .wiki-port-list + p, .wiki-note + .wiki-button { margin-top: 18px; }
.wiki-panel > p + .wiki-table-wrap, .wiki-panel > p + .wiki-port-list { margin-top: 16px; }
.wiki-panel > :last-child { margin-bottom: 0; }

@media (max-width: 860px) {
  .wiki-preview-layout { grid-template-columns: 1fr; }
  .wiki-overview { padding: 0; }
  .wiki-article-grid { grid-template-columns: 1fr; }
  .wiki-aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .wiki-aside .wiki-panel + .wiki-panel { margin-top: 0; }
}

@media (max-width: 680px) {
  .wiki-shell { width: min(calc(100% - 28px), 1160px); }
  .wiki-header-inner { width: calc(100% - 36px); min-height: 76px; gap: 18px; }
  .wiki-brand { flex: 0 0 auto; }
  .wiki-brand img { width: 145px; height: 54px; }
  .wiki-nav { min-width: 0; flex-wrap: nowrap; gap: 16px; overflow-x: auto; white-space: nowrap; font-size: 11px; }
  .wiki-header-actions { display: none; }
  .wiki-main { padding: 52px 0 78px; }
  .wiki-card-grid, .wiki-directory-links, .wiki-aside { grid-template-columns: 1fr; }
  .wiki-aside .wiki-panel + .wiki-panel { margin-top: 12px; }
  .wiki-preview-layout { margin-top: 28px; padding: 16px; }
}
