.df{margin-top:32px;padding:24px}.df-track{grid-template-columns:minmax(0,1fr) 104px minmax(0,1fr) 104px minmax(0,1fr) 104px minmax(0,1fr);align-items:center;display:grid}.df-node{border:1px solid var(--line);border-radius:var(--r-card);background:var(--bg);min-width:0;height:100%;color:var(--ink);font:inherit;text-align:center;cursor:pointer;transition:border-color .2s var(--ease), background-color .2s var(--ease);align-content:start;justify-items:center;gap:6px;padding:18px 10px;display:grid}.df-node:hover{border-color:var(--accent)}.df-node:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.df-node.on{border-color:var(--accent);background:var(--surface);box-shadow:inset 0 0 0 1px var(--accent)}.df-ic{width:40px;height:40px;color:var(--accent);border-radius:var(--r);background:color-mix(in srgb, var(--primary) 12%, transparent);place-items:center;display:grid}.df-label{font:600 17px / 1.2 var(--f-h);letter-spacing:-.01em}.df-role{color:var(--ink3);font-size:13.5px;line-height:1.3}.df-link{justify-items:center;gap:8px;padding-inline:8px;display:grid}.df-line{border-top:2px dashed color-mix(in srgb, var(--accent) 55%, transparent);width:100%;height:0;display:block;position:relative}.df-dot{background:var(--accent);opacity:0;border-radius:50%;width:8px;height:8px;position:absolute;top:-5px;left:0}.df-link-text{color:var(--ink3);text-align:center;justify-content:center;align-items:center;gap:4px;font-size:12px;line-height:1.25;display:inline-flex}.df-link-text svg{flex:none}@media (prefers-reduced-motion:no-preference){.df-dot{animation:df-travel 2.4s var(--ease) infinite}}@keyframes df-travel{0%{opacity:0;left:0}15%{opacity:1}85%{opacity:1}to{opacity:0;left:calc(100% - 8px)}}.df-panel{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;min-height:150px;margin-top:24px;padding-top:22px;display:grid}.df-panel h3{font:600 15px var(--f-b);letter-spacing:.02em;color:var(--ink2);margin:0 0 10px}.df-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.df-list li{color:var(--ink);grid-template-columns:18px 1fr;align-items:start;gap:10px;font-size:15.5px;line-height:1.45;display:grid}.df-list svg{color:var(--a-pos);margin-top:3px}.df-never svg{color:var(--a-neg)}@media (max-width:860px){.df{padding:16px}.df-track{grid-template-columns:minmax(0,1fr);align-items:stretch}.df-node{text-align:left;grid-template-columns:40px 1fr;justify-items:start;gap:2px 12px;padding:12px 14px}.df-ic{grid-row:span 2}.df-link{grid-template-columns:2px auto;justify-content:start;align-items:center;gap:14px;height:44px;padding:0 0 0 33px}.df-line{border-top:0;border-left:2px dashed color-mix(in srgb, var(--accent) 55%, transparent);width:0;height:100%}.df-dot{top:0;left:-5px}.df-panel{grid-template-columns:minmax(0,1fr);gap:18px;min-height:0}}@media (max-width:860px) and (prefers-reduced-motion:no-preference){.df-dot{animation-name:df-travel-v}}@keyframes df-travel-v{0%{opacity:0;top:0}15%{opacity:1}85%{opacity:1}to{opacity:0;top:calc(100% - 8px)}}
