:root{--page:#f3f6fb;--surface:#f8fafc;--panel:#fffffff5;--line:#94a3b847;--text-strong:#0f172a;--text-soft:#475569;--accent:#0f766e;--accent-strong:#0f766e;--font-body:"IBM Plex Sans", "Segoe UI", sans-serif;--font-display:"IBM Plex Sans", "Segoe UI", sans-serif;color:var(--text-strong);background:var(--page);font:16px/1.5 var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 0 0,#0f766e14,#0000 22rem),radial-gradient(circle at 100% 0,#f9731614,#0000 20rem),linear-gradient(#f8fafc 0%,#eef2f7 100%);margin:0}button,input,select{font:inherit}button{background:0 0;border:none}code{background:#0f172a14;border-radius:4px;padding:.1rem .3rem}.workspace-shell{flex-direction:column;gap:1rem;min-height:100vh;padding:1.25rem;display:flex}.workspace-header{grid-template-columns:minmax(0,1.8fr) minmax(18rem,.9fr);align-items:start;gap:1rem;display:grid}.workspace-title{flex-direction:column;gap:.65rem;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0;font-size:.73rem}.workspace-title h1{color:var(--text-strong);margin:0;font-size:2rem;line-height:1.05}.workspace-intro{max-width:64ch;color:var(--text-soft);margin:0}.workspace-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;display:grid}.workspace-stats div,.status-banner,.panel,.selection-card,.search-result,.diagnostics-list article,.edge-list article,.distribution-row,.graph-canvas-shell,.empty-state{border:1px solid var(--line);background:var(--panel);border-radius:8px}.workspace-stats div{padding:.9rem 1rem}.workspace-stats dt,.field span,.tag-group span,.edge-list span{text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);font-size:.74rem}.workspace-stats dd{color:var(--text-strong);margin:.25rem 0 0;font-size:1.2rem;font-weight:600}.status-banner{background:#155e750f;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.status-banner strong{margin-bottom:.15rem;display:block}.status-banner span{color:var(--text-soft);font-size:.92rem}.workspace-grid{grid-template-columns:minmax(16rem,19rem) minmax(0,1fr) minmax(18rem,20rem);align-items:start;gap:1rem;display:grid}.panel{padding:1rem}.left-rail,.right-rail{flex-direction:column;gap:1rem;display:flex}.center-stage{flex-direction:column;gap:1rem;min-height:70vh;display:flex}.panel-section{flex-direction:column;gap:.75rem;display:flex}.panel-section h2,.panel-header h2{color:var(--text-strong);margin:0;font-size:1rem;line-height:1.1}.panel-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.panel-header p,.muted,.selection-card p,.graph-toolbar-meta,.diagnostics-list p,.search-result span{color:var(--text-soft);margin:0}.graph-toolbar-meta{flex-wrap:wrap;gap:.75rem;font-size:.9rem;display:flex}.field{flex-direction:column;gap:.45rem;display:flex}.field input,.field select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:2.75rem;color:var(--text-strong);border-radius:8px;padding:.72rem .85rem}.search-results{flex-direction:column;gap:.5rem;min-height:3rem;display:flex}.search-result{text-align:left;cursor:pointer;background:var(--surface);flex-direction:column;gap:.1rem;padding:.75rem .85rem;display:flex}.search-result.active{border-color:#0c7a6e73;box-shadow:0 0 0 1px #0c7a6e26}.search-result strong{color:var(--text-strong)}.edge-toggles{flex-direction:column;gap:.65rem;display:flex}.toggle{color:var(--text-soft);grid-template-columns:auto 1fr;align-items:start;gap:.55rem;font-size:.93rem;display:grid}.distribution{flex-direction:column;gap:.5rem;display:flex}.distribution-row,.facts div{background:var(--surface);justify-content:space-between;gap:.75rem;padding:.7rem .8rem;display:flex}.graph-canvas-shell{background:linear-gradient(180deg, #fffffffa, #f7fafcfa), var(--surface);outline:none;min-height:62vh;position:relative;overflow:hidden}.graph-canvas-shell:focus-visible{box-shadow:0 0 0 2px #0f766e47}.graph-canvas{cursor:grab;width:100%;height:100%;min-height:62vh}.graph-canvas:active{cursor:grabbing}.graph-canvas-controls{z-index:1;gap:.45rem;display:flex;position:absolute;top:.9rem;right:.9rem}.graph-control-button{min-width:2.2rem;min-height:2.2rem;color:var(--text-strong);cursor:pointer;background:#fffffff5;border:1px solid #0f172a26;border-radius:8px;padding:0 .75rem;box-shadow:0 6px 18px #0f172a14}.graph-control-button:hover,.graph-control-button:focus-visible{background:#fff;border-color:#0f766e59}.graph-control-button:focus-visible{outline:none;box-shadow:0 0 0 2px #0f766e33}.graph-canvas-overlay{pointer-events:none;flex-direction:column;align-items:end;gap:.5rem;display:flex;position:absolute;bottom:.9rem;right:.9rem}.graph-canvas-stats,.graph-canvas-hints,.graph-legend{flex-wrap:wrap;justify-content:end;gap:.45rem;display:flex}.graph-canvas-stats span,.graph-canvas-hints span,.graph-legend-item,.node-type-pill,.chips em{border-radius:999px;justify-content:center;align-items:center;min-height:1.8rem;padding:0 .6rem;font-size:.74rem;display:inline-flex}.graph-canvas-stats span,.graph-canvas-hints span,.graph-legend-item{color:#f8fafc;background:#0f172ad1}.selection-card{padding:.95rem}.selection-card h3{margin:.55rem 0 .35rem;font-size:1rem}.node-type-pill{color:#fff;width:fit-content}.facts{flex-direction:column;gap:.5rem;margin:0;display:flex}.facts dt{color:var(--text-soft)}.facts dd{color:var(--text-strong);text-align:right;margin:0}.tag-group,.edge-list,.diagnostics-list{flex-direction:column;gap:.6rem;display:flex}.chips{flex-wrap:wrap;gap:.45rem;display:flex}.chips em{background:var(--surface);color:var(--text-strong);font-style:normal}.edge-list article,.diagnostics-list article{background:var(--surface);padding:.75rem .8rem}.edge-list article strong,.diagnostics-list article strong{color:var(--text-strong)}.empty-state{text-align:center;background:var(--surface);place-content:center;gap:.4rem;min-height:12rem;padding:1rem;display:grid}.empty-state.compact{min-height:8rem}.empty-state h3{color:var(--text-strong);margin:0}.loading-shell{text-align:center;place-content:center;gap:.6rem;min-height:100vh;padding:2rem;display:grid}.loading-shell h1,.loading-shell p{margin:0}@media (width<=1280px){.workspace-grid,.workspace-header{grid-template-columns:1fr}.center-stage{order:1}.left-rail{order:2}.right-rail{order:3}}
