main.svelte-100fdt7{min-height:100vh;display:flex;flex-direction:column;padding:1rem 1rem 5rem;box-sizing:border-box}footer.svelte-100fdt7{position:fixed;bottom:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid #eee;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;z-index:100}footer.svelte-100fdt7 nav:where(.svelte-100fdt7) a:where(.svelte-100fdt7){color:#4a90d9;text-decoration:none}footer.svelte-100fdt7 nav:where(.svelte-100fdt7) a:where(.svelte-100fdt7):hover{text-decoration:underline}.title-group.svelte-100fdt7{text-align:right}.title-group.svelte-100fdt7 h1:where(.svelte-100fdt7){font-size:1.25rem;margin:0}.layout.svelte-100fdt7{display:grid;grid-template-columns:1fr;gap:2rem;flex:1}@media(min-aspect-ratio:1/1)and (min-width:768px){.layout.svelte-100fdt7{grid-template-columns:1fr 1fr}.visualization.svelte-100fdt7{position:sticky;top:1rem;align-self:start}}@media(max-aspect-ratio:1/1),(max-width:767px){.visualization.svelte-100fdt7{order:-1}}section.svelte-100fdt7{margin-bottom:1.5rem}section.svelte-100fdt7 h2:where(.svelte-100fdt7){font-size:1.25rem;margin-bottom:.75rem;border-bottom:1px solid #eee;padding-bottom:.5rem}section.svelte-100fdt7 h3:where(.svelte-100fdt7){font-size:1.05rem;margin:1rem 0 .5rem}.controls.svelte-100fdt7{background:#f9f9f9;padding:1rem;border-radius:8px}.hint.svelte-100fdt7{font-size:.8rem;color:#888;margin:0 0 1rem}.input-group.svelte-100fdt7{margin-bottom:.75rem}.input-group.svelte-100fdt7 label:where(.svelte-100fdt7){display:block;font-size:.875rem;color:#555;margin-bottom:.25rem}.input-group.svelte-100fdt7 input[type=number]:where(.svelte-100fdt7),.input-group.svelte-100fdt7 textarea:where(.svelte-100fdt7){width:100%;padding:.4rem .5rem;border:1px solid #ddd;border-radius:4px;font-family:monospace;font-size:.85rem;box-sizing:border-box}.input-group.svelte-100fdt7 textarea:where(.svelte-100fdt7){resize:vertical}.reset-btn.svelte-100fdt7{background:#eee;border:1px solid #ddd;padding:.4rem .8rem;border-radius:4px;cursor:pointer;font-size:.8rem;margin-bottom:1rem}.reset-btn.svelte-100fdt7:hover{background:#ddd}.warning.svelte-100fdt7{margin-top:.75rem;padding:.5rem .75rem;background:#fff3e0;border-left:3px solid #ff9800;border-radius:4px;font-size:.8rem;color:#e65100}.warning.svelte-100fdt7 p:where(.svelte-100fdt7){margin:.2rem 0}.result.svelte-100fdt7{margin-top:1rem;padding:.75rem 1rem;background:#fff;border-radius:4px;border:1px solid #eee;border-left:4px solid #ff9800}.result.svelte-100fdt7 h3:where(.svelte-100fdt7){font-size:1rem;margin:0 0 .5rem;color:#e65100}.path-display.svelte-100fdt7{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-bottom:.5rem}.path-label.svelte-100fdt7{font-size:.8rem;color:#666}.path-node.svelte-100fdt7{color:#fff;padding:.15rem .4rem;border-radius:3px;font-family:monospace;font-size:.8rem;font-weight:600}.path-arrow.svelte-100fdt7{color:#999;font-size:.75rem}.endpoints.svelte-100fdt7{font-size:.8rem;color:#666}.description.svelte-100fdt7 p:where(.svelte-100fdt7){margin:.5rem 0;line-height:1.6}.description.svelte-100fdt7 ul:where(.svelte-100fdt7){margin:.5rem 0;padding-left:1.5rem}.description.svelte-100fdt7 li:where(.svelte-100fdt7){margin:.25rem 0;line-height:1.5;display:flex;align-items:center;gap:.4rem}.legend-dot.svelte-100fdt7{display:inline-block;width:12px;height:12px;border-radius:50%;flex-shrink:0}.visualization.svelte-100fdt7{overflow:hidden;display:flex;flex-direction:column;min-height:300px}.canvas-wrapper.svelte-100fdt7{width:100%;flex:1;min-height:300px;touch-action:none}svg{-webkit-user-select:none;user-select:none}.edge-normal.svelte-100fdt7{stroke:#ccc;stroke-width:2}.edge-diameter.svelte-100fdt7{stroke:#ff9800;stroke-width:3}.tree-node.svelte-100fdt7{stroke:#fff;stroke-width:2}.node-hitarea.svelte-100fdt7{fill:transparent;cursor:grab}.node-label.svelte-100fdt7{font-size:14px;font-weight:700;fill:#fff;text-anchor:middle;dominant-baseline:central;pointer-events:none}.draggable.svelte-100fdt7{cursor:grab}.draggable.svelte-100fdt7:active{cursor:grabbing}
