.page-header.svelte-1bda92p{margin-bottom:2rem}.subtitle.svelte-1bda92p{color:var(--color-text-muted)}.controls.svelte-1bda92p{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem;background:var(--color-bg-alt);border:1px solid var(--color-border-light)}.view-tabs.svelte-1bda92p{display:flex;gap:.5rem}.view-tabs.svelte-1bda92p button:where(.svelte-1bda92p){font-family:var(--font-mono);font-size:.9rem;padding:.5rem 1rem;border:2px solid var(--color-border-dark);background:var(--color-bg-secondary);cursor:pointer;display:flex;align-items:center;gap:.5rem}.view-tabs.svelte-1bda92p button:where(.svelte-1bda92p):hover{background:var(--color-hover-bg)}.view-tabs.svelte-1bda92p button.active:where(.svelte-1bda92p){background:var(--color-border-dark);color:var(--color-bg-secondary)}.options.svelte-1bda92p{display:flex;gap:2rem;align-items:center}.options.svelte-1bda92p label:where(.svelte-1bda92p){display:flex;align-items:center;gap:.5rem;font-size:.9rem}.options.svelte-1bda92p input[type=range]:where(.svelte-1bda92p){width:100px}.options.svelte-1bda92p span:where(.svelte-1bda92p){font-family:var(--font-mono);width:4rem}.checkbox-label.svelte-1bda92p{cursor:pointer}.checkbox-label.svelte-1bda92p input[type=checkbox]:where(.svelte-1bda92p){width:18px;height:18px;cursor:pointer}.chart-container.svelte-1bda92p{width:100%;min-height:1600px;margin-bottom:2rem;background:var(--color-bg-secondary);border:1px solid var(--color-border-light);overflow:hidden}.expand-btn.svelte-1bda92p{font-family:var(--font-mono);font-size:1.1rem;padding:.5rem .75rem;border:2px solid var(--color-border-dark);background:var(--color-bg-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center}.expand-btn.svelte-1bda92p:hover{background:var(--color-hover-bg)}.popup-overlay.svelte-1bda92p{position:fixed;inset:0;background:#000c;z-index:1000;display:flex;align-items:center;justify-content:center;padding:96px}.popup-modal.svelte-1bda92p{background:var(--color-bg-secondary);border:2px solid var(--color-border-dark);box-shadow:4px 4px 0 var(--color-shadow);width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden}.popup-header.svelte-1bda92p{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border-light);background:var(--color-bg-alt)}.popup-header.svelte-1bda92p h2:where(.svelte-1bda92p){margin:0;font-size:1.25rem}.close-btn.svelte-1bda92p{font-size:1.5rem;padding:.25rem .5rem;border:2px solid var(--color-border-dark);background:var(--color-bg-secondary);cursor:pointer;line-height:1}.close-btn.svelte-1bda92p:hover{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.popup-content.svelte-1bda92p{flex:1;overflow:auto;background:var(--color-bg-secondary)}.card.svelte-1bda92p{background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-left:2px solid var(--color-border-dark);padding:1rem 1.25rem;margin-bottom:1.5rem;box-shadow:2px 2px 0 var(--color-shadow)}.card.svelte-1bda92p h2:where(.svelte-1bda92p){display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.info-list.svelte-1bda92p{padding-left:1.25rem}.info-list.svelte-1bda92p li:where(.svelte-1bda92p){padding:.25rem 0}.legend.svelte-1bda92p{display:flex;gap:1.5rem;flex-wrap:wrap}.legend-item.svelte-1bda92p{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.dot.svelte-1bda92p{width:16px;height:16px;border-radius:50%;border:1px solid #111}.dot.root.svelte-1bda92p{background:#111}.dot.category.svelte-1bda92p{background:#6c757d}.dot.principal.svelte-1bda92p{background:#ef5350}.dot.entity.svelte-1bda92p{background:#5c6bc0}.dot.accomplice.svelte-1bda92p{background:#ab47bc}.dot.role.svelte-1bda92p{background:#78909c}.error.svelte-1bda92p{border-left-color:var(--color-danger);color:var(--color-danger)}@media (max-width: 768px){.controls.svelte-1bda92p{flex-direction:column;align-items:flex-start}.view-tabs.svelte-1bda92p{flex-wrap:wrap}.options.svelte-1bda92p{flex-direction:column;gap:1rem;align-items:flex-start}}
