/* Preserve the surrounding chapter when the former observatory stylesheet is removed. */
#intelligence.swarm-chapter { --swarm-ink:#092b24; --swarm-muted:#496359; --swarm-teal:#007d70; --swarm-line:rgba(47,98,79,.22); }
#intelligence .section-kicker { gap:24px; font-size:14px; line-height:1.6; }
#intelligence .section-kicker > span:last-child:not(:first-child) { font-size:14px; letter-spacing:.03em; color:var(--swarm-muted); }
#intelligence .swarm-heading { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr); align-items:center; gap:clamp(40px,7vw,112px); margin:58px 0 68px; }
#intelligence .swarm-introduction { max-width:48ch; }
#intelligence .swarm-introduction p { margin:0; font-size:var(--reading-size,20px); line-height:1.7; color:var(--swarm-muted); }
#intelligence .swarm-introduction p + p { margin-top:22px; color:var(--swarm-ink); }
#intelligence .swarm-closing { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr); align-items:center; gap:clamp(32px,7vw,100px); padding-top:38px; }
#intelligence .swarm-closing p { font-size:18px; line-height:1.65; color:var(--swarm-muted); margin:0; max-width:65ch; }
#intelligence .swarm-closing p strong { font-weight:600; color:var(--swarm-ink); }
#intelligence .swarm-closing a { display:flex; align-items:center; justify-content:space-between; gap:22px; font-size:18px; line-height:1.5; color:var(--swarm-ink); padding-block:16px; border-bottom:1px solid var(--swarm-teal); }
#intelligence .swarm-closing a > span { font-size:28px; color:var(--swarm-teal); }
#intelligence .swarm-closing a:focus-visible { outline:2px solid var(--swarm-teal); outline-offset:5px; }
@media(max-width:1050px) {
  #intelligence .swarm-heading { gap:36px; grid-template-columns:1.2fr 1fr; }
}
@media(max-width:950px) {
  #intelligence .section-kicker { flex-direction:column; align-items:flex-start; gap:7px; font-size:14px; }
  #intelligence .section-kicker > span:last-child:not(:first-child) { max-width:35ch; font-size:14px; text-align:left; }
  #intelligence .swarm-heading { grid-template-columns:1fr; gap:26px; margin:32px 0 38px; }
  #intelligence .swarm-introduction p { font-size:18px; line-height:1.65; }
  #intelligence .swarm-introduction p + p { margin-top:15px; }
  #intelligence .swarm-closing { grid-template-columns:1fr; gap:18px; padding-top:25px; }
  #intelligence .swarm-closing p, #intelligence .swarm-closing a { font-size:17px; }
}

/* The approved pool explorer, scoped to its native homepage mount. */
#agent-example { background:#f8f8f1; color:#102f29; font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:normal; letter-spacing:normal; }
#agent-example * { box-sizing:border-box }
#agent-example button, #agent-example a { -webkit-tap-highlight-color:transparent }
#agent-example a { color:inherit;text-decoration:none }
#agent-example button { color:inherit;font:inherit;cursor:pointer }
#agent-example button:focus-visible, #agent-example a:focus-visible, #agent-example canvas:focus-visible { outline:2px solid #008976;outline-offset:4px }
#agent-example { padding:0 32px 18px;max-width:2000px;margin:auto }
#agent-example .network-top { display:flex;justify-content:space-between;align-items:center;padding:22px 0 0 }
#agent-example .eyebrow { font:10px/1.5 monospace;letter-spacing:.1em;color:#007f70 }
#agent-example .pools-title { font-weight:500;font-size:clamp(24px,2.5vw,38px);line-height:1.15;letter-spacing:-.045em;margin:8px 0 0 }
#agent-example .counts { display:flex;gap:30px;color:#5d7165;font-size:13px }
#agent-example .counts b { color:#193e33;font-size:28px;font-weight:400;letter-spacing:-.05em;margin-right:6px }
#agent-example #network { position:relative;height:clamp(540px,74vh,900px);min-height:540px;isolation:isolate;overflow:hidden }
#agent-example canvas { width:100%;height:100%;display:block;touch-action:auto;cursor:pointer }
#agent-example canvas.dragging { cursor:grabbing }
#agent-example #labels { position:absolute;inset:0;pointer-events:none;overflow:hidden }
#agent-example .pool-label { position:absolute;top:0;left:0;pointer-events:auto;white-space:nowrap;display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--pool-color) 25%,transparent);background:rgba(248,248,241,.96);border-radius:2px;color:var(--pool-color);font:500 12px/1.2 monospace;box-shadow:0 2px 12px #143e3510;transform:translate(-50%,-50%) }
#agent-example .pool-label::before { content:'';width:5px;height:5px;border-radius:50%;background:var(--pool-color) }
#agent-example .pool-label:hover, #agent-example .pool-label[aria-pressed=true] { background:#f8f8f1;border-color:var(--pool-color) }
#agent-example .view-status { position:absolute;top:18px;left:0;display:flex;align-items:center;gap:8px;font:11px/1.5 monospace;color:#526f60;pointer-events:none;background:#f8f8f1b0;padding:4px 8px 4px 0 }
#agent-example .status-dot { width:5px;height:5px;border-radius:50%;background:#008777 }
#agent-example .navigation-hint { position:absolute;bottom:14px;left:0;color:#5d7465;font:11px/1.5 monospace;pointer-events:none;background:#f8f8f1bb;padding:4px 8px }
#agent-example .navigation-hint i { font-style:normal;margin:0 8px;color:#8d9c90 }
#agent-example .zoom-controls { position:absolute;right:0;bottom:14px;display:flex;gap:8px }
#agent-example .zoom-controls button { width:36px;height:36px;border:1px solid #bdcfc0;border-radius:50%;background:#f8f8f1dd;font-size:22px;line-height:1 }
#agent-example .control-bar { border-top:1px solid #ced9cf;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 }
#agent-example .control-bar>div { display:flex;align-items:center;gap:8px }
#agent-example .control-bar button, #agent-example #pool-view { border:1px solid #cad7cc;border-radius:24px;background:transparent;padding:9px 16px;min-height:38px;font-size:12px }
#agent-example .control-bar button[aria-pressed=true] { border-color:#006f62;background:#e8eee5;color:#006f62 }
#agent-example .control-bar button:hover, #agent-example #pool-view:hover { background:#e7eee5 }
#agent-example .pool-strip { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:15px;padding:2px 0 15px }
#agent-example .pool-strip button { border:0;border-bottom:1px solid #ced9cf;background:transparent;text-align:left;padding:10px 0;color:#5a6c61;font-size:13px;display:flex;align-items:center;justify-content:space-between;gap:5px }
#agent-example .pool-strip button span { font:10px monospace;color:var(--pool-color) }
#agent-example .pool-strip button[aria-pressed=true] { border-color:var(--pool-color);color:var(--pool-color) }
#agent-example .pools-caption { display:flex;justify-content:space-between;align-items:center;gap:18px;color:#687b6d;font-size:11px;line-height:1.5 }
#agent-example .pools-caption p { margin:0 }
#agent-example .pools-caption>span { font:9px/1.5 monospace;letter-spacing:.07em;white-space:nowrap }
#agent-example #inspector { position:absolute;right:16px;top:54px;width:280px;max-width:calc(100% - 32px);background:#f8f8f1ec;backdrop-filter:blur(18px);border:1px solid #c6d4c8;box-shadow:0 12px 50px #163e3512;padding:26px 22px 20px;z-index:4 }
#agent-example .close-panel { position:absolute;top:5px;right:8px;border:0;background:transparent;font-size:25px;line-height:1.3;color:#4d6d5e }
#agent-example #detail-title { font-weight:500;font-size:22px;letter-spacing:-.025em;line-height:1.2;margin:12px 0 }
#agent-example #detail-description { font-size:14px;line-height:1.65;color:#536d5c;margin:0 }
#agent-example .detail-meta { display:flex;justify-content:space-between;gap:10px;margin:20px 0;font:10px/1.5 monospace;color:#587568 }
#agent-example #pool-view { border-radius:0;padding-left:0;padding-right:0;border-width:0 0 1px;width:100%;text-align:left;font-size:12px }
#agent-example #fallback { position:absolute;inset:0;padding:60px;align-content:center;text-align:center;background:#f8f8f1;font-size:20px }
#agent-example.expanded { position:fixed;inset:0;background:#f8f8f1;z-index:100;padding:0 24px 12px;max-width:none;display:flex;flex-direction:column }
#agent-example.expanded #network { flex:1;height:auto;min-height:0 }
#agent-example.expanded .network-top { padding-top:12px }
#agent-example.expanded .pools-caption { display:none }
#agent-example.expanded .pool-strip { padding-bottom:0 }
@media(max-width:900px) {
  #agent-example .counts { gap:15px }
  #agent-example .counts b { font-size:23px }
  #agent-example .counts span { font-size:11px }
  #agent-example .pool-strip { gap:10px }
  #agent-example .pool-strip button { font-size:12px }
  #agent-example .control-bar button { padding:9px 13px }
}
@media(max-width:600px) {
  #agent-example { padding:0 16px 18px }
  #agent-example .network-top { align-items:flex-start;padding-top:18px;gap:15px }
  #agent-example .pools-title { font-size:25px }
  #agent-example .eyebrow { font-size:9px }
  #agent-example .counts { flex-direction:column;gap:5px;margin-top:5px }
  #agent-example .counts b { font-size:19px }
  #agent-example .counts span { white-space:nowrap;font-size:9px }
  #agent-example .network-top>div:first-child { max-width:240px }
  #agent-example #network { height:57vh;min-height:390px }
  #agent-example .pool-label { font-size:10px;padding:5px 7px;gap:5px }
  #agent-example .navigation-hint { font-size:9px;max-width:calc(100% - 90px) }
  #agent-example .view-status { font-size:10px;top:12px }
  #agent-example .control-bar { align-items:flex-start;flex-wrap:wrap;gap:10px }
  #agent-example .control-bar button { font-size:11px;padding:8px 12px;min-height:40px }
  #agent-example .control-bar>.playback { flex-wrap:wrap;gap:7px }
  #agent-example .pool-strip { grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 14px }
  #agent-example .pool-strip button { min-height:38px;font-size:12px }
  #agent-example .pools-caption { display:block;margin-top:8px }
  #agent-example .pools-caption span { display:block;margin-top:10px }
  #agent-example #inspector { top:auto;bottom:52px;right:0;padding:18px 17px 15px;width:260px }
  #agent-example #detail-description { font-size:12px }
  #agent-example #detail-title { font-size:20px }
  #agent-example .detail-meta { margin:13px 0 }
  #agent-example .network-top .eyebrow { display:none }
  #agent-example.expanded { padding:0 12px 10px }
  #agent-example.expanded #network { min-height:220px }
  #agent-example.expanded .network-top { gap:8px }
  #agent-example.expanded .control-bar { padding:9px 0 }
  #agent-example.expanded .pool-strip { gap:0 10px }
}
#agent-example #agent-picker { font:11px Arial;color:#315d4c;border:1px solid #cad7cc;background:#f8f8f1;border-radius:2px;padding:9px;max-width:180px }
#agent-example #selected-marker { position:absolute;pointer-events:none;transform:translate(13px,-24px);border-left:1px solid #007c68;padding:4px 8px;background:#f8f8f1e0;color:#006f60;font:11px monospace;z-index:3 }
#agent-example #selected-marker:before { content:'';position:absolute;width:18px;height:18px;border:1px solid #008472;border-radius:50%;left:-24px;top:16px }
#agent-example .control-bar>.movement { flex-wrap:wrap }
#agent-example .pool-strip button { min-height:44px }
@media(max-width:600px) {
  #agent-example .counts { display:none }
  #agent-example #agent-picker { max-width:170px }
  #agent-example .control-bar>.movement { gap:6px }
}
#agent-example [hidden] { display:none!important }

/* Neutralize homepage-only element defaults without changing sibling sections. */
#agent-example {
  position:relative;
  margin:0 calc(-1 * var(--gutter,32px));
  max-width:none;
  border-block:1px solid rgba(47,98,79,.22);
  scroll-margin-top:calc(var(--header,88px) + 8px);
}
#agent-example, #agent-example::before, #agent-example::after,
#agent-example *::before, #agent-example *::after { box-sizing:border-box; }
#agent-example .eyebrow { display:inline; margin:0; padding:0; }
#agent-example .pools-title { font-family:Arial,Helvetica,sans-serif; font-style:normal; width:auto; max-width:none; text-transform:none; }
#agent-example #detail-title { font-family:Arial,Helvetica,sans-serif; font-style:normal; max-width:none; text-transform:none; }
#agent-example .pools-caption p { font:inherit; line-height:inherit; }
#agent-example .status-dot { flex:none; }
#agent-example .network-top > div, #agent-example .control-bar > div { min-width:0; }
#agent-example .close-panel { min-height:32px; min-width:32px; }
#agent-example.expanded { margin:0; border:0; z-index:2000; }

/* Labels remain part of the draggable scene. */
#agent-example .pool-label { touch-action:auto; user-select:none; -webkit-user-select:none; cursor:pointer; }

/* A light, dismissible introduction inside the explorer. */
#agent-example .pools-help { position:absolute;top:10px;right:0;z-index:5;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 13px;border:1px solid #c7d6cc;border-radius:24px;background:#f8f8f1ed;color:#315b4d;font-size:12px; }
#agent-example .pools-help > span[aria-hidden] { display:grid;place-items:center;border:1px solid #7e9d90;border-radius:50%;width:18px;height:18px;font:12px/1 Arial; }
#agent-example .pools-help:hover { background:#e8efe7;border-color:#7eaa98; }
#agent-example .pools-guide { position:absolute;top:58px;left:0;z-index:6;width:340px;max-width:100%;max-height:calc(100% - 72px);overflow:auto;overscroll-behavior:auto;padding:20px 22px 18px;border:1px solid #c6d6cb;border-radius:18px;background:rgba(248,250,244,.96);backdrop-filter:blur(18px);box-shadow:0 14px 48px #193e331a,0 1px 3px #193e330a;animation:pools-guide-enter .35s ease-out both; }
#agent-example .pools-guide:focus { outline:2px solid #008976;outline-offset:-3px; }
#agent-example .pools-guide-top { display:flex;align-items:center;justify-content:space-between;min-height:24px; }
#agent-example .pools-guide-close { display:grid;place-items:center;position:absolute;right:8px;top:6px;width:44px;height:44px;padding:0;border:0;background:transparent;font-size:24px;font-weight:400;color:#527267; }
#agent-example .pools-guide h4 { margin:5px 0 18px;color:#10372d;font:500 24px/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.035em;text-transform:none; }
#agent-example .pools-gestures { display:grid;gap:15px;list-style:none;margin:0;padding:0; }
#agent-example .pools-gestures li { display:flex;align-items:center;gap:13px;margin:0;padding:0; }
#agent-example .pools-gestures svg { flex:none;width:32px;height:32px;fill:none;stroke:#008574;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round; }
#agent-example .pools-gestures strong { display:block;font-size:13px;line-height:1.4;font-weight:600; }
#agent-example .pools-gestures div > span { display:block;margin-top:2px;font-size:12px;line-height:1.5;color:#536d61; }
#agent-example .pools-guide-return { margin:18px 0 0;font:12px/1.5 Arial,Helvetica,sans-serif;color:#536d61; }
#agent-example .pools-guide-return strong { color:#234e3f;font-weight:600; }
#agent-example .pools-guide-scroll { margin:5px 0 0;font:11px/1.5 Arial,Helvetica,sans-serif;color:#536d61; }
#agent-example .pools-guide-done { display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:11px 14px;margin-top:16px;border:1px solid #bad6c8;border-radius:9px;background:#e3eee5;color:#165b49;font-size:13px; }
#agent-example .pools-guide-done:hover { background:#d5e7db; }
#agent-example .pools-guide-done span { font-size:19px; }
@keyframes pools-guide-enter { from { opacity:0;transform:translateY(8px); } to { opacity:1;transform:translateY(0); } }
@media(max-width:600px) {
  #agent-example .pools-help { top:5px;font-size:11px;padding:8px 11px; }
  #agent-example .view-status { max-width:calc(100% - 140px); }
  #agent-example #view-status { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
  #agent-example .pools-guide { top:54px;width:320px;padding:13px 16px;max-height:calc(100% - 64px); }
  #agent-example .pools-guide-top { min-height:18px; }
  #agent-example .pools-guide h4 { font-size:23px;margin:3px 0 12px; }
  #agent-example .pools-gestures { gap:9px; }
  #agent-example .pools-gestures strong, #agent-example .pools-gestures div > span { line-height:1.35; }
  #agent-example .pools-guide-return { margin-top:10px; }
  #agent-example .pools-guide-done { margin-top:10px; }
}
@media(prefers-reduced-motion:reduce) { #agent-example .pools-guide { animation:none; } }
html[data-motion="reduced"] #agent-example .pools-guide { animation:none; }

/* Capture gestures only after an explicit invitation to explore. */
#agent-example[data-interaction="active"] canvas,
#agent-example[data-interaction="active"] .pool-label { touch-action:none;cursor:grab; }
#agent-example[data-interaction="active"] canvas.dragging { cursor:grabbing; }
#agent-example .pools-exit { position:absolute;top:10px;right:0;z-index:7;min-height:44px;padding:8px 16px;display:flex;align-items:center;gap:12px;border:1px solid #94b7a7;border-radius:24px;background:#e3eee5;color:#165b49;font-size:12px; }
#agent-example .pools-exit:hover { background:#d5e7db; }
#agent-example[data-interaction="active"] .pools-help { right:100px; }
#agent-example[data-interaction="idle"] .zoom-controls { visibility:hidden; }
@media(max-width:600px) {
  #agent-example .pools-exit { top:5px; }
  #agent-example[data-interaction="active"] .view-status { display:none; }
  #agent-example[data-interaction="active"] .pools-help { right:95px; }
}
