.td-entity .tdemo-head{display:flex;align-items:center;gap:9px;padding:13px 16px;border-bottom:1px solid var(--border)}.td-entity .td-glyph{width:17px;height:17px;flex:none;color:var(--text-3);display:inline-flex}.td-entity .td-glyph svg{width:100%;height:100%}.td-entity .td-name{font-size:13px;font-weight:600;color:var(--text-1)}.td-entity .td-tag{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:11.5px;color:var(--text-3)}.td-entity .td-dot{width:6px;height:6px;border-radius:50%;background:var(--success);flex:none}.td-entity .td-dot.bad{background:var(--danger)}.td-entity[data-anim=on] .td-dot{animation:tdemoPulse 1.8s var(--ease,ease) infinite}.td-entity .tdemo-body{padding:14px 16px 8px;display:flex;flex-direction:column;gap:10px}.td-entity .td-map{position:relative;height:152px}.td-entity .td-edges{position:absolute;inset:12px 18px;width:calc(100% - 36px);height:calc(100% - 24px);overflow:visible}.td-entity .td-edge{stroke:var(--text-4);stroke-width:1.2;transition:stroke .6s var(--ease,ease),opacity .6s var(--ease,ease)}.td-entity .td-f-query .td-edge{stroke-dasharray:4 4;opacity:.7}.td-entity[data-anim=on] .td-f-query[data-active=true] .td-edge{animation:tdEntityDash 1.4s linear infinite}.td-entity .td-f-yes .td-edge{stroke:var(--success);opacity:.75}.td-entity .td-f-no .td-edge{stroke-dasharray:3 5;opacity:.45}@keyframes tdEntityDash{0%{stroke-dashoffset:16}to{stroke-dashoffset:0}}.td-entity .td-node{position:absolute;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 11px;border:1px solid var(--border);border-radius:10px;background:var(--bg-1);max-width:46%;text-align:center;transition:border-color .6s var(--ease,ease),background .6s var(--ease,ease)}.td-entity .td-node.centre{top:0;left:50%;transform:translateX(-50%)}.td-entity .td-node.src-l{bottom:0;left:0}.td-entity .td-node.src-r{bottom:0;right:0}.td-entity .td-node-name{font-size:12px;font-weight:600;color:var(--text-1);line-height:1.3}.td-entity .td-node-sub{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-4);transition:color .6s var(--ease,ease)}.td-entity .td-f-yes .td-node.src{border-color:color-mix(in srgb,var(--success) 40%,var(--border));background:color-mix(in srgb,var(--success) 6%,var(--bg-1))}.td-entity .td-f-yes .td-node.src .td-node-sub{color:var(--success)}.td-entity .td-f-yes .td-node.centre{border-color:var(--accent-border);background:var(--accent-bg)}.td-entity .td-f-no .td-node{border-style:dashed;border-color:var(--border-2);background:transparent}.td-entity .td-f-no .td-node-name{color:var(--text-3)}.td-entity .td-pill-row{display:flex}.td-entity .tdemo-pill{display:inline-flex;align-items:center;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 10px;border:1px solid var(--border);color:var(--text-2)}.td-entity .tdemo-pill.ok{color:var(--success);border-color:color-mix(in srgb,var(--success) 45%,transparent);background:color-mix(in srgb,var(--success) 9%,transparent)}.td-entity .tdemo-pill.bad{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 8%,transparent)}.td-entity .td-line{margin:0}.td-entity .td-foot,.td-entity .td-line{font-size:12.5px;color:var(--text-3);line-height:1.5}.td-entity .td-foot{margin-top:6px;padding:12px 16px;border-top:1px solid var(--border)}.td-entity .td-stages{display:flex;flex-wrap:wrap;gap:6px 8px;padding:12px 16px 13px;border-top:1px solid var(--border)}.td-entity .td-stage{font-family:var(--font-jetbrains-mono),ui-monospace,monospace;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-4);background:var(--bg-1);border:1px solid var(--border);border-radius:6px;padding:3px 8px;transition:color .4s var(--ease,ease),border-color .4s var(--ease,ease),background .4s var(--ease,ease)}.td-entity .td-stage[data-active=true]{color:var(--accent-hover);border-color:var(--accent-border);background:var(--accent-bg)}@media (prefers-reduced-motion:reduce){.td-entity .td-edge,.td-entity .td-node,.td-entity .td-node-sub,.td-entity .td-stage{transition:none!important}.td-entity .td-dot,.td-entity .td-edge{animation:none!important}}