.tn-ecosystem{--eco-accent:#1465b4;--eco-ink:#142a43;--eco-line:#d8e2ed;color:var(--eco-ink);font:400 16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;max-width:1160px;margin:32px auto;padding:clamp(20px,4vw,42px);background:#fff;border:1px solid var(--eco-line);border-radius:22px;overflow-wrap:anywhere}
.tn-ecosystem[data-theme="red"]{--eco-accent:#b92b25;--eco-ink:#2e2021;--eco-line:#eadcdb}
.tn-ecosystem *{box-sizing:border-box}.tn-ecosystem .eco-kicker{display:block;color:var(--eco-accent);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.tn-ecosystem h1,.tn-ecosystem h2,.tn-ecosystem h3{color:var(--eco-ink);font-family:inherit;line-height:1.2;letter-spacing:-.025em;margin:0 0 16px;max-width:100%}.tn-ecosystem h1{font-size:clamp(30px,4.5vw,52px)}.tn-ecosystem h2{font-size:clamp(25px,3.5vw,40px)}.tn-ecosystem h3{font-size:21px}.tn-ecosystem p{color:var(--eco-ink);line-height:1.65;max-width:78ch;margin:0 0 18px}.tn-ecosystem .eco-lead{font-size:18px}
.tn-ecosystem .eco-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.tn-ecosystem .eco-card{min-width:0;padding:24px;border:1px solid var(--eco-line);border-radius:16px;background:#fff;box-shadow:none}.tn-ecosystem .eco-card p{font-size:15px}.tn-ecosystem .eco-card .eco-role{font-weight:650}.tn-ecosystem a{color:var(--eco-accent);font-weight:650;text-underline-offset:4px}
.tn-ecosystem .eco-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:22px 0}.tn-ecosystem .eco-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 18px;border:1px solid var(--eco-accent);border-radius:12px;background:var(--eco-accent);color:#fff;text-decoration:none;font-size:15px}.tn-ecosystem .eco-button.secondary{color:var(--eco-accent);background:#fff}.tn-ecosystem a:focus-visible{outline:3px solid var(--eco-accent);outline-offset:4px}
.tn-ecosystem .eco-note{font-size:14px;border-left:3px solid var(--eco-accent);padding:12px 16px;background:#f5f7fa;margin:24px 0}.tn-ecosystem .eco-section{margin-top:44px;padding-top:30px;border-top:1px solid var(--eco-line)}.tn-ecosystem .eco-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--eco-line);border-radius:14px;margin:20px 0}.tn-ecosystem table{width:100%;min-width:640px;border-collapse:collapse;font-size:14px;text-align:left}.tn-ecosystem caption{text-align:left;font-weight:700;padding:16px;color:var(--eco-ink)}.tn-ecosystem th,.tn-ecosystem td{padding:14px 16px;border-bottom:1px solid var(--eco-line);vertical-align:top;line-height:1.5}.tn-ecosystem thead{background:#f5f7fa}.tn-ecosystem tbody th{font-weight:600}.tn-ecosystem tr:last-child>*{border-bottom:0}
.eco-package-list{line-height:1.65}.eco-capability-link{display:block;margin:18px 0}.tn-ecosystem .eco-section[id]{scroll-margin-top:110px}
@media(max-width:680px){.tn-ecosystem{margin:20px 0;padding:22px 18px;border-radius:16px}.tn-ecosystem .eco-grid{grid-template-columns:1fr;gap:14px}.tn-ecosystem .eco-card{padding:20px}.tn-ecosystem .eco-actions{align-items:stretch}.tn-ecosystem .eco-button{width:100%}.tn-ecosystem h1{font-size:32px}.tn-ecosystem h2{font-size:28px}.tn-ecosystem .eco-section{margin-top:30px;padding-top:24px}}
