.tm-zones{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0}
.tm-zone{flex:1 1 160px;border:2px dashed #c0392b55;border-radius:10px;padding:8px 10px;background:#fff}
.tm-draft .tm-zone{border-color:var(--border,#ddd)}
.tm-zone-h{margin:0 0 6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted,#666)}
.tm-els{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.tm-el{border:1px solid var(--border,#ddd);padding:6px 8px;display:grid;gap:2px;font-size:.84rem;background:var(--surface,#fff)}
.tm-el small{font-size:.68rem;color:var(--muted,#666);text-transform:uppercase;letter-spacing:.05em}
.tm-el span{color:var(--muted,#666);font-size:.78rem}
.tm-external{border-radius:2px;border-width:2px}
.tm-process{border-radius:22px}
.tm-data{border-left:0;border-right:0;border-top:3px double var(--border-strong,#999);border-bottom:3px double var(--border-strong,#999)}
.tm-row{display:flex;flex-wrap:wrap;gap:4px 14px}
.tm-row legend small{color:var(--muted,#666);font-weight:400}
[data-theme=dark] .tm-zone{background:transparent}
