/* Expanded exact-result map, separate from the unchanged family overview. */
#variant-surface{position:absolute;inset:52px 0 65px;z-index:5;background:#0c121b}.variant-viewport{position:absolute;inset:0;overflow:hidden;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}.variant-lines,.variant-nodes{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.variant-nodes{z-index:2}.variant-node{position:absolute;transform:translate(-50%,-50%);height:110px;border:1px solid #526778;border-radius:10px;padding:9px 12px;background:#15212e;text-align:center;pointer-events:auto;display:flex;flex-direction:column;justify-content:center;gap:5px;line-height:1.2;box-shadow:0 3px 10px #0003}.variant-node .variant-name{font-size:13px;font-weight:550}.variant-node .variant-result{font-size:11px}.variant-node .variant-external{font-size:10px;color:#829bb0}.variant-node.external{border-style:dashed;background:#101a25}.variant-node.selected{border-color:#e2b775;background:#263142}.variant-node.quiet{opacity:.5}.variant-edge{pointer-events:none}.variant-edge .hit{fill:none;stroke:transparent;stroke-width:16;pointer-events:stroke;cursor:pointer}.variant-edge .stroke{fill:none;stroke:#8cbace;stroke-width:1.8;opacity:.8}.variant-edge.change .stroke{stroke:#e2b775;stroke-dasharray:7 5}.variant-edge.restriction .stroke{stroke:#bca6ec;stroke-dasharray:2 5}.variant-edge.equivalence .stroke{stroke:#a7d1e0}.variant-edge.related .stroke,.variant-edge:hover .stroke,.variant-edge:focus-visible .stroke{stroke-width:2.8;opacity:1}.variant-edge.quiet{opacity:.3}#map-return{display:flex;align-items:center;gap:12px;position:absolute;top:9px;left:16px;z-index:13;max-width:calc(100% - 32px)}#return-map{font-size:13px;padding:7px 11px;background:#1b2c3c;border:1px solid #58758b;white-space:nowrap}#map-context{font-size:14px;color:#c2d7e6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#expand-family{font-size:13px;color:#aed4e3;border:1px solid #4b6479;background:#1b2b3b;padding:7px 11px;margin:10px 0 2px}#map-shell.expanded #map-tools,#map-shell.expanded .hint{display:none}#map-shell.listing #map-tools,#map-shell.listing .hint{display:none}#map-shell.listing #list{top:56px}.view-switch button:disabled{opacity:.35;cursor:default}#equivalence-key[hidden]{display:none!important}.legend .equivalent{border-top:3px double #a7d1e0}@media(max-width:600px){#variant-surface{inset:55px 0 72px}#map-return{left:12px;gap:9px}#map-context{font-size:12px}.variant-node .variant-name{font-size:12px}.variant-node .variant-result{font-size:11px}}

.variant-node .variant-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.open-profile{display:block!important;width:100%;color:#dfc399!important;font-size:10px}

/* Keep family expansion in the persistent detail toolbar. */
.detail-controls{gap:4px}#focus-selection{margin-left:0;margin-right:0}#expand-family{margin:0;padding:6px 8px;font-size:12px;white-space:nowrap}#close-detail{margin-left:auto}.coverage-line{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#suggest-addition{white-space:nowrap;color:#adc6d5;text-decoration:underline;text-underline-offset:3px}.map-meta{gap:10px}.map-meta>span:last-child{flex-shrink:0}
@media(max-width:600px){.coverage-line{gap:2px 8px;max-width:calc(100% - 155px)}.map-meta>span:last-child{max-width:150px}#expand-family{font-size:11px;padding:6px}#gesture-hint{line-height:1.3}}

@media(max-width:600px){.coverage-line #coverage{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-footer{bottom:49px}#viewport{bottom:89px}#variant-surface{bottom:89px}#list{bottom:95px}}

/* Center the current graph title independently of the return control. */
#map-return{right:16px;max-width:none;min-height:35px;pointer-events:none}#return-map{position:relative;z-index:1;pointer-events:auto}#map-context{position:absolute;left:50%;transform:translateX(-50%);width:calc(100% - 260px);margin:0;text-align:center;font-size:18px;font-weight:600;line-height:1.25;color:#d8e6ef;white-space:normal;text-wrap:balance;pointer-events:none}
#viewport.pointer-focus:focus,#viewport.pointer-focus:focus-visible,.variant-viewport.pointer-focus:focus,.variant-viewport.pointer-focus:focus-visible{outline:none!important}
#viewport:focus-visible,.variant-viewport:focus-visible{outline:2px solid #8aaec3;outline-offset:-3px}
@media(max-width:600px){#map-return{left:12px;right:12px;align-items:flex-start}#map-context{top:44px;width:100%;font-size:17px;line-height:1.2}#variant-surface{top:96px}#map-shell.listing #list{top:96px}}

/* Responsive graph cards stay legible at Fit. Positioning changes with zoom,
   while the lettering is never transformed below its declared size. */
.variant-node{padding:4px;border-radius:7px;gap:2px;overflow:hidden;transform:translate(-50%,-50%);box-sizing:border-box}
.variant-node .variant-name{font-size:var(--name-size,12px);line-height:var(--name-line,14px);font-weight:550;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--name-lines,2);overflow:hidden;overflow-wrap:anywhere;flex:0 1 auto}
.variant-node .variant-result{font-size:11px;line-height:12px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;flex:0 1 auto}
.variant-node .variant-external{display:none}
