:root{--bg:#fff;--bg-soft:#f4f4f5;--panel:#fff;--ink:#111113;--ink-2:#3f4147;--ink-3:#63666d;--line:#e4e4e7;--line-strong:#a1a1aa;--accent:#4f46e5;--accent-soft:#eef0fe;--accent-strong:#3730a3;--amber:#b86e00;--amber-soft:#fbf1e0;--band:#fafafa;--band-alt:#f4f4f5;--sweep:#4f46e5;--sweep-strength:.14;--radius:3px;--mono:"IBM Plex Mono", ui-monospace, monospace;--sans:"IBM Plex Sans", system-ui, sans-serif;--display:"Space Grotesk", var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font:14px/1.45 var(--sans);-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer}.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.app{grid-template:"bar bar""stage panel"1fr/1fr 360px;height:100vh;display:grid}.bar{border-bottom:1px solid var(--line);background:var(--bg);flex-wrap:wrap;grid-area:bar;justify-content:space-between;align-items:center;gap:16px;padding:10px 20px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand h1{font:600 17px/1 var(--display);letter-spacing:-.01em;margin:0}.mark{border:1.5px solid var(--accent);border-radius:50%;width:18px;height:18px;position:relative}.mark:before{content:"";border:1px solid var(--accent);opacity:.6;border-radius:50%;position:absolute;inset:4px}.mark:after{content:"";background:var(--accent);width:1.5px;height:7px;position:absolute;top:1px;left:50%;transform:translate(-50%)}.badge{font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--amber);background:var(--amber-soft);border:1px solid color-mix(in srgb, var(--amber) 35%, transparent);border-radius:var(--radius);padding:4px 6px}.controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.search input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-soft);width:220px;height:30px;color:var(--ink);font:13px var(--sans);padding:0 10px}.search input:focus{outline:2px solid color-mix(in srgb, var(--accent) 40%, transparent);outline-offset:0;border-color:var(--accent)}.filters{gap:4px;display:flex}.chip-btn,.toggle,.icon-btn{border:1px solid var(--line-strong);background:var(--bg);border-radius:var(--radius);height:30px;font:500 12px var(--sans);color:var(--ink-2);align-items:center;gap:6px;padding:0 10px;display:inline-flex}.chip-btn span{font:11px var(--mono);color:var(--ink-3)}.chip-btn[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 30%, var(--line-strong))}.chip-btn[aria-pressed=false]{color:var(--ink-3);text-decoration:line-through}.toggle[aria-pressed=true]{background:var(--amber-soft);color:var(--amber);border-color:color-mix(in srgb, var(--amber) 45%, transparent)}.icon-btn{font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.06em}.icon-btn[aria-pressed=false]{color:var(--ink-3)}:is(.chip-btn,.toggle,.icon-btn):hover{border-color:var(--accent)}:is(button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.stage{background:radial-gradient(circle at 50% 50%, var(--bg) 0, var(--bg-soft) 75%);grid-area:stage;min-height:0;position:relative;overflow:hidden}.scope-host{position:absolute;inset:0}.scope{cursor:grab;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.scope:active{cursor:grabbing}.band{fill:var(--band)}.band.alt{fill:var(--band-alt)}.ring{fill:none;stroke:var(--line-strong);stroke-width:1px;vector-effect:non-scaling-stroke}.ring.outer{stroke:var(--ink-3);stroke-width:1.25px}.divider{stroke:var(--line-strong);stroke-dasharray:2 4;vector-effect:non-scaling-stroke}.ring-label{font:500 8.5px var(--mono);letter-spacing:.14em;fill:var(--ink-3);text-anchor:middle;dominant-baseline:middle}.tick{stroke:var(--line-strong);vector-effect:non-scaling-stroke}.tick.long{stroke:var(--ink-3)}.bearing{font:9.5px var(--mono);fill:var(--ink-3);text-anchor:middle;dominant-baseline:middle}.sector-label{font:600 10.5px var(--mono);letter-spacing:.12em;fill:var(--ink);text-anchor:middle;dominant-baseline:middle;transition:opacity .2s}.sector-label.dim{opacity:.25}.sweep path{fill:var(--sweep)}.sweep{opacity:var(--sweep-strength)}.sweep-line{stroke:var(--sweep);stroke-width:1.25px;opacity:.55;vector-effect:non-scaling-stroke}.edge{fill:none;stroke:var(--accent);stroke-width:1px;opacity:.18;stroke-dasharray:3 3;vector-effect:non-scaling-stroke;transition:opacity .2s}.edge.knows{stroke:var(--ink-3)}.has-selection .edge{opacity:.05}.has-selection .edge.on{opacity:.9;stroke-dasharray:none;stroke-width:1.5px}.spoke line{stroke:var(--ink-3);stroke-width:1px;stroke-dasharray:1 3;vector-effect:non-scaling-stroke}.spoke text{font:500 9px var(--mono);letter-spacing:.06em;fill:var(--ink-2);paint-order:stroke;stroke:var(--bg);stroke-width:3px}.me circle{fill:var(--ink)}.me text{font:700 10px var(--display);fill:var(--bg);text-anchor:middle;letter-spacing:.04em}.blip{cursor:pointer;outline:none;transition:opacity .2s}.blip .hit{fill:#0000}.blip .halo{fill:var(--sweep);opacity:0;pointer-events:none;filter:blur(3px)}.blip .core{fill:var(--accent);stroke:var(--accent);stroke-width:1.25px;vector-effect:non-scaling-stroke}.blip.ring-1 .core{fill:var(--accent-strong);stroke:var(--accent-strong)}.blip.never .core{stroke-dasharray:2 2;stroke:var(--ink-3)}.blip .label{font:500 10.5px var(--sans);fill:var(--ink);pointer-events:none;opacity:0;paint-order:stroke;stroke:var(--bg);stroke-width:3px;stroke-linejoin:round;transition:opacity .15s}.blip.labelled .label,.zoomed .blip .label,.blip:hover .label,.blip:focus-visible .label,.blip.selected .label,.blip.linked .label,.blip.match .label{opacity:1}.blip.dim{opacity:.14}.blip.dim .label{opacity:0!important}.blip:hover .core,.blip:focus-visible .core{stroke-width:2.5px}.blip.selected .core{stroke:var(--ink);stroke-width:2.5px}.blip.selected .label{font-weight:600}.legend{background:color-mix(in srgb, var(--bg) 88%, transparent);border:1px solid var(--line);border-radius:var(--radius);font:11px var(--sans);color:var(--ink-2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);gap:4px;padding:10px 12px;display:grid;position:absolute;bottom:14px;left:16px}.legend div{align-items:center;gap:8px;display:flex}.lg-dot{background:var(--accent);border:1.25px solid var(--accent);border-radius:50%;width:9px;height:9px}.lg-dot.never{border:1.25px dashed var(--ink-3);background:0 0}.lg-line{border-top:1.25px dashed var(--accent);width:14px}.reset{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:28px;font:500 11px var(--mono);color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;padding:0 10px;position:absolute;bottom:14px;right:14px}.panel{border-left:1px solid var(--line);background:var(--panel);grid-area:panel;padding:18px 20px 28px;overflow-y:auto}.eyebrow{font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);margin:0 0 10px}.stats{border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);display:grid}.stats div{gap:2px;padding:10px 12px;display:grid}.stats div+div{border-left:1px solid var(--line)}.stats b{font:600 22px/1 var(--display);color:var(--ink)}.stats span{color:var(--ink-2);font-size:11.5px}.block{margin-top:20px}.block h3,.sources h3{font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3);align-items:center;gap:6px;margin:0 0 8px;display:flex}.count{color:var(--ink-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;padding:0 6px;font-size:10px}.rings{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rings li{grid-template-columns:82px 1fr 24px;align-items:center;gap:10px;font-size:12.5px;display:grid}.rl{color:var(--ink-2)}.rbar{background:var(--bg-soft);border-radius:3px;height:6px;overflow:hidden}.rbar i{background:var(--accent);border-radius:3px;height:100%;display:block}.rn{font:12px var(--mono);text-align:right;color:var(--ink)}.people{border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:0;list-style:none}.people li+li{border-top:1px solid var(--line)}.person-row{text-align:left;background:0 0;border:0;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:2px 10px;width:100%;padding:8px 10px;display:grid}.person-row .dot,.person-row .diamond{align-self:start;margin-top:4px}.person-row:hover{background:var(--bg-soft)}.who{min-width:0;display:grid}.who b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.who small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.meta{font:11px var(--mono);color:var(--ink-2);white-space:nowrap}.meta.wide{white-space:normal;color:var(--ink-3);grid-column:2/-1;line-height:1.4}.dot{--w:.45;border:1.25px solid var(--accent);background:color-mix(in srgb, var(--accent) calc(var(--w) * 100%), transparent);border-radius:50%;width:9px;height:9px}.dot.ring-2{--w:.8}.dot.ring-1{border-color:var(--accent-strong);background:var(--accent-strong)}.dot.never{border:1.25px dashed var(--ink-3);background:0 0}.sources{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.sources ul{color:var(--ink-2);gap:6px;margin:0;padding:0;font-size:12.5px;list-style:none;display:grid}.sources li{justify-content:space-between;display:flex}.tag{font:500 10px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius);padding:4px 6px}.tag.sample{color:var(--amber);background:var(--amber-soft)}.tag.live{color:var(--accent-strong);background:var(--accent-soft)}.fine{color:var(--ink-3);margin:8px 0 0;font-size:12px}.dossier-head h2{font:600 22px/1.15 var(--display);letter-spacing:-.01em;margin:10px 0 4px}.sub{color:var(--ink-2);margin:0;font-size:13px}.back{font:500 11px var(--mono);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;background:0 0;border:0;padding:0}.chips{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.chip{font:500 11px var(--sans);color:var(--accent-strong);background:var(--accent-soft);border-radius:var(--radius);padding:3px 7px}.facts{gap:12px;margin:20px 0 0;display:grid}.fact dt{font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3)}.fact dd{margin:2px 0 0;font-size:13.5px}@media (width<=900px){.app{grid-template:"bar""stage"62vh"panel"/minmax(0,1fr);height:auto;min-height:100vh}.panel{border-left:0;border-top:1px solid var(--line);padding:16px;overflow:visible}.bar{padding:10px 16px}.search input{width:100%}.search{flex:100%}.controls{width:100%;min-width:0}.filters{scrollbar-width:none;flex:100%;min-width:0;overflow-x:auto}.chip-btn{flex:none}.legend{display:none}}[hidden]{display:none!important}.graph{cursor:grab;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.graph:active{cursor:grabbing}.link{stroke:var(--line-strong);stroke-width:.8px;vector-effect:non-scaling-stroke;transition:opacity .15s}.link.part{stroke:var(--ink-3);stroke-width:1.25px}.link.partner,.link.family{stroke:var(--ink);stroke-width:1.6px}.link.intro{stroke:var(--accent);stroke-width:1.4px;stroke-dasharray:4 3}.link.knows{stroke:var(--ink-2);stroke-width:1.1px;stroke-dasharray:1 3;stroke-linecap:round}.has-focus .link{opacity:.12}.has-focus .link.on{opacity:1}.has-focus .link.member.on{stroke:var(--ink-3);stroke-width:1.1px}.link.dim{opacity:.05!important}.node{cursor:pointer;outline:none;transition:opacity .15s}.node .hit{fill:#0000}.node .shape{vector-effect:non-scaling-stroke}.node.me{cursor:default}.node.me .shape{fill:var(--ink)}.me-text{font:700 11px var(--display);fill:var(--bg);text-anchor:middle;letter-spacing:.04em;pointer-events:none}.node.world .shape{fill:var(--bg);stroke:var(--ink);stroke-width:2.5px}.node.context .shape{fill:var(--bg);stroke:var(--ink-2);stroke-width:1.25px}.node.person .shape{fill:var(--accent);stroke:var(--accent);stroke-width:1.25px}.node.person.ring-1 .shape{fill:var(--accent-strong);stroke:var(--accent-strong)}.node.person.unmet .shape{stroke:var(--ink-3);stroke-dasharray:2 2}.node:hover .shape,.node:focus-visible .shape{stroke-width:2.5px}.node .label{pointer-events:none;paint-order:stroke;stroke:var(--bg);stroke-width:3.5px;stroke-linejoin:round}.node.world .label{font:600 10.5px var(--mono);letter-spacing:.12em;fill:var(--ink)}.node.context .label{font:500 9px var(--mono);letter-spacing:.02em;fill:var(--ink-2)}.node.person .label{font:500 10.5px var(--sans);fill:var(--ink);opacity:0;transition:opacity .15s}.node.person.labelled .label,.zoomed .node.person .label,.node.person:hover .label,.node.person:focus-visible .label,.node.person.focus .label,.node.person.match .label{opacity:1}.node.person.bridge .label{font-weight:600}.node.dim{opacity:.12}.node.dim .label{opacity:0!important}.has-focus .node.context:not(.focus) .label,.has-focus .node.world:not(.focus) .label{opacity:.35}.seg{border:1px solid var(--line-strong);border-radius:var(--radius);height:30px;display:inline-flex;overflow:hidden}.seg button{background:var(--bg);font:500 12px var(--sans);color:var(--ink-2);border:0;padding:0 12px}.seg button+button{border-left:1px solid var(--line-strong)}.seg button[aria-pressed=true]{background:var(--accent-strong);color:var(--bg)}.lg-world{border:2px solid var(--ink);border-radius:50%;width:10px;height:10px}.lg-diamond{border:1.25px solid var(--ink-2);width:8px;height:8px;margin:0 1px;transform:rotate(45deg)}.lg-line.solid{border-top:1.6px solid var(--ink)}body[data-view=scope] .graph-only{display:none}.diamond{border:1.25px solid var(--ink-2);width:8px;height:8px;margin-left:1px;transform:rotate(45deg)}.diamond.world{border:2px solid var(--ink);border-radius:50%;width:10px;height:10px;margin:0;transform:none}.world-row{text-align:left;background:0 0;border:0;grid-template-columns:96px 1fr 28px;align-items:center;gap:10px;width:100%;padding:2px 0;font-size:12.5px;display:grid}.world-row:hover .rl{color:var(--accent)}.rings li{display:block}.lead{margin:-2px 0 8px}.chain{flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;font-size:13.5px;display:flex}.chain .arrow{color:var(--ink-3)}.link-btn{background:var(--accent-soft);color:var(--accent-strong);border-radius:var(--radius);font:500 13px var(--sans);border:0;padding:2px 7px}.tag.off{color:var(--ink-3);background:var(--bg-soft);border:1px dashed var(--line-strong)}.stats.two{grid-template-columns:repeat(2,1fr);margin-top:16px}.crumb{text-transform:none;letter-spacing:.02em;margin:10px 0 0}body[data-view=sort] :is(.filters,.search,.legend,#reset){display:none}.sort-host{background:var(--bg);position:absolute;inset:0;overflow-y:auto}.sort{max-width:760px;margin:0 auto;padding:18px 20px 40px}.queues{flex-wrap:wrap;gap:4px;display:flex}.queues button{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:32px;font:500 12.5px var(--sans);color:var(--ink-2);align-items:center;gap:8px;padding:0 12px;display:inline-flex}.queues button span{font:11px var(--mono);color:var(--ink-3)}.queues button[aria-selected=true]{background:var(--accent-strong);color:var(--bg);border-color:var(--accent-strong)}.queues button[aria-selected=true] span{color:color-mix(in srgb, var(--bg) 75%, transparent)}.progress{background:var(--bg-soft);border-radius:2px;height:4px;margin:12px 0 6px;overflow:hidden}.progress i{background:var(--accent);height:100%;display:block}.queue-hint{color:var(--ink-3);margin:0 0 14px;font-size:12px}.card{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:20px 22px}.card h2{font:600 30px/1.1 var(--display);letter-spacing:-.015em;margin:6px 0 4px}.card .raw{font:12px var(--mono);color:var(--ink-3);margin:0 0 10px}.card .chips{margin:0 0 8px}.chip.rank{background:var(--accent-strong);color:var(--bg)}.chip.muted{background:var(--bg-soft);color:var(--ink-2);border:1px dashed var(--line-strong)}.chip.vault{background:var(--amber-soft);color:var(--amber)}.suggest{flex-wrap:wrap;align-items:center;gap:12px;margin:14px 0 6px;display:flex}.accept{border-radius:var(--radius);background:var(--accent);height:34px;color:var(--bg);font:600 13px var(--sans);border:0;padding:0 14px}.pending{color:var(--accent-strong);margin:6px 0;font-size:13px}.slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px;display:grid}.slot{text-align:left;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);grid-template-rows:auto auto;grid-template-columns:22px 1fr;column-gap:8px;min-width:0;padding:8px 10px;display:grid}.slot kbd{grid-row:span 2;align-self:center}.slot span{font:500 13px var(--sans);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.slot small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.slot:hover{border-color:var(--accent)}.slot.on{background:var(--accent-soft);border-color:var(--accent)}kbd{font:500 11px var(--mono);border:1px solid var(--line-strong);background:var(--bg-soft);min-width:20px;height:20px;color:var(--ink-2);border-bottom-width:2px;border-radius:4px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.search-wrap{margin-top:10px;position:relative}.search-wrap input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-soft);width:100%;height:34px;color:var(--ink);font:13px var(--sans);padding:0 10px}.search-wrap input:focus{outline:2px solid color-mix(in srgb, var(--accent) 40%, transparent);border-color:var(--accent)}.results{border-radius:var(--radius);margin:4px 0 0;padding:0;list-style:none}.results:not(:empty){border:1px solid var(--line)}.results li+li{border-top:1px solid var(--line)}.results button{text-align:left;background:0 0;border:0;justify-content:space-between;gap:12px;width:100%;padding:7px 10px;font-size:13px;display:flex}.results button small{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.results button.top{background:var(--accent-soft)}.results button.create b{color:var(--accent)}.actions{flex-wrap:wrap;gap:6px;margin-top:16px;display:flex}.actions button{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:30px;font:500 12px var(--sans);color:var(--ink-2);align-items:center;gap:6px;padding:0 10px;display:inline-flex}.actions button:hover{border-color:var(--accent)}.card.empty{text-align:center;padding:48px 20px}.apply{border-radius:var(--radius);background:var(--accent-strong);width:100%;height:36px;color:var(--bg);font:600 13px var(--sans);border:0;margin-top:16px}.apply:disabled{opacity:.45;cursor:default}.keys{gap:6px;margin:0;font-size:12.5px;display:grid}.keys div{grid-template-columns:70px 1fr;gap:8px;display:grid}.keys dt{font:500 11.5px var(--mono);color:var(--ink)}.keys dd{color:var(--ink-2);margin:0}@media (width<=600px){.slots{grid-template-columns:repeat(2,minmax(0,1fr))}.card h2{font-size:24px}}.mode{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:24px;font:500 11.5px var(--sans);color:var(--ink-2);align-items:center;gap:6px;margin-left:10px;padding:0 8px;display:inline-flex}.mode[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong);border-color:var(--accent)}.batch{border:1px solid var(--line);background:var(--panel);border-radius:6px;margin-bottom:12px}.batch header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.batch h3{font:600 14px var(--sans);align-items:center;gap:6px;margin:0;display:flex}.batch .accept:disabled{opacity:.4}.batch ul{max-height:360px;margin:0;padding:4px 0;list-style:none;overflow-y:auto}.batch li{justify-content:space-between;align-items:center;gap:8px;padding:3px 14px;display:flex}.batch label{cursor:pointer;align-items:baseline;gap:8px;min-width:0;font-size:13px;display:flex}.batch label small{color:var(--ink-3);font:11px var(--mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mini{border:1px solid var(--line-strong);background:var(--bg);min-width:22px;height:20px;font:500 10.5px var(--mono);color:var(--ink-3);border-radius:3px}.mini:hover{color:var(--amber);border-color:var(--amber)}.people li.link-note{color:var(--ink-3);border-top:0;margin-top:-4px;padding:0 10px 8px 32px;font-size:11.5px}.badge.local,.badge.browser{color:var(--accent-strong);background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}body[data-view=data] .app{grid-template-columns:minmax(0,1fr);grid-template-areas:"bar""stage"}body[data-view=data] .panel,body[data-view=data] :is(.filters,.search,.legend,#reset){display:none}.seg button:disabled{opacity:.4;cursor:default}.data{max-width:860px;margin:0 auto;padding:22px 20px 60px}.data h2{font:600 16px var(--display);margin:0 0 10px}.data code{font:12px var(--mono);background:var(--bg-soft);border-radius:3px;padding:1px 5px}.flash{background:var(--accent-soft);color:var(--accent-strong);border-radius:var(--radius);margin:0 0 14px;padding:8px 12px;font-size:13px}.hero{padding:28px 0 8px}.hero h1{font:700 34px/1.1 var(--display);letter-spacing:-.02em;margin:0 0 10px}.hero p{color:var(--ink-2);max-width:640px;margin:0 0 18px;font-size:15.5px}.hero-actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.you{color:var(--ink-2);gap:4px;font-size:12px;display:grid}.you input,.data input:not([type]),.data select,.row input{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:32px;color:var(--ink);font:13px var(--sans);min-width:0;padding:0 10px}.you input{width:260px;max-width:100%}.data button,.data .button{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:32px;font:500 13px var(--sans);color:var(--ink);cursor:pointer;align-items:center;padding:0 12px;display:inline-flex}.data button:hover,.data .button:hover{border-color:var(--accent)}.data button.primary{background:var(--accent-strong);color:var(--bg);border-color:var(--accent-strong)}.data button.danger{color:#c4321c;border-color:color-mix(in srgb, #c4321c 40%, var(--line-strong))}.data button:disabled{opacity:.45;cursor:default}.privacy{border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--panel);margin:18px 0;padding:12px 16px}.privacy h2{margin:0 0 6px;font-size:14px}.privacy ul{color:var(--ink-2);gap:3px;margin:0;padding-left:18px;font-size:13px;display:grid}.dv-block{margin-top:26px}.drop{text-align:center;border:1.5px dashed var(--line-strong);background:var(--bg-soft);cursor:pointer;border-radius:8px;justify-items:center;gap:4px;padding:26px 16px;font-size:14px;display:grid}.drop.over,.drop:hover{border-color:var(--accent);background:var(--accent-soft)}.drop small{color:var(--ink-3);font-size:12px}.linkish{color:var(--accent);text-decoration:underline}.pending{border:1px solid var(--line);background:var(--panel);border-radius:6px;gap:6px;margin-top:10px;padding:12px 14px;display:grid}.pending header{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.pending header small{color:var(--ink-3);font:11.5px var(--mono)}.pending.err{border-color:color-mix(in srgb, #c4321c 40%, var(--line));flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.pending.done{color:var(--ink-2);gap:10px;font-size:13px;display:flex}.pending .counts{margin:0;font-size:14px}.pending .warn{color:var(--amber)}.opts,.row{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.opts label{align-items:center;gap:6px;display:inline-flex}.mapping{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.mapping label{color:var(--ink-2);gap:3px;font-size:12px;display:grid}.groups{border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap;gap:6px 14px;padding:8px 10px;font-size:12.5px;display:flex}.groups legend{color:var(--ink-2);padding:0 4px;font-size:12px}.guides{margin-top:14px;font-size:13px}.guides summary{cursor:pointer;color:var(--accent)}.guide{margin-top:10px}.guide p{color:var(--ink-2);margin:2px 0 0}.imports{border:1px solid var(--line);border-radius:var(--radius);margin:10px 0 0;padding:0;list-style:none}.imports li{justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13px;display:flex}.imports li+li{border-top:1px solid var(--line)}.imports small{color:var(--ink-3);font-size:11.5px;display:block}.tags{border-collapse:collapse;width:100%;font-size:13px}.tags th{text-align:left;font:500 10.5px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);border-bottom:1px solid var(--line);padding:6px 8px}.tags td{border-bottom:1px solid var(--line);vertical-align:middle;padding:5px 8px}.tags td.eg{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;max-width:240px;overflow:hidden}.tags select{width:100%;max-width:300px}.tree,.tree ul{margin:0;padding:0;list-style:none}.tree ul{border-left:1px dashed var(--line-strong);margin-left:8px;padding-left:22px}.ctx-row{align-items:center;gap:8px;padding:3px 0;font-size:13px;display:flex}.ctx-row input{flex:0 260px}.ctx-row small{color:var(--ink-3);min-width:64px}.ctx-row button{height:26px;padding:0 8px;font-size:12px}.seg.wide{height:34px}@media (width<=600px){.hero h1{font-size:27px}.tags td.eg{display:none}.ctx-row{flex-wrap:wrap}}.cta{border-radius:var(--radius);background:var(--accent);color:#fff;height:28px;font:600 12.5px var(--sans);border:0;padding:0 12px}.cta:hover{background:var(--accent-strong)}body[data-view=data] .cta{display:none}.tip{z-index:5;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--accent);max-width:330px;color:var(--ink-2);border-radius:6px;padding:12px 14px;font-size:13.5px;position:absolute;top:16px;left:16px;box-shadow:0 6px 24px #11111314}.tip[hidden]{display:none}.tip h2{font:600 15px/1.25 var(--display);color:var(--ink);margin:0 0 4px}.tip p{margin:0}.tip b{color:var(--ink);font-weight:600}.tip.welcome{border-left-width:4px;max-width:380px;padding:18px 20px}.tip.welcome h2{letter-spacing:-.01em;margin-bottom:6px;font-size:21px}.tip.welcome p{font-size:14.5px}.tip-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.tip-actions button{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);height:28px;font:500 12.5px var(--sans);color:var(--ink);padding:0 10px}.tip-actions button:hover{border-color:var(--accent)}.tip-actions button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.tip-actions button.primary:hover{background:var(--accent-strong)}.tip-actions button.quiet{color:var(--ink-3);background:0 0;border:0;margin-left:auto;padding:0 4px}.tip.welcome .tip-actions button{height:34px;padding:0 14px;font-size:13.5px}body[data-view=data] .tip,body[data-view=sort] .tip{display:none}.onboarding{max-width:720px}.source-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:6px 0 12px;display:grid}.data button.source{text-align:left;border:1px solid var(--line-strong);background:var(--bg);border-radius:6px;align-content:start;justify-items:start;gap:2px;height:auto;padding:14px;display:grid}.data button.source b{font:600 15px var(--display);color:var(--ink)}.data button.source span{color:var(--ink-2);font-size:13px}.data button.source small{font:500 11px var(--mono);color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;margin-top:6px}.data button.source[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}.steps{color:var(--ink-2);gap:5px;margin:4px 0 14px;padding-left:22px;font-size:14px;display:grid}.steps b{color:var(--ink);font-weight:600}.lock{color:var(--ink-2);border-left:3px solid var(--accent);margin:22px 0 0;padding-left:12px;font-size:13px}.lock b{color:var(--ink)}.aside{margin-top:14px}.data button.linkish,.data .linkish{height:auto;color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline;display:inline}.more-opts summary{cursor:pointer;color:var(--ink-3);font-size:12.5px}.more-opts .opts{margin-top:8px}@media (width<=640px){.source-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.tip{max-width:none;left:10px;right:10px}}body[data-mode=demo][data-view=data] #sample-badge{display:none}.brand h1,.badge,.cta{white-space:nowrap}@media (width<=900px){.brand{width:100%}.cta{margin-left:auto}.filters{padding-right:24px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000)}}@media (width<=480px){body[data-mode=demo] #sample-badge{display:none}.tip.welcome{padding:14px 16px}.tip.welcome h2{font-size:18px}.tip.welcome p{font-size:13.5px}.tip.welcome .tip-actions button{height:32px;padding:0 12px;font-size:13px}}.ground{pointer-events:none}.ground-dot{fill:var(--line-strong);opacity:.55}.node .glow{fill:var(--accent);pointer-events:none;transform-box:fill-box;transform-origin:50%;opacity:0;animation:4s ease-in-out infinite breathe}@keyframes breathe{0%,to{opacity:calc(var(--warm) * .06);transform:scale(.8)}50%{opacity:calc(var(--warm) * .3);transform:scale(1.25)}}.node.dim .glow{opacity:0;animation:none}.pulse{fill:var(--accent);pointer-events:none}.trail-path{fill:none;stroke:var(--accent);stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 6;opacity:.6;vector-effect:non-scaling-stroke;pointer-events:none;animation:1.2s linear infinite march}@keyframes march{to{stroke-dashoffset:-14px}}.node.selected .hit{fill:var(--accent);fill-opacity:.14}.node.selected .shape{stroke:var(--accent-strong);stroke-width:3px}.node.candidate .shape{stroke:var(--accent);stroke-width:3px}.node.candidate .hit{fill:var(--accent);fill-opacity:.1}.node.candidate .label{opacity:1;font-weight:600}.has-focus .link.on{stroke-width:1.3px}.has-focus .link.social.on{stroke:var(--accent);stroke-width:1.6px}.trail{z-index:4;background:color-mix(in srgb, var(--panel) 92%, transparent);border:1px solid var(--line);border-radius:6px;flex-wrap:wrap;align-items:center;gap:2px 4px;max-width:min(60%,560px);padding:5px 6px 5px 10px;font-size:12.5px;display:none;position:absolute;top:12px;right:12px;box-shadow:0 4px 16px #1111130f}.trail.on{display:flex}.trail-label{font:500 10px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-right:4px}.trail button{border-radius:var(--radius);color:var(--ink-2);font:500 12.5px var(--sans);text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:160px;padding:2px 4px;overflow:hidden}.trail button:hover{background:var(--accent-soft);color:var(--accent-strong)}.trail button[aria-current=true]{color:var(--accent-strong);font-weight:600}.trail-sep{color:var(--ink-3)}.trail .trail-clear{color:var(--ink-3);margin-left:2px;padding:0 5px;font-size:15px;line-height:1}body[data-view=scope] .trail,body[data-view=sort] .trail,body[data-view=data] .trail{display:none}@media (width<=900px){.trail{max-width:none;inset:auto 10px 54px}}@media (prefers-reduced-motion:reduce){.node .glow,.trail-path{animation:none}}.keep-warn{border-left:3px solid var(--amber);background:var(--amber-soft);color:var(--ink-2);border-radius:var(--radius);margin:0 0 12px;padding:10px 12px;font-size:13px}.keep-warn b{color:var(--ink)}.dupes{border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:0;list-style:none}.dupes li{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.dupes li+li{border-top:1px solid var(--line)}.dupes .pair{font-size:13px}.dupes .pair small{color:var(--ink-3)}.dupes .amp{color:var(--ink-3);margin:0 4px}.dupes .why{margin-top:2px;font-size:11.5px;display:block}.dupes .row{gap:6px;display:flex}.quiet-btn{color:var(--ink-3)}.feedback{border:1px solid var(--line);width:min(480px,100vw - 32px);color:var(--ink);border-radius:8px;padding:0;box-shadow:0 20px 60px #1111132e}.feedback::backdrop{background:#11111340}.feedback-form{gap:12px;padding:18px 20px 20px;display:grid}.feedback-form header{justify-content:space-between;align-items:center;display:flex}.feedback-form h2{font:600 18px var(--display);margin:0}.feedback-form .close{color:var(--ink-3);background:0 0;border:0;font-size:22px;line-height:1}.feedback-form label{color:var(--ink-2);gap:4px;font-size:13px;display:grid}.feedback-form textarea,.feedback-form input[type=email]{border:1px solid var(--line-strong);border-radius:var(--radius);width:100%;font:14px var(--sans);color:var(--ink);background:var(--bg);padding:8px 10px}.feedback-form textarea:focus,.feedback-form input:focus{outline:2px solid color-mix(in srgb, var(--accent) 40%, transparent);border-color:var(--accent)}.feedback-form .row{align-items:center;gap:10px;display:flex}.feedback-form .primary{border-radius:var(--radius);background:var(--accent);color:#fff;height:34px;font:600 13px var(--sans);border:0;padding:0 16px}.feedback-form .primary:disabled{opacity:.5}.feedback-form .status{color:var(--ink-2);font-size:13px}.feedback-form .fine{color:var(--ink-3);margin:0;font-size:12px}.honey{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}
