.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{--void:#0a0a0b;--void-2:#0e0e10;--void-3:#131316;--grid:#78bec80b;--accent-h:186;--accent:hsl(var(--accent-h) 72% 62%);--accent-dim:hsl(var(--accent-h) 40% 44%);--ink:#e8eded;--ink-2:#abb8ba;--ink-3:#96a3a6;--ink-4:#809093;--hairline:#96c8d22b;--hairline-strong:#96c8d252;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:36px;--radius:7px;--w-reg:400;--w-med:560;--sans:ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--spring:cubic-bezier(.22, 1, .28, 1);--axis-h:60px;--sidebar-w:0px;--chrome-left:0px;--rail-pad:12px;--side-gap:clamp(14px, 2.4vh, 30px);--side-pad-t:16px;--brand-h:38px;--search-h:36px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--void);color:var(--ink);font-family:var(--sans);font-weight:var(--w-reg);-webkit-font-smoothing:antialiased;font-size:14px;overflow:hidden}:root:fullscreen{background:var(--void)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.num,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1, "zero" 1;letter-spacing:-.01em}.sci-italic{font-style:italic}.pending{color:var(--ink-4);font-size:11.5px;animation:1.8s ease-in-out infinite pending-breathe}@keyframes pending-breathe{0%,to{opacity:.45}50%{opacity:.9}}@media (prefers-reduced-motion:reduce){.pending{opacity:.9;animation:none}}.canvas{inset:0;left:var(--sidebar-w);transition:left .22s var(--spring);background:radial-gradient(ellipse 120% 90% at 62% 45%, var(--void-2) 0%, var(--void) 72%), var(--void);position:fixed}.canvas:before{content:"";background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);pointer-events:none;background-size:56px 56px;position:absolute;inset:0}.react-flow__pane{cursor:default}.react-flow__attribution{display:none}.react-flow__edge-path,.react-flow__connection-path{stroke:none}.react-flow__node{cursor:pointer;font-family:var(--sans);transition:transform .56s cubic-bezier(.33,1,.68,1)}.react-flow__handle{opacity:0;pointer-events:none}.trace-halo{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:7px;opacity:.16;filter:blur(3.5px)}.trace-core{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px}.trace-hit{fill:none;stroke:#0000;stroke-width:16px;cursor:pointer;pointer-events:stroke}.bloom-off .trace-halo{display:none}.tier-interpolated .trace-core{stroke-dasharray:7 3}.tier-structural .trace-core{stroke-dasharray:3 5;opacity:.72}.tier-structural .trace-halo{opacity:.07}.trace-unbounded .trace-core{stroke-dasharray:2 6}.trace-attachment .trace-core{stroke-dasharray:1.5 5.5;stroke-width:1.1px;opacity:.6}.trace-attachment .trace-halo{opacity:0}.dimmed{opacity:.26;filter:saturate(.35)}.mark.dimmed{opacity:.78}.mark.dimmed .mark-meta,.mark.dimmed .mark-age{color:var(--ink-3)}.mark{width:10px;height:10px;position:relative}.mark-dot{width:10px;height:10px;transition:box-shadow .18s var(--spring),  filter .18s var(--spring), transform .18s var(--spring);border-radius:50%;position:absolute;top:0;left:0}.mark-alive{width:12px;height:12px;transition:filter .18s var(--spring), transform .18s var(--spring);position:absolute;top:-1px;left:-1px;overflow:visible}.mark:hover .mark-dot,.mark.is-focus .mark-dot,.mark:hover .mark-alive,.mark.is-focus .mark-alive{transform:scale(1.45)}.mark-fossil{width:15px;height:15px;transition:transform .18s var(--spring);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.mark-fossil .age-glyph{opacity:1;width:15px;height:15px;vertical-align:initial;pointer-events:none;margin:0}.mark.is-graft:hover .mark-fossil,.mark.is-graft.is-focus .mark-fossil{transform:translate(-50%,-50%)scale(1.4)}.mark.is-focus .mark-fossil .age-glyph{filter:drop-shadow(0 0 5px)}.mark-label{white-space:normal;overflow-wrap:break-word;pointer-events:none;align-items:center;gap:9px;display:flex;position:absolute;transform:translateY(-50%)}.mark-text{pointer-events:auto;flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.mark-name{color:var(--ink-2);letter-spacing:.005em;font-size:12.5px;line-height:1.24}.mark-meta{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-4);font-size:9.5px;line-height:1.28}.mark-age{color:var(--ink-4);white-space:nowrap;font-size:11px;line-height:1.28}.age-glyph{vertical-align:-.17em;opacity:.82;pointer-events:auto;width:13px;height:13px;margin-right:3px}.mark-label.crowded .mark-text{background:#0a0a0cd1;border-radius:4px;margin:-1px -5px;padding:1px 5px}.mark.is-leaf .mark-label{color:var(--ink)}.mark.is-mrca .mark-label{color:var(--ink);font-weight:var(--w-med)}.silhouette{opacity:.9;flex:none;width:34px;height:34px;margin-right:10px}.silhouette svg,.silhouette img{object-fit:contain;width:100%;height:100%}.silhouette svg path,.silhouette svg polygon{fill:currentColor}.mark .silhouette{transform:scale(var(--icon-scale,1));transform-origin:50%;pointer-events:none;flex:none;margin:0;position:relative}.mark .silhouette:after{content:"";transform:scale(calc(1 / var(--icon-scale,1)));transform-origin:50%;pointer-events:auto;position:absolute;inset:0}@keyframes flare{0%{filter:drop-shadow(0 0);scale:1}22%{filter:drop-shadow(0 0 7px)drop-shadow(0 0 16px);scale:2.05}to{filter:drop-shadow(0 0 3px);scale:1}}.mark-dot.flaring,.mark-alive.flaring,.mark-fossil.flaring{animation:flare .62s var(--spring) both}@keyframes mark-enter{0%{opacity:0;scale:.72}to{opacity:1;scale:1}}.mark.is-entering{animation:mark-enter .42s var(--spring) backwards}@keyframes mark-arrive{0%{opacity:0;scale:.4}14%{opacity:.5}to{opacity:0;scale:9}}.mark-arrive{background:radial-gradient(circle, currentColor 0%, color-mix(in srgb, currentColor 45%, transparent) 42%, transparent 70%);pointer-events:none;border-radius:50%;width:26px;height:26px;margin:-13px 0 0 -13px;animation:1.5s cubic-bezier(.16,.7,.3,1) backwards mark-arrive;position:absolute;top:50%;left:50%}.axis{min-height:var(--axis-h);pointer-events:none;z-index:4;background:linear-gradient(to top, var(--void) 46%, transparent);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;bottom:0;left:0;right:0}.axis-stretch{right:var(--s3);gap:var(--s1);pointer-events:auto;display:flex;position:absolute;bottom:18px}.axis-stretch button{border:1px solid var(--hairline);width:26px;height:22px;color:var(--ink-3);cursor:pointer;background:#0e0e11eb;border-radius:6px;place-items:center;padding:0;transition:color .12s,border-color .12s,background .12s;display:grid}.axis-stretch button:hover:not(:disabled){color:var(--accent);border-color:var(--hairline-strong);background:var(--void-3)}.axis-stretch button:focus-visible{border-color:var(--accent-dim);color:var(--accent);outline:none}.axis-stretch button:disabled{opacity:.35;cursor:default}.canvas-legend{left:var(--s4);bottom:calc(var(--axis-h) + var(--lane-h,0px) + 16px);z-index:6;max-width:min(52ch, calc(100% - var(--s5)));color:var(--ink-4);pointer-events:none;opacity:.9;transition:opacity .2s ease, bottom .24s var(--spring);font-size:10.5px;position:absolute}.canvas-legend:hover{opacity:1}.side-links{pointer-events:auto;opacity:.9;justify-self:end;align-items:center;gap:8px;transition:opacity .2s;display:inline-flex}.side-links:hover,.side-links:focus-within{opacity:1}.side-link{appearance:none;font:inherit;letter-spacing:.04em;color:var(--ink-4);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;text-decoration:none;transition:color .14s;display:inline-flex}.side-link:hover{color:var(--ink-2)}.side-link:focus-visible{color:var(--ink);text-underline-offset:3px;outline:none;text-decoration:underline}.src-mark{opacity:.9;flex:none;display:block}.side-link-rule{background:var(--hairline-strong);width:1px;height:9px}@media (width<=400px){.side-link-word{display:none}}.axis-line{stroke:var(--hairline-strong);stroke-width:1px}.axis-tick text{font-family:var(--mono);font-variant-numeric:tabular-nums;fill:var(--ink-3);font-size:10.5px}.axis-grid{stroke:#96c8d20f;stroke-width:1px}.axis-origin{stroke:var(--hairline-strong);opacity:.8}.axis-origin-label{fill:var(--ink-4);font-size:10px;font-family:var(--mono)}.ics-band rect{opacity:.5}.ics-band line{stroke:#00000080}.ics-band text{letter-spacing:.05em;fill:var(--ink-3);text-transform:uppercase;font-size:9.5px}.drill{left:0;right:0;bottom:var(--axis-h);z-index:5;border-top:1px solid var(--hairline);pointer-events:auto;background:#0e0e11f0;flex-direction:column;animation:.14s ease-out fade;display:flex;position:absolute}.drill-head{align-items:center;gap:var(--s3);padding:0 var(--s4);height:22px;color:var(--ink-3);flex:none;font-size:11px;display:flex}.drill-title{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.drill-cap{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink-4);flex:none;font-size:10px}.drill-close{font:inherit;color:var(--ink-4);cursor:pointer;background:0 0;border:none;flex:none;align-items:center;gap:5px;margin-left:auto;padding:0;font-size:10.5px;display:inline-flex}.drill-close:hover{color:var(--ink-2)}.drill-field{flex:none;display:block;overflow:hidden}.drill-spine line{stroke:var(--hairline-strong);stroke-width:1px;stroke-dasharray:1 3}.drill-tick{fill:var(--ink-4)}.drill-tick.is-named{fill:var(--accent-dim)}.drill-spine-name{font-family:var(--sans);fill:var(--ink-3);font-size:10.5px}.drill-row-name{font-family:var(--sans);fill:var(--ink-2);font-size:11px}.drill-row-hit{fill:#0000}.drill-row.is-actionable{cursor:pointer;outline:none}.drill-row.is-actionable:hover .drill-row-hit,.drill-row.is-actionable:focus-visible .drill-row-hit{fill:#96dce60f}.drill-row.is-actionable:hover .drill-row-name,.drill-row.is-actionable:focus-visible .drill-row-name{fill:var(--ink)}.drill-row.is-actionable:focus-visible .drill-row-hit{stroke:#96dce673;stroke-width:1px}.drill-row .silhouette{color:var(--ink-3)}.drill-row.is-actionable:hover .silhouette,.drill-row.is-actionable:focus-visible .silhouette{color:var(--ink-2)}.drill-row-span,.drill-row-occs{font-family:var(--mono);font-variant-numeric:tabular-nums;fill:var(--ink-4);font-size:9.5px}.drill-empty{font-family:var(--sans);fill:var(--ink-4);font-size:11px}.drill-foot{justify-content:space-between;align-items:center;gap:2px var(--s4);padding:2px var(--s4) 6px;color:var(--ink-4);flex-wrap:wrap;font-size:10.5px;display:flex}.drill-key{align-items:center;gap:2px var(--s3);flex-wrap:wrap;display:flex}.drill-key-row{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.drill-key-swatch{color:var(--accent);flex:none}.drill-unplaced{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.drill-caption{letter-spacing:.08em;white-space:nowrap}.bracket{color:var(--accent)}.bracket-envelope{fill:#96c8d221}.bracket-cap{fill:#96c8d273}.bracket-certain{fill:hsl(var(--accent-h) 46% 64%)}.trace-drilled .trace-core{filter:brightness(1.5)}.trace-drilled .trace-halo{opacity:.3}.palette-scrim{z-index:40;background:#0606089e;justify-content:center;padding-top:14vh;animation:.11s ease-out fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.palette{background:var(--void-2);border:1px solid var(--hairline-strong);border-radius:var(--radius);flex-direction:column;width:min(680px,92vw);max-height:62vh;display:flex;overflow:hidden}.palette-input-row{align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);border-bottom:1px solid var(--hairline);display:flex}.scope-chip{color:var(--accent);border:1px solid var(--hairline);background:#78c8d21f;border-radius:5px;flex:none;padding:3px 8px;font-size:11.5px}.palette-input{color:var(--ink);font-family:var(--sans);background:0 0;border:none;outline:none;flex:1;padding:2px 0;font-size:16px}.palette-input::placeholder{color:var(--ink-4)}.palette-list{padding:var(--s2) 0;scrollbar-width:thin;scrollbar-color:var(--ink-4) transparent;transition:opacity .16s var(--spring);overflow-y:auto}.palette-list.is-stale{opacity:.45;transition:none}.palette-section{padding:var(--s3) var(--s4) var(--s1);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-4);-webkit-user-select:none;user-select:none;font-size:10px}.palette-group:first-child .palette-section{padding-top:var(--s2)}.row-via{color:var(--ink-4);margin-top:2px;font-size:11px;display:block}.row.active .row-via{color:var(--ink-3)}.row-icon-fossil .age-glyph{opacity:1;width:18px;height:18px;vertical-align:initial;margin:0}.row{align-items:center;gap:var(--s3);padding:7px var(--s4);cursor:pointer;border-left:2px solid #0000;display:flex}.row.active{border-left-color:var(--accent);background:#78c8d212}.row-icon{background:var(--void-3);border:1px solid var(--hairline);width:26px;height:26px;color:var(--ink-3);border-radius:5px;flex:none;place-items:center;font-size:12px;display:grid}.row.active .row-icon{color:var(--accent)}.row-icon .silhouette{width:20px;height:20px;margin:0}.row-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.row-title{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;line-height:1.25;display:block;overflow:hidden}.row-sub{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:1.25;display:block;overflow:hidden}.row-title.has-badge{align-items:baseline;gap:6px;display:flex}.row-title.has-badge>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.row-badge{letter-spacing:.02em;border:1px solid var(--hairline);color:var(--ink-4);background:var(--void-3);cursor:help;border-radius:3px;flex:none;padding:0 5px;font-size:10px;font-style:normal;line-height:1.4}.row.active .row-badge{color:var(--ink-3);border-color:var(--hairline-strong)}.hl{color:var(--accent)}.row-accessory{align-items:center;gap:var(--s2);color:var(--ink-4);flex:none;font-size:11px;display:flex}.kbd{font-family:var(--mono);border:1px solid var(--hairline);background:var(--void-3);color:var(--ink-3);white-space:nowrap;border-radius:4px;padding:2px 5px;font-size:10.5px}.row-drill{cursor:pointer;font-family:var(--mono)}.row-drill:hover{color:var(--accent);border-color:var(--accent)}.palette-empty{padding:var(--s5) var(--s4);color:var(--ink-3);font-size:13px;line-height:1.55}.palette-empty .pending{font-size:13px}.palette-note{align-items:flex-start;gap:var(--s3);padding:9px var(--s4);cursor:default;border-left:2px solid #0000;display:flex}.row+.palette-note{border-top:1px solid var(--hairline);margin-top:var(--s2);padding-top:var(--s3)}.palette-note .row-icon{margin-top:1px}.palette-note .row-title{color:var(--ink-2)}.palette-note .row-sub{white-space:normal;padding-top:1px;line-height:1.45;overflow:visible}.palette-note.is-lead{border-top:0;border-bottom:1px solid var(--hairline);margin-top:0;margin-bottom:var(--s2);padding-bottom:var(--s3)}.palette-note.is-lead .row-title strong{color:var(--ink)}.palette-note.is-offer{text-align:left;width:100%;font:inherit;color:inherit;border:0;border-bottom:1px solid var(--hairline);cursor:pointer;background:0 0}.palette-note.is-offer:hover .row-title,.palette-note.is-offer:focus-visible .row-title{color:var(--ink)}.sidebar{z-index:30;background:var(--void-2);border-right:1px solid var(--hairline);opacity:0;width:264px;transition:transform .16s ease-in-out,opacity .12s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.is-open{opacity:1;transition:transform .22s var(--spring), opacity .16s ease;transform:none}.sidebar.is-floating{max-width:calc(100vw - 56px);box-shadow:0 0 40px #0000008c}.side-scrim{z-index:29;background:#06060880;position:fixed;inset:0}.side-inner{min-width:0;height:100%;padding:var(--side-pad-t) var(--rail-pad) var(--s4);gap:var(--side-gap);flex-direction:column;flex:auto;display:flex;position:relative}.side-head{height:var(--brand-h);align-items:center;gap:var(--s2);flex:none;display:flex;position:relative}.side-brand{flex-direction:column;flex:auto;justify-content:center;gap:1px;min-width:0;display:flex}.side-wordmark{align-items:center;margin:0;display:flex}.side-wordmark-btn{min-width:0;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;margin:0 -6px;padding:3px 6px;transition:background .16s;display:flex}.side-wordmark-btn:hover,.side-wordmark-btn:focus-visible{background:var(--void-3);outline:none}.side-mark{font-size:15px;font-weight:var(--w-med);letter-spacing:.22em;color:var(--ink-2);align-items:center;transition:color .16s;display:inline-flex}.side-wordmark-btn:hover .side-mark,.side-wordmark-btn:focus-visible .side-mark{color:var(--ink)}.side-mark .brand-mark{color:var(--accent-dim);margin:0 .1em 0 .02em;transition:color .22s}.side-wordmark-btn:hover .brand-mark,.side-wordmark-btn:focus-visible .brand-mark{color:var(--accent)}.side-tagline{letter-spacing:.04em;color:var(--ink-4);font-size:10.5px;transition:color .16s}.side-wordmark-btn:hover .side-tagline,.side-wordmark-btn:focus-visible .side-tagline{color:var(--ink-3)}.side-busy{top:10px;right:var(--rail-pad);letter-spacing:.06em;color:var(--ink-4);font-size:9.5px;position:absolute}.side-search{flex-direction:column;flex:none;gap:6px;display:flex}.side-search-btn{width:100%;height:var(--search-h);border:1px solid var(--hairline);border-radius:var(--radius);background:var(--void-3);color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;white-space:nowrap;align-items:center;gap:9px;padding:0 10px;font-size:12.5px;transition:border-color .16s,background .16s,color .16s;display:flex;overflow:hidden}.side-search-btn:hover,.side-search-btn:focus-visible{border-color:var(--hairline-strong);background:var(--void-2);color:var(--ink);outline:none}.side-search-glyph{opacity:.85;flex:none}.side-search-words{text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.side-search-kbd{flex:none}.side-search.is-tip .side-search-btn{border-color:hsl(var(--accent-h) 45% 50% / .7);animation:2.4s ease-in-out infinite side-tip}@keyframes side-tip{0%,to{box-shadow:0 0 0 0 hsl(var(--accent-h) 90% 60% / .22)}50%{box-shadow:0 0 0 4px hsl(var(--accent-h) 90% 60% / .11)}}.side-search-tip{color:var(--ink-3);pointer-events:none;animation:side-tip-in .32s var(--spring);margin:0;padding:0 2px;font-size:11px;line-height:1.35}@keyframes side-tip-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.side-taxa{flex-direction:column;flex:auto;min-height:0;display:flex}.side-canvas,.side-bottom{flex:none}.side-section{padding:0}.side-h{justify-content:space-between;align-items:baseline;gap:var(--s2);margin:0 0 var(--s2);font-family:var(--mono);font-size:9.5px;font-weight:var(--w-reg);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);padding:0 4px;display:flex}.side-h-label{align-items:baseline;gap:var(--s2);display:inline-flex}.side-count{color:var(--ink-4);font-size:10px}.side-rows{scrollbar-width:thin;flex-direction:column;flex:auto;gap:1px;min-height:0;display:flex;overflow:hidden auto}.side-doors{margin-bottom:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.side-door{aspect-ratio:1;border:1px dashed var(--hairline-strong);color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:10px;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:2px;padding:10px;transition:border-color .16s,background .16s,color .16s;display:flex;position:relative}.side-door:hover,.side-door:focus-visible{border-style:solid;border-color:hsl(var(--accent-h) 45% 48% / .6);background:var(--void-3);color:var(--ink);outline:none}.side-door-kbd{min-width:0;padding:0 3px;font-size:8px;position:absolute;top:8px;right:8px}.side-door-glyph{height:22px;color:var(--ink-4);align-items:center;margin-top:auto;font-size:26px;line-height:1;transition:color .16s;display:flex}.side-door-die{font-size:18px}.side-door:hover .side-door-glyph,.side-door:focus-visible .side-door-glyph{color:var(--accent)}.side-door-title{color:var(--ink-2);margin-top:6px;font-size:12.5px;transition:color .16s}.side-door:hover .side-door-title,.side-door:focus-visible .side-door-title{color:var(--ink)}.side-door-sub{min-height:2.7em;color:var(--ink-4);font-size:10px;line-height:1.35}.side-door.is-busy .side-door-die{animation:.9s linear infinite side-die}.side-add{margin-bottom:var(--s2);grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.side-add-main,.side-add-die{border:1px dashed var(--hairline-strong);border-radius:var(--radius);height:34px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:0 10px;font-size:12.5px;transition:border-color .14s,background .14s,color .14s;display:flex}.side-add-main:hover,.side-add-die:hover,.side-add-main:focus-visible,.side-add-die:focus-visible{border-style:solid;border-color:hsl(var(--accent-h) 45% 48% / .6);background:var(--void-3);color:var(--ink)}.side-add-plus{color:var(--ink-3);font-size:15px;line-height:1}.side-add-word{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.side-add-die{padding:0 8px}.side-add-die-glyph{font-size:12px;line-height:1}.side-add-die.is-busy .side-add-die-glyph{animation:.9s linear infinite side-die}@keyframes side-die{to{transform:rotate(360deg)}}.side-row{border-radius:6px;align-items:stretch;display:flex;position:relative}.side-row-main{min-width:0;min-height:40px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:auto;align-items:center;gap:9px;padding:5px 8px;display:flex}.side-row:hover .side-row-main,.side-row-main:focus-visible{background:var(--void-3)}.side-row.is-on .side-row-main{background:hsl(var(--accent-h) 30% 20% / .45)}.side-row.is-on .side-row-name{color:var(--ink)}.side-row-art{height:22px;color:var(--ink-3);flex:0 0 22px;justify-content:center;align-items:center;display:flex}.side-row.is-on .side-row-art{color:var(--accent)}.side-row-dot{opacity:.6;font-size:12px}.side-row-body{flex-direction:column;flex:auto;gap:1px;min-width:0;display:flex}.side-row-name{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.side-row-meta{letter-spacing:.03em;color:var(--ink-4);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.side-row-badge{border:1px solid var(--hairline);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4);border-radius:3px;padding:0 4px;font-size:8.5px;display:inline-block}.side-row-remove{width:26px;height:26px;color:var(--ink-4);font:inherit;cursor:pointer;opacity:0;background:0 0;border:0;border-radius:5px;flex:none;justify-content:center;align-self:center;align-items:center;margin-right:2px;font-size:14px;transition:opacity .12s,color .12s,background .12s;display:flex}.side-row:hover .side-row-remove,.side-row:focus-within .side-row-remove,.side-row-remove:focus-visible{opacity:1}.side-row-remove:hover{color:#e79d9d;background:#56252580}@media (hover:none){.side-row-remove{opacity:1}}.side-h-acts{align-items:baseline;gap:var(--s3);display:inline-flex}.side-act{border:1px solid var(--hairline);font-family:var(--mono);font-size:9.5px;font-weight:var(--w-reg);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);cursor:pointer;background:0 0;border-radius:5px;align-items:baseline;gap:7px;margin:-4px -8px -4px 0;padding:3px 7px;transition:color .14s,border-color .14s,background .14s;display:inline-flex}.side-act-key{border-left:1px solid var(--hairline);letter-spacing:0;color:var(--ink-4);padding-left:7px;transition:border-color .14s}.side-act:hover,.side-act:focus-visible{color:var(--ink-2);border-color:var(--hairline-strong);background:var(--void-3)}.side-act.is-danger:hover,.side-act.is-danger:focus-visible{color:#e69494;background:#56252580;border-color:#b9464673}.side-act.is-danger:hover .side-act-key,.side-act.is-danger:focus-visible .side-act-key{border-left-color:#b9464673}.side-act:focus-visible{text-underline-offset:3px;outline:none;text-decoration:underline}.side-act[aria-disabled=true]{opacity:.4;cursor:default}.side-bottom{justify-content:space-between;align-items:center;gap:var(--s3);flex:none;padding:0 4px;font-size:11px;display:flex}.side-toggle{height:26px;color:var(--ink-4);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;align-items:center;gap:5px;padding:0 6px;transition:background .14s,color .14s;display:inline-flex}.side-toggle:hover,.side-toggle:focus-visible{background:var(--void-3);color:var(--ink-2);outline:none}.side-toggle .kbd{min-width:0;padding:0 3px;font-size:8px}.side-toggle-glyph{opacity:.9}.viewport-slot{right:var(--s4);z-index:20;transition:opacity .4s;position:fixed;top:14px}.viewport-slot.is-left{right:auto;left:var(--s4)}.viewport-slot.idle{opacity:.3}.viewport-slot:hover,.viewport-slot:focus-within{opacity:1}.viewport-controls{align-items:center;gap:4px;display:flex}.viewport-btn{height:28px;color:var(--ink-3);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:0 7px;transition:background .14s,color .14s;display:flex}.viewport-btn:hover:not([aria-disabled=true]),.viewport-btn:focus-visible{background:var(--void-3);color:var(--ink)}.viewport-btn.on{background:hsl(var(--accent-h) 30% 20% / .55);color:var(--accent)}.viewport-btn[aria-disabled=true]{opacity:.38;cursor:default}.viewport-glyph{font-size:13px;line-height:1}.viewport-btn .kbd{padding:0 3px;font-size:8px}.modal-scrim{z-index:50;background:#060608ad;justify-content:center;align-items:flex-start;padding-top:22vh;animation:.11s ease-out fade;display:flex;position:fixed;inset:0}.modal{background:var(--void-2);border:1px solid var(--hairline-strong);border-radius:var(--radius);width:min(420px,92vw);padding:var(--s4)}.modal-title{margin:0 0 var(--s2);font-size:14px;font-weight:var(--w-med);color:var(--ink)}.modal-body{margin:0 0 var(--s4);color:var(--ink-3);font-size:12.5px;line-height:1.55}.modal-body strong{font-weight:var(--w-med);color:var(--ink-2)}.modal-actions{justify-content:flex-end;gap:var(--s2);display:flex}.btn{border:1px solid var(--hairline);background:var(--void-3);font-family:var(--sans);color:var(--ink-2);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.btn:hover{border-color:var(--hairline-strong);color:var(--ink)}.btn:focus-visible{border-color:var(--accent-dim);color:var(--ink);outline:none}.btn-danger{color:#e9aca5;background:#351f1d;border-color:#793b34}.btn-danger:hover,.btn-danger:focus-visible{color:#f4c7c2;border-color:#b0463b}.btn-danger .kbd{color:#db9b94;background:#261917;border-color:#793b34}.legend{align-items:center;gap:2px var(--s3);flex-wrap:wrap;min-width:0;display:flex}.legend-row{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.legend-swatch{flex:none;overflow:visible}.toasts{left:calc(var(--sidebar-w) + (100vw - var(--sidebar-w)) / 2);bottom:calc(var(--axis-h) + 48px);z-index:45;gap:var(--s2);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:fixed;transform:translate(-50%)}@media (width<=620px){.toasts{left:0;right:0;bottom:calc(var(--axis-h) + var(--lane-h,0px) + 96px);transform:none}}.toast{border:1px solid var(--hairline-strong);border-radius:var(--radius);color:var(--ink-2);max-width:min(560px,88vw);animation:toast-in .18s var(--spring);pointer-events:auto;background:#0e0e11f0;padding:8px 14px;font-size:12.5px}.toast strong{font-weight:var(--w-med);color:var(--ink)}.toast.warn{border-color:#78c8d257}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}}.toast-pinned{align-items:flex-start;gap:var(--s3);border-color:var(--accent-dim);color:var(--ink);padding:10px 10px 10px 14px;display:flex}.toast-pinned-body{line-height:1.45}.toast-dismiss{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;flex:none;margin-top:-1px;padding:2px 3px;transition:background .12s,border-color .12s}.toast-dismiss:hover{background:var(--void-3);border-color:var(--hairline)}.toast-dismiss:hover .kbd{border-color:var(--hairline-strong);color:var(--accent)}.toast-dismiss:focus-visible{border-color:var(--accent-dim);outline:none}.next-up{right:var(--s4);bottom:calc(var(--axis-h) + 48px);z-index:24;max-width:min(280px,60vw);animation:next-up-in .26s var(--spring);position:fixed}@keyframes next-up-in{0%{opacity:0;transform:translateY(8px)}}.next-up-card{border:1px solid var(--hairline);border-radius:var(--radius);width:100%;min-width:0;font-family:var(--sans);text-align:left;color:inherit;cursor:pointer;background:#0e0e11f0;gap:3px;padding:7px 10px 8px;transition:background .14s,border-color .14s;display:grid}.next-up-card:hover,.next-up-card:focus-visible{background:var(--void-3);border-color:var(--accent-dim);outline:none}.next-up-arrow{color:var(--accent);text-shadow:0 0 9px hsl(var(--accent-h) 90% 60% / .4);transition:transform .16s var(--spring), text-shadow .16s ease;justify-self:end;margin-top:1px;font-size:13px;line-height:1}.next-up-card:hover .next-up-arrow,.next-up-card:focus-visible .next-up-arrow{text-shadow:0 0 13px hsl(var(--accent-h) 90% 60% / .75);transform:translate(3px)}.next-up-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);font-size:9.5px}.next-up-art{opacity:.72;align-items:flex-end;gap:6px;min-height:22px;transition:opacity .14s;display:flex}.next-up-card:hover .next-up-art,.next-up-card:focus-visible .next-up-art{opacity:1}.next-up-q{color:var(--ink-2);font-size:12px;line-height:1.35}.next-up-card:hover .next-up-q,.next-up-card:focus-visible .next-up-q{color:var(--ink)}.next-up-close{z-index:1;width:20px;height:20px;font-family:var(--sans);color:var(--ink-4);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;padding:0;font-size:13px;line-height:1;transition:color .12s,background .12s,border-color .12s;display:grid;position:absolute;top:3px;right:3px}.next-up-close:hover{color:var(--ink);background:var(--void-3);border-color:var(--hairline)}.next-up-close:focus-visible{color:var(--ink);border-color:var(--accent-dim);outline:none}@media (width<=620px){.next-up{left:var(--s3);right:var(--s3);top:var(--s3);max-width:none;animation-name:next-up-in-top;bottom:auto}.next-up-card{grid-template-columns:minmax(0,1fr) auto;align-items:center}.next-up-eyebrow,.next-up-art{grid-column:1/-1}.next-up-arrow{padding-left:var(--s3);margin-top:0}}@keyframes next-up-in-top{0%{opacity:0;transform:translateY(-8px)}}.detail{top:58px;right:var(--s4);animation:detail-in .22s var(--spring);z-index:25;border:1px solid var(--hairline);border-radius:var(--radius);width:360px;max-height:calc(100vh - 172px);padding:var(--s4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);scrollbar-width:thin;background:#0e0e11e6;position:fixed;overflow-y:auto}@keyframes detail-in{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@media (width<=620px){.detail{width:auto;left:var(--s3);right:var(--s3);max-height:58vh;top:46px}}.detail.detail-pending{padding:var(--s3) var(--s4)}.detail-image{min-height:110px;margin-bottom:var(--s2);justify-content:center;align-items:center;display:flex;position:relative}.detail-watermark{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--hairline);background:#0a0a0cb8;border-radius:4px;padding:2px 6px;font-size:9.5px;position:absolute;bottom:0;right:0}.detail h2{font-size:16px;font-weight:var(--w-med);margin:0 0 2px}.detail .rank{letter-spacing:.11em;text-transform:uppercase;color:var(--ink-4);font-size:10px}.detail dl{margin:var(--s4) 0 0;gap:5px var(--s3);grid-template-columns:auto 1fr;font-size:12px;display:grid}.detail dt{color:var(--ink-4)}.detail dd{color:var(--ink-2);text-align:right;margin:0}.detail .credit{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--hairline);color:var(--ink-4);font-size:11px;line-height:1.5}.detail .credit a{color:var(--ink-3)}.detail .note{margin-top:var(--s3);color:var(--ink-3);border-left:2px solid var(--hairline-strong);padding-left:var(--s3);font-size:11.5px;line-height:1.5}.detail .common-name{color:var(--ink-2);margin:2px 0 3px;font-size:13px}.detail .taxon-link{font:inherit;color:inherit;cursor:pointer;text-align:inherit;border:0;border-bottom:1px dotted var(--hairline-strong);background:0 0;padding:0;transition:color 90ms linear,border-color 90ms linear}.detail .taxon-link:hover,.detail .taxon-link:focus-visible{color:var(--accent);border-bottom-color:var(--accent-dim)}.detail .detail-watermark .taxon-link{border-bottom:0}.detail .fact-browse{font:inherit;color:var(--ink-3);cursor:pointer;margin-left:var(--s2);border:0;border-bottom:1px dotted var(--hairline-strong);background:0 0;padding:0;transition:color 90ms linear,border-color 90ms linear}.detail .fact-browse:hover,.detail .fact-browse:focus-visible{color:var(--accent);border-bottom-color:var(--accent-dim)}.detail .card-actions{margin-top:var(--s3)}.detail .card-action{align-items:center;gap:var(--s2);width:100%;padding:6px var(--s3);border:1px solid var(--hairline-strong);font:inherit;color:var(--ink-2);cursor:pointer;background:#96c8d20b;border-radius:5px;font-size:11.5px;transition:background .11s linear,border-color .11s linear,color .11s linear;display:flex}.detail .card-action:hover,.detail .card-action:focus-visible{border-color:var(--accent-dim);color:var(--ink);background:#96c8d21a}.detail .card-action-sign{font-family:var(--mono);color:var(--ink-4);font-size:13px;line-height:1}.detail .card-action:hover .card-action-sign{color:var(--accent)}.detail .card-action.remove:hover .card-action-sign{color:var(--ink-2)}.detail .card-action .kbd{flex:none;margin-left:auto}.detail .card-actions-refusal{margin-top:var(--s3);color:var(--ink-4);border-left:2px solid var(--hairline);padding-left:var(--s3);font-size:11px;line-height:1.5}.detail h3{margin:var(--s4) 0 var(--s2);font-size:10px;font-weight:var(--w-med);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-4)}.detail .wiki{margin-top:var(--s4)}.detail .wiki-pending{margin-top:var(--s4);display:block}.detail .wiki-extract{color:var(--ink-2);margin:0;font-size:12.5px;line-height:1.55}.detail .wiki-extract.clamped{-webkit-line-clamp:7;line-clamp:7;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.detail .wiki-more{margin-top:var(--s1);font:inherit;color:var(--accent-dim);cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;display:block}.detail .wiki-more:hover{color:var(--accent)}.detail .wiki-scope{margin:0 0 var(--s2);color:var(--ink-4);font-size:11px;line-height:1.45}.detail .wiki-links{margin:var(--s2) 0 0;color:var(--ink-4);font-size:11px}.detail .wiki-links a{color:var(--accent-dim);border-bottom:1px solid var(--hairline-strong);text-decoration:none}.detail .wiki-links a:hover{color:var(--accent)}.detail .wiki-licence{color:var(--ink-4)}.detail .cl-row{display:contents}.detail .cl-pending{margin-top:var(--s1);display:block}.detail .lineage{margin-top:var(--s2)}.detail .lineage>summary,.detail .why>summary{cursor:pointer;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4);font-size:10.5px;list-style:none}.detail .lineage>summary::-webkit-details-marker{display:none}.detail .why>summary::-webkit-details-marker{display:none}.detail .lineage>summary:before,.detail .why>summary:before{content:"▸ ";color:var(--ink-4)}.detail .lineage[open]>summary:before,.detail .why[open]>summary:before{content:"▾ "}.detail .lineage>summary:hover,.detail .why>summary:hover{color:var(--ink-3)}.detail .lineage-chain{margin:var(--s2) 0 0;color:var(--ink-3);font-size:11.5px;line-height:1.65}.detail .lineage-sep{color:var(--ink-4)}.detail .names-label{color:var(--ink-4);text-transform:uppercase;letter-spacing:.09em;font-size:9.5px}.detail .also-called{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--hairline)}.detail .also-called-list{margin:var(--s1) 0 0;color:var(--ink-2);flex-wrap:wrap;align-items:baseline;column-gap:.4em;font-size:12.5px;line-height:1.7;display:flex}.detail .also-called-more{font:inherit;color:var(--accent-dim);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-size:11px}.detail .also-called-more:hover{color:var(--accent)}.detail .also-called{position:relative}.detail .also-called-measure{visibility:hidden;pointer-events:none;width:100%;position:absolute}.detail .also-called-sep{color:var(--ink-4)}.detail .also-called-item{white-space:nowrap}.detail .why{margin-top:var(--s4);padding-top:var(--s3);border-top:1px solid var(--hairline)}.detail .why>.note:first-of-type{margin-top:var(--s2)}.boot{inset:0;left:var(--sidebar-w);text-align:center;padding:var(--s5);pointer-events:none;place-items:center;display:grid;position:fixed}.boot-inner{max-width:560px;color:var(--ink-3);font-size:13.5px;line-height:1.6}.boot-lede{margin:0 0 var(--s4);color:var(--ink-3)}.boot-pending{font-size:13.5px;display:block}.boot-inner h1{font-size:15px;font-weight:var(--w-med);color:var(--ink);letter-spacing:.16em;text-transform:uppercase;margin:0 0 var(--s3)}.boot-alt{color:var(--ink-4);justify-content:center;justify-items:center;font-size:12.5px;display:grid}.boot-more{pointer-events:auto;align-self:center;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);font:inherit;color:var(--ink-3);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:999px;transition:color .14s;display:inline-flex}.boot-more:hover,.boot-more:focus-visible{background:var(--void-3)}.boot-more:hover{color:var(--ink-2)}.boot-more:focus-visible{color:var(--ink);text-underline-offset:3px;outline:none;text-decoration:underline}.boot-more-arrow{transition:transform .16s var(--spring)}.boot-more:hover .boot-more-arrow,.boot-more:focus-visible .boot-more-arrow{transform:translate(3px)}.boot-inner code{font-family:var(--mono);color:var(--accent);background:var(--void-3);border-radius:4px;padding:2px 6px;font-size:12px}.carousel{pointer-events:auto;align-items:center;gap:var(--s1,4px);margin:0 0 var(--s3);grid-template-columns:28px minmax(0,1fr) 28px;display:grid}.carousel-arrow{width:26px;height:26px;font-family:var(--sans);color:var(--ink-4);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;justify-self:center;font-size:17px;line-height:1;transition:color .12s,background .12s,border-color .12s}.carousel-arrow:hover{color:var(--ink);background:var(--void-3);border-color:var(--hairline)}.carousel-arrow:focus-visible{border-color:var(--accent-dim);color:var(--ink);outline:none}.carousel-card{width:100%;min-height:184px;padding:var(--s4) var(--s4) var(--s3);border:1px solid var(--hairline);border-radius:var(--radius);background:var(--void-2);font-family:var(--sans);text-align:center;color:inherit;cursor:pointer;flex-direction:column;transition:background .14s,border-color .14s;animation:.42s ease-out carousel-in;display:flex}.carousel-card:hover,.carousel-card:focus-visible{background:var(--void-3);border-color:var(--accent-dim);outline:none}@keyframes carousel-in{0%{opacity:0}to{opacity:1}}.carousel-art{justify-content:center;align-items:flex-end;gap:var(--s3);min-height:34px;margin-bottom:var(--s2);color:var(--ink-4);transition:color .16s;display:flex}.carousel-card:hover .carousel-art,.carousel-card:focus-visible .carousel-art{color:var(--ink-2)}.carousel-q{color:var(--ink-2);font-size:14px;line-height:1.4;display:block}.carousel-card:hover .carousel-q,.carousel-card:focus-visible .carousel-q{color:var(--ink)}.carousel-a{max-width:46ch;color:var(--ink-4);margin:5px auto 0;font-size:12px;line-height:1.45;display:block}.carousel-card:hover .carousel-a,.carousel-card:focus-visible .carousel-a{color:var(--ink-3)}.carousel-go{justify-content:flex-end;align-self:flex-end;align-items:center;gap:var(--s2);white-space:nowrap;padding-top:var(--s3);font-size:12px;font-weight:var(--w-med);letter-spacing:.02em;color:var(--ink-2);flex-wrap:wrap;margin-top:auto;line-height:1.2;transition:color .14s;display:inline-flex}.carousel-card:hover .carousel-go,.carousel-card:focus-visible .carousel-go{color:var(--ink)}.carousel-go-arrow{color:var(--accent);text-shadow:0 0 10px hsl(var(--accent-h) 90% 60% / .4);transition:transform .16s var(--spring), text-shadow .16s ease}.carousel-card:hover .carousel-go-arrow,.carousel-card:focus-visible .carousel-go-arrow{text-shadow:0 0 14px hsl(var(--accent-h) 90% 60% / .75);transform:translate(3px)}.carousel-go .kbd{background:var(--void);padding:2px 7px;font-size:11px;transition:color .14s,border-color .14s}.carousel-card:hover .carousel-go .kbd,.carousel-card:focus-visible .carousel-go .kbd{border-color:var(--accent-dim);color:var(--ink)}.carousel-dots{margin-top:var(--s2);grid-column:2;justify-content:center;gap:7px;display:flex}.carousel-dot{background:var(--ink-4);opacity:.5;cursor:pointer;border:0;border-radius:50%;width:5px;height:5px;padding:0;transition:opacity .14s,background .14s}.carousel-dot:hover{opacity:1}.carousel-dot.is-on{background:var(--accent-dim);opacity:1}.carousel-dot:focus-visible{outline:1px solid var(--accent-dim);outline-offset:2px}.page{--page-w:62rem;background:var(--void);height:100%;color:var(--ink-3);overflow:hidden auto}.page-bar{z-index:2;padding:var(--s3) max(var(--s4), calc((100% - var(--page-w)) / 2 + var(--s4)));background:linear-gradient(var(--void) 68%, transparent);display:flex;position:sticky;top:0}.page-body{max-width:var(--page-w);padding:0 var(--s4) var(--s6);margin:0 auto}.page-section{margin-top:var(--s6)}.page-h{margin:0 0 var(--s3);font-size:10.5px;font-weight:var(--w-med);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4)}.hero{padding:var(--s5) 0 var(--s4)}.hero-eyebrow{margin:0 0 var(--s2);font-size:10.5px;font-weight:var(--w-med);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-4)}.hero-claim{margin:0 0 var(--s3);letter-spacing:-.015em;max-width:28ch;font-size:clamp(24px,4.4vw,38px);line-height:1.18;font-weight:var(--w-med);color:var(--ink);text-wrap:balance}.hero-sub{margin:0 0 var(--s5);color:var(--ink-3);max-width:54ch;font-size:14.5px;line-height:1.55}.stream{width:100vw;margin-left:calc(50% - 50vw);margin-bottom:var(--s5);color:var(--ink-4);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000);mask-image:linear-gradient(90deg,#0000,#000 12% 88%,#0000)}.stream-track{align-items:flex-end;gap:var(--s5);width:max-content;animation:96s linear infinite stream;display:flex}.stream-track .silhouette{margin-right:0}@keyframes stream{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.stream-track{animation:none}}.hero-actions{gap:var(--s2);flex-wrap:wrap;display:flex}.hero-dark{text-align:center;margin-top:var(--s3);flex-direction:column;align-items:center;gap:10px;display:flex}.hero-dark-h{font-size:15px;font-weight:var(--w-med);letter-spacing:.01em;color:var(--ink-2);margin:0}.hero-dark-p{color:var(--ink-3);margin:0;font-size:12.5px}@media (width>=1024px){.hero{column-gap:var(--s6);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.hero-eyebrow{grid-area:1/1}.hero-claim{grid-area:2/1}.hero-sub{grid-area:3/1}.hero-dark{text-align:left;grid-area:2/2/4/3;align-self:center;align-items:flex-start;margin-top:0}.stream{grid-area:4/1/5/-1}}.btn-glow{color:#a8e9f0;background:#23b7c712;border-color:#44d4e452;padding:8px 14px;font-size:12.5px;animation:5.2s ease-in-out infinite glow-breathe;position:relative;overflow:hidden}.btn-glow:before{content:"";pointer-events:none;background:radial-gradient(120px 40px at 0%,#70f1ff29,#0000 70%);animation:11s linear infinite glow-drift;position:absolute;inset:0}.btn-glow>*{position:relative}.btn-glow .kbd{color:#9ddfe7;background:#12282b;border-color:#33bdcc66}.btn-glow:hover,.btn-glow:focus-visible{color:#c6f5fa;border-color:#51dcec99}@keyframes glow-breathe{0%,to{text-shadow:0 0 8px #33ebff33;box-shadow:0 0 10px #33ebff0f,inset 0 0 14px #33ebff08}50%{text-shadow:0 0 14px #33ebff80;box-shadow:0 0 24px #33ebff3d,inset 0 0 20px #33ebff1a}}@keyframes glow-drift{0%{transform:translate(-60%)}to{transform:translate(160%)}}.feature-grid{gap:var(--s3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:0;padding:0;list-style:none;display:grid}.feature{padding:var(--s3);border:1px solid var(--hairline);border-radius:var(--radius);background:var(--void-2)}.feature-h{margin:0 0 var(--s1);font-size:13px;font-weight:var(--w-med);color:var(--ink-2);line-height:1.3}.feature-p{color:var(--ink-3);margin:0;font-size:12.5px;line-height:1.55}.feature-p em{color:var(--ink-2);font-style:italic}.page-list{gap:var(--s3) var(--s5);color:var(--ink-3);grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));margin:0;padding:0;font-size:13px;line-height:1.6;list-style:none;display:grid}.page-list li{max-width:34rem;padding-left:var(--s4);margin:0;position:relative}.page-list li:before{content:"";background:var(--hairline-strong);border-radius:50%;width:3px;height:3px;position:absolute;top:.62em;left:3px}.page-list strong{font-weight:var(--w-med);color:var(--ink-2)}.page-list em{color:var(--ink-2);font-style:italic}.about-src{font-weight:var(--w-med);color:var(--ink-2);border-bottom:1px solid var(--hairline-strong);text-decoration:none;transition:color .12s,border-color .12s}.about-src:hover,.about-src:focus-visible{color:var(--accent);border-bottom-color:var(--accent-dim);outline:none}.page-foot{align-items:center;gap:var(--s3);margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid var(--hairline);flex-wrap:wrap;display:flex}.page-foot-p{color:var(--ink-4);margin:0;font-size:12px;line-height:1.5}.page-foot-p em{color:var(--ink-3);font-style:italic}.page-foot-p .mono{font-family:var(--mono);font-size:11px}.page-foot .btn{margin-left:auto}.canvas.biolum{background:#010406}.canvas.biolum:before{background-image:none}.water{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.biolum .trace-core{opacity:.34}.biolum .trace-halo{opacity:0}.biolum .mark:before{content:"";--corona-a:.1;--corona-r:9px;inset:calc(-1 * var(--corona-r));opacity:var(--corona-a);pointer-events:none;transition:opacity .2s var(--spring);background:radial-gradient(circle,currentColor 0%,#0000 62%);border-radius:50%;position:absolute}.biolum .mark.is-leaf:before{--corona-a:.2;--corona-r:14px}.biolum .mark.is-mrca:before{--corona-a:.26;--corona-r:17px}.biolum .mark.is-graft:before{--corona-a:.16;--corona-r:13px}.biolum .mark.is-focus:before,.biolum .mark:hover:before{--corona-a:.4;--corona-r:20px}.biolum .mark .silhouette{opacity:1;filter:drop-shadow(0 0 6px hsl(var(--hue,190) 96% 60% / .7))}.biolum .mark-name{color:var(--ink);text-shadow:0 0 10px #45daf747}.biolum .mark-meta,.biolum .mark-age{color:var(--ink-3)}.biolum .mark-label.crowded .mark-text{background:#040b10d6;box-shadow:0 0 0 1px #52cde01f}.biolum .axis{background:linear-gradient(#0000,#02060a 54%)}.biolum .drill{background:#060e14f2}body.biolum .sidebar,body.biolum .side-search-btn,body.biolum .side-toggle{background:#081216f0;border-color:#47bfd138}body.biolum .side-toggle:hover,body.biolum .viewport-btn:hover:not([aria-disabled=true]),body.biolum .viewport-btn.on{background:#0d1a21;border-color:#47bfd157}body.biolum .side-search-btn{border-color:#49d0df6b;box-shadow:inset 0 0 10px #3decff12}body.biolum .side-search-btn:hover,body.biolum .side-search-btn:focus-visible{border-color:#5adeedb3;box-shadow:inset 0 0 12px #3decff1f}body.biolum .carousel-card{background:#09151b6b;border-color:#47bfd133}body.biolum .carousel-card:hover,body.biolum .carousel-card:focus-visible{background:#0b1b2280;border-color:#47bfd16b}.side-modes{min-width:0;font-family:var(--sans);letter-spacing:.04em;white-space:nowrap;color:var(--ink-3);flex-direction:column;gap:10px;font-size:11px;display:flex}.side-modes .mode-chip{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px 7px;display:grid}.side-modes .mode-chip .mode-key:not(:empty){grid-area:1/1}.side-modes .mode-chip .mode-name{grid-area:1/2;justify-self:start}.side-modes .mode-chip .mode-track{grid-area:2/1/auto/-1;width:100%}.side-modes .mode-seg{text-align:center;flex:1 1 0}.mode-chip{grid-column:1/-1;grid-template-columns:subgrid;border-radius:6px;align-items:center;row-gap:2px;margin:0 -4px;padding:2px 4px 3px;transition:background .14s,box-shadow .14s;display:grid}.mode-key:not(:empty){font-family:var(--mono);border:1px solid var(--hairline);color:var(--ink-4);text-align:center;border-radius:4px;padding:1px 4px;font-size:10px}.mode-chip:hover .mode-key:not(:empty){border-color:var(--hairline-strong);color:var(--ink-3)}.mode-name{font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-4);grid-column:1/-1;justify-self:start;font-size:9px}.mode-track{background:#96c8d20b;border-radius:6px;justify-self:stretch;align-items:center;gap:1px;padding:2px;transition:background .14s;display:flex}.mode-seg{appearance:none;text-align:center;font:inherit;letter-spacing:inherit;color:var(--ink-4);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex:auto;padding:2px 6px;transition:background .14s,color .14s,border-color .14s}.mode-seg:hover{color:var(--ink-2)}.mode-seg:focus-visible{border-color:var(--accent-dim);color:var(--ink);outline:none}.mode-seg.is-on{background:var(--void-2);border-color:var(--hairline);color:var(--ink-2);cursor:default}.biolum-mode.is-lit .mode-name{color:#59c3cf}.biolum-mode.is-lit .mode-seg.is-on{color:#94e7f0;text-shadow:0 0 9px #33ebff66;background:#23b7c724;border-color:#44d4e44d}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.btn-glow{text-shadow:0 0 14px #33ebff80!important;box-shadow:0 0 24px #33ebff3d,inset 0 0 20px #33ebff1a!important}.btn-glow:before{display:none}}
