.ecosystem[data-astro-cid-bc2tztt4]{margin:0}.eco-head[data-astro-cid-bc2tztt4]{gap:8px;margin-bottom:20px;display:grid}.eco-head[data-astro-cid-bc2tztt4] strong[data-astro-cid-bc2tztt4]{color:var(--color-ink);font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.25rem,2vw,1.6rem);font-weight:500}.eco-head[data-astro-cid-bc2tztt4] span[data-astro-cid-bc2tztt4]{max-width:62ch;color:var(--color-sub);font-size:.95rem;line-height:1.55}.eco-canvas[data-astro-cid-bc2tztt4]{border:1px solid var(--color-line);background:#eef0e9;border-radius:18px;padding:clamp(16px,3vw,32px);display:block}.eco-loop[data-astro-cid-bc2tztt4]{height:72px;position:relative}.eco-loop[data-astro-cid-bc2tztt4] svg[data-astro-cid-bc2tztt4],.eco-spokes[data-astro-cid-bc2tztt4] svg[data-astro-cid-bc2tztt4]{width:100%;height:100%;overflow:visible}.eco-loop[data-astro-cid-bc2tztt4] path[data-astro-cid-bc2tztt4]{stroke:#64856b;stroke-width:1.5px;stroke-dasharray:6 6;vector-effect:non-scaling-stroke}.loop-label[data-astro-cid-bc2tztt4]{color:#28583d;white-space:nowrap;background:#eef0e9;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:600;position:absolute;top:-2px;left:66.6%;transform:translate(-50%)}.eco-row[data-astro-cid-bc2tztt4]{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch;margin:0;padding:0;list-style:none;display:grid}.eco-station[data-astro-cid-bc2tztt4]{background:var(--color-bg);border:1px solid #cdd5c4;border-radius:14px;flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.eco-station[data-astro-cid-bc2tztt4].is-current{border-color:#28583d;box-shadow:0 0 0 3px #d2e5ba}[data-astro-cid-bc2tztt4][data-current] .eco-station[data-astro-cid-bc2tztt4]:not(.is-current){background:var(--color-bg-alt);border-color:#dde3d6}.eco-moment[data-astro-cid-bc2tztt4]{color:var(--color-sub);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;margin:0;font-size:10px;display:flex}.eco-index[data-astro-cid-bc2tztt4]{color:#28583d;letter-spacing:0;border:1px solid #759174;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.eco-name[data-astro-cid-bc2tztt4]{color:var(--color-ink);font-family:var(--font-display);letter-spacing:-.02em;font-size:1.2rem;font-weight:600;text-decoration:none}.eco-name[data-astro-cid-bc2tztt4]:hover,.eco-name[data-astro-cid-bc2tztt4]:focus-visible{text-underline-offset:4px;text-decoration:underline}.eco-sample[data-astro-cid-bc2tztt4]{border:1px solid var(--color-line);background:#fbfcf8;border-left:3px solid #57765e;border-radius:8px;gap:4px;margin-top:auto;padding:12px;font-size:.8125rem;line-height:1.4;display:grid}.eco-kicker[data-astro-cid-bc2tztt4]{color:var(--color-sub);font-size:.72rem}.eco-sample[data-astro-cid-bc2tztt4] strong[data-astro-cid-bc2tztt4]{color:var(--color-ink);font-variant-numeric:tabular-nums;font-weight:600}.eco-line[data-astro-cid-bc2tztt4]{color:var(--color-ink-2)}.eco-tag[data-astro-cid-bc2tztt4]{color:#28583d;background:#e3ead8;border:1px solid #a1b296;border-radius:999px;justify-self:start;margin-top:6px;padding:2px 8px;font-size:.72rem;font-weight:600}.eco-lobby[data-astro-cid-bc2tztt4] .eco-tag[data-astro-cid-bc2tztt4]{border-style:dashed}.eco-link[data-astro-cid-bc2tztt4]{flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.eco-track[data-astro-cid-bc2tztt4]{background:#acbda5;width:100%;height:2px;position:relative}.eco-track[data-astro-cid-bc2tztt4]:after{content:"";border-top:2px solid #64856b;border-right:2px solid #64856b;width:8px;height:8px;position:absolute;top:50%;right:-1px;transform:translateY(-50%)rotate(45deg)}.eco-runner[data-astro-cid-bc2tztt4]{visibility:hidden;background:#28583d;border-radius:50%;width:9px;height:9px;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.eco-link-label[data-astro-cid-bc2tztt4]{max-width:64px;color:var(--color-sub);text-align:center;font-size:.68rem;line-height:1.3}.eco-spokes[data-astro-cid-bc2tztt4]{height:64px}.eco-spokes[data-astro-cid-bc2tztt4] path[data-astro-cid-bc2tztt4]{stroke:#acbda5;stroke-width:1.5px;vector-effect:non-scaling-stroke}.eco-dot[data-astro-cid-bc2tztt4]{visibility:hidden;fill:#28583d;transform-box:view-box}.eco-hub[data-astro-cid-bc2tztt4]{background:#d2e5ba;border:1px solid #28583d;border-radius:14px;align-items:center;gap:14px;width:min(440px,100%);margin:0 auto;padding:14px 18px;display:flex}.eco-hub-mark[data-astro-cid-bc2tztt4]{background:#eef0e9;border:1px solid #28583d;flex:none;width:14px;height:14px;transform:rotate(45deg)}.eco-hub[data-astro-cid-bc2tztt4] strong[data-astro-cid-bc2tztt4]{color:var(--color-ink);font-size:.95rem;display:block}.eco-hub[data-astro-cid-bc2tztt4] span[data-astro-cid-bc2tztt4]{color:var(--color-ink-2);font-size:.8125rem;line-height:1.45}.eco-loop-mobile[data-astro-cid-bc2tztt4]{display:none}.eco-note[data-astro-cid-bc2tztt4]{color:var(--color-sub);margin:12px 0 0;font-size:.75rem}@media (prefers-reduced-motion:no-preference){[data-astro-cid-bc2tztt4][data-motion=running] .eco-dot[data-astro-cid-bc2tztt4],[data-astro-cid-bc2tztt4][data-motion=paused] .eco-dot[data-astro-cid-bc2tztt4],[data-astro-cid-bc2tztt4][data-motion=running] .eco-runner[data-astro-cid-bc2tztt4],[data-astro-cid-bc2tztt4][data-motion=paused] .eco-runner[data-astro-cid-bc2tztt4]{visibility:visible}}@media (width<=860px){.eco-loop[data-astro-cid-bc2tztt4],.eco-spokes[data-astro-cid-bc2tztt4]{display:none}.eco-row[data-astro-cid-bc2tztt4]{grid-template-columns:minmax(0,1fr)}.eco-link[data-astro-cid-bc2tztt4]{flex-direction:row;justify-content:flex-start;gap:12px;padding:10px 0 10px 24px}.eco-track[data-astro-cid-bc2tztt4]{width:2px;height:28px}.eco-track[data-astro-cid-bc2tztt4]:after{top:auto;bottom:-1px;right:50%;transform:translate(50%)rotate(135deg)}.eco-runner[data-astro-cid-bc2tztt4]{display:none}.eco-link-label[data-astro-cid-bc2tztt4]{text-align:left;max-width:none;font-size:.75rem}.eco-hub[data-astro-cid-bc2tztt4]{margin-top:20px}.eco-loop-mobile[data-astro-cid-bc2tztt4]{color:#28583d;margin:14px 0 0;font-size:.8125rem;font-weight:600;display:block}}
