/* Figure adapter for the existing create-chart frame. The host owns titles;
   standalone PNGs restore them through the shared export helper. */
html[data-theme="light"], html[data-theme="light"] body { --page-bg: #F1F4F8; } /* theme-guardrail-allow: required light embed canvas */
html[data-theme="dark"], html[data-theme="dark"] body { --page-bg: #001234; } /* theme-guardrail-allow: required dark embed canvas */
body { background: var(--page-bg); }
.outer { min-height: 0; padding: 0; }
.card { max-width: 100%; border-radius: 0; }
.af-figure .title { display: none; }
.slot-topBar { display: none; }
.slot-footer .source-block { flex: 0 1 auto; }
@media (max-width: 480px) {
  .card { --pad-x: 12px; }
}

.af-table-scroll { overflow-x: auto; margin-top: 12px; max-height: 400px; }

/* Founder network: geography colours connections; circle area shows funding. */
.af-network-card .chart-wrap { height: auto; aspect-ratio: auto; min-height: 0; max-height: none; }
.af-network-card .slot-chartBody { margin-top: 8px; }
.af-network-controls { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 18px; }
.af-network-controls label { display: flex; gap: 8px; align-items: center; color: var(--text-sec); font-size: 14px; }
.af-network-controls select { font: inherit; padding: 8px 10px; border: 1px solid var(--border); border-radius: 6px; background: var(--card-bg); color: var(--text); max-width: 100%; }
.af-network-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 22px; padding-top: 18px; color: var(--text-sec); font-size: 12px; }
.af-network-legend span { display: inline-flex; align-items: center; gap: 7px; }
.af-line { display: inline-block; width: 26px; height: 0; border-top: 2px solid var(--text-muted); }
.af-line.af-dutch { border-color: var(--af-dutch); }
.af-line.af-international { border-color: var(--af-international); }
.af-line.af-serial { border-top-style: dashed; }
.af-line.af-broader { border-top-style: dotted; }
.af-hollow { display: inline-block; width: 8px; height: 8px; border: 1px solid var(--text-muted); border-radius: 50%; }
.af-network-svg { display: block; overflow: visible; }
.af-network-svg text { font-family: inherit; fill: var(--text-sec); pointer-events: none; }
.af-edge { stroke-width: 1.6; opacity: .65; }
.af-edge.af-dutch { stroke: var(--af-dutch); }
.af-edge.af-international { stroke: var(--af-international); }
.af-edge-serial { stroke-dasharray: 6 4; }
.af-edge.af-edge-broader { stroke: var(--text-muted); stroke-dasharray: 1 5; stroke-linecap: round; opacity: .85; }
.af-company-circle { fill: var(--af-dutch); stroke: var(--af-dutch); stroke-width: 1; }
.af-international .af-company-circle { fill: var(--af-international); stroke: var(--af-international); }
.af-company-circle.af-unfunded { fill: var(--card-bg); }
.af-anchor-circle { fill: var(--af-anchor-fill); }
.af-hub .af-node-name { fill: var(--af-mark-ink); font-size: 12px; font-weight: 600; }
.af-wordmark { fill: var(--af-mark-ink); color: var(--af-mark-ink); pointer-events: none; }
.af-network-svg .af-inside { fill: var(--af-mark-ink); }
.af-node-name { font-size: 12px; font-weight: 600; }
.af-node-value { font-size: 11px; }
.af-node-hit { fill: transparent; stroke: none; }
.af-hub, .af-company { cursor: pointer; }
.af-company:hover .af-node-name, .af-company:focus-visible .af-node-name { text-decoration: underline; }
.af-company:focus-visible .af-node-hit { stroke: var(--text-muted); stroke-width: 1px; }
.af-dim { opacity: .18; }
.af-network-detail { min-height: 52px; padding: 14px 0; color: var(--text-sec); font-size: 13px; line-height: 1.5; }
.af-network-detail strong, .af-network-detail span { display: block; }
/* Dealroom profile link on a selected company's name (and on the focused
   anchor); the underline is quiet until hover so the line still reads as a
   heading. */
.af-profile-link { color: inherit; text-decoration: underline; text-decoration-color: var(--text-muted); text-underline-offset: 2px; }
.af-profile-link:hover { text-decoration-color: currentColor; }
.af-connection-note { display: block; color: var(--text-muted); font-size: 12px; margin: 3px 0 8px; }
.af-network-table { color: var(--text-sec); font-size: 13px; margin-bottom: 16px; }
.af-network-table summary { cursor: pointer; }
.af-network-table table { width: 100%; border-collapse: collapse; }
.af-network-table th, .af-network-table td { padding: 8px; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
.af-network-table th:nth-child(2), .af-network-table td:nth-child(2) { white-space: nowrap; text-align: right; }
.af-table-select { color: var(--text-sec); text-decoration: underline; background: none; border: 0; padding: 0; font: inherit; cursor: pointer; text-align: left; }
@media (max-width: 520px) { .af-network-controls { gap: 10px; } .af-network-controls label { width: 100%; justify-content: space-between; } .af-network-legend { gap: 10px 16px; } }
