.base-tooltip-wrapper{z-index:calc(var(--z-toast) + 1);transition:opacity var(--duration-fast) var(--ease-out);width:max-content}.base-tooltip{position:relative;display:flex;flex-direction:column;background:var(--glass-fill);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel);max-width:320px;word-wrap:break-word;line-height:1.4;pointer-events:auto;cursor:auto;overflow:hidden}.base-tooltip[style*="--tooltip-accent-rgb"]{border-color:rgba(var(--tooltip-accent-rgb),.35)}.base-tooltip.pinned{border-color:var(--accent-stroke,var(--accent-primary));box-shadow:var(--shadow-panel),0 0 0 2px rgba(var(--accent-primary-rgb),.15)}.base-tooltip.pinned[style*="--tooltip-accent-rgb"]{border-color:rgba(var(--tooltip-accent-rgb),.7);box-shadow:var(--shadow-panel),0 0 0 2px rgba(var(--tooltip-accent-rgb),.25),0 0 12px rgba(var(--tooltip-accent-rgb),.15)}.base-tooltip--controls{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr)}.base-tooltip--controls>.tooltip-content{grid-column:1;grid-row:1;padding-right:var(--space-1)}.tooltip-floating-controls{display:flex;align-items:center;gap:2px;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out)}.base-tooltip--controls>.tooltip-floating-controls{grid-column:2;grid-row:1;align-self:start;padding:6px 6px 0 0}:not(.base-tooltip--controls)>.tooltip-floating-controls{position:absolute;top:6px;right:6px;z-index:1}.base-tooltip--controls.base-tooltip--close-in-header{--tooltip-close-inset:0px;--tooltip-close-clearance:28px;grid-template-columns:minmax(0,1fr)}.base-tooltip--controls.base-tooltip--close-in-header>.tooltip-content{padding-right:10px}.base-tooltip--controls.base-tooltip--close-in-header>.tooltip-floating-controls{grid-column:1;justify-self:end;z-index:1;margin:var(--tooltip-close-top,calc(8px + var(--tooltip-close-inset))) calc(10px + var(--tooltip-close-inset)) 0 0;padding:0}.base-tooltip--close-in-header .di-disc:after{left:-3px}.base-tooltip.pinned .tooltip-floating-controls,.base-tooltip:focus-within .tooltip-floating-controls,.base-tooltip:hover .tooltip-floating-controls{opacity:1;pointer-events:auto}@media (hover:none){.tooltip-floating-controls{opacity:1;pointer-events:auto}}.tooltip-floating-controls>*+.di-disc:after{left:-2px}.tooltip-floating-controls .control-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:var(--background-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:var(--ink-tertiary);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.tooltip-floating-controls .control-btn.pin-btn svg{transform:rotate(-45deg);transition:transform var(--duration-fast) var(--ease-out)}.mapbox-popup-pinned .tooltip-floating-controls .control-btn.pin-btn svg,.tooltip-floating-controls .control-btn.pin-btn.active svg,.tooltip-floating-controls .control-btn.pin-btn.pinned svg{transform:none}.tooltip-floating-controls .control-btn svg{width:10px;height:10px;flex-shrink:0}@media (hover:hover){.tooltip-floating-controls .control-btn:hover{background:var(--background-tertiary);color:var(--ink-primary);border-color:var(--border-default)}}.tooltip-floating-controls .control-btn.active{color:var(--ink-accent);background:var(--accent-subtle);border-color:var(--accent-stroke,var(--accent-primary))}:where(.scheme-sentinel,.scheme-operator,.scheme-slicer) .tooltip-floating-controls .control-btn.active{color:var(--accent-stroke,var(--accent-primary))}.tooltip-content{padding:10px;font-size:var(--text-xs);line-height:var(--leading-snug);color:var(--ink-primary);flex:1 1 auto;min-height:0;min-width:0;max-width:100%;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--border-strong) #0000}.tooltip-content::-webkit-scrollbar{width:5px}.tooltip-content::-webkit-scrollbar-track{background:#0000}.tooltip-content::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.tooltip-readout{display:flex;flex-direction:column;gap:2px;min-width:0}.tooltip-readout__value{display:inline-flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-semibold);font-variant-numeric:tabular-nums;color:var(--ink-primary)}.tooltip-readout__label{font-size:var(--text-2xs);color:var(--ink-secondary)}.tooltip-readout__delta{font-size:var(--text-2xs);font-weight:var(--font-medium);font-variant-numeric:tabular-nums}.tooltip-readout__delta--up{color:var(--status-success)}.tooltip-readout__delta--down{color:var(--status-error)}.tooltip-readout__swatches{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);margin-top:2px}.tooltip-readout__swatch{display:inline-flex;align-items:center;gap:var(--space-1);font-variant-numeric:tabular-nums}.tooltip-readout__swatches--list{flex-direction:column;align-items:flex-start;gap:2px;max-width:280px}.tooltip-readout__swatch--item{color:var(--ink-secondary);line-height:1.4}.tooltip-readout__more{color:var(--ink-tertiary)}.tooltip-readout__dot{width:6px;height:6px;border-radius:50%;background:var(--dot,var(--ink-tertiary))}.base-tooltip-actions{display:none}.base-tooltip-body{padding:10px}.base-tooltip.artifact-tooltip-content{width:320px;max-width:min(320px,90vw)}.artifact-tooltip-content .tooltip-content{padding:10px}.entity-tooltip-content{min-width:200px}.source-tooltip-content{min-width:280px;max-width:400px}.source-tooltip-content::-webkit-scrollbar{width:6px}.source-tooltip-content::-webkit-scrollbar-track{background:#0000}.source-tooltip-content::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:3px}.source-tooltip-content::-webkit-scrollbar-thumb:hover{background:var(--ink-muted)}.source-tooltip-body{display:flex;flex-direction:column;gap:8px}.source-tooltip-header{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.source-tooltip-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--indicator-green-bg);color:var(--indicator-green-ink)}.source-tooltip-title{flex:1;font-size:var(--text-base);font-weight:600;color:var(--ink-primary)}.source-tooltip-type{font-size:var(--text-2xs);color:var(--ink-tertiary);background:var(--background-tertiary);padding:3px 8px;border-radius:var(--radius-xs)}.source-tooltip-original{font-size:var(--text-xs);color:var(--ink-secondary)}.source-tooltip-section{display:flex;flex-direction:column;gap:4px}.source-tooltip-label{font-size:var(--text-2xs);color:var(--ink-tertiary);text-transform:uppercase;letter-spacing:.05em}.chat-tooltip-body{display:flex;flex-direction:column;padding:4px 2px}.chat-tooltip-header{display:flex;align-items:center;gap:8px}.chat-tooltip-header svg{width:16px;height:16px;flex-shrink:0;color:var(--ink-accent)}:where(.scheme-sentinel,.scheme-operator,.scheme-slicer) .chat-tooltip-header svg{color:var(--accent-stroke,var(--accent-primary))}.chat-tooltip-title{font-size:var(--text-xs);font-weight:600;color:var(--ink-primary);letter-spacing:-.01em}.chat-tooltip-description{font-size:var(--text-xs);line-height:1.45;color:var(--ink-secondary);margin:4px 0 0}.source-tooltip-analysis{font-size:var(--text-xs);color:var(--ink-primary);line-height:1.5}.source-tooltip-empty{font-size:var(--text-xs);color:var(--ink-tertiary);font-style:italic}.source-tooltip-tags{display:flex;flex-wrap:wrap;gap:4px;padding-top:8px;border-top:1px solid var(--border-subtle)}.source-tooltip-tag{font-size:var(--text-2xs);color:var(--ink-tertiary);background:var(--background-tertiary);padding:2px 8px;border-radius:var(--radius-xs)}.date-tooltip-content{min-width:240px}.date-tooltip-body{display:flex;flex-direction:column;gap:10px}.date-tooltip-header{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.date-tooltip-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--indicator-orange-bg);color:var(--indicator-orange-ink)}.date-tooltip-title{font-size:var(--text-base);font-weight:600;color:var(--ink-primary)}.date-tooltip-section{display:flex;flex-direction:column;gap:2px}.date-tooltip-label{font-size:var(--text-2xs);color:var(--ink-tertiary);text-transform:uppercase;letter-spacing:.05em}.date-tooltip-value{font-size:var(--text-xs);font-weight:500;color:var(--ink-primary)}.date-tooltip-relative{font-size:var(--text-2xs);color:var(--ink-tertiary)}.date-tooltip-type{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--border-subtle)}.date-tooltip-tag{font-size:var(--text-2xs);color:var(--ink-tertiary);background:var(--background-tertiary);padding:2px 8px;border-radius:var(--radius-xs)}.tooltip-floating-controls .control-btn:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.base-tooltip .tooltip-content{user-select:text;-webkit-user-select:text}@media (max-width:768px),(pointer:coarse){.tooltip-floating-controls>*{position:relative}.tooltip-floating-controls>:is(*,.di-disc):after{content:"";position:absolute;top:-6px;right:-6px;bottom:calc(100% - 38px);left:calc(100% - 38px)}.tooltip-floating-controls>:is(*,.di-disc):has(+*):after{right:-1px;left:calc(100% - 43px)}.tooltip-floating-controls>*+:is(*,.di-disc):after{left:-1px}}.base-tooltip.explainer,.explainer{position:relative;background:var(--glass-fill);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-popover);overflow:hidden;transform-origin:bottom;animation:arrive var(--duration-normal) var(--ease-out) backwards}.base-tooltip.explainer{width:320px}.base-tooltip.explainer>.tooltip-content{padding:0}.explainer__accent{position:absolute;top:0;right:0;left:0;height:1px;background:linear-gradient(90deg,#0000 0,var(--accent-primary) 50%,#0000 100%);opacity:.7;animation:accentSweep var(--duration-slow) var(--ease-out) var(--duration-fast) backwards;pointer-events:none}@keyframes accentSweep{0%{opacity:0;transform:scaleX(.4)}}@media (prefers-reduced-motion:reduce){.explainer__accent{animation:none}}.explainer__body{display:flex;flex-direction:column;padding:14px 16px 16px}.explainer__header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.explainer__icon{display:inline-flex;flex-shrink:0;color:var(--ink-accent)}:where(.scheme-sentinel,.scheme-operator,.scheme-slicer) .explainer__icon{color:var(--accent-primary)}.explainer--warning .explainer__accent{background:linear-gradient(90deg,#0000 0,var(--status-warning) 50%,#0000 100%)}.explainer--warning .explainer__icon{color:var(--status-warning)}.explainer__icon svg{width:var(--icon-size);height:var(--icon-size);font-size:var(--icon-size)}.explainer__title{flex:1;color:var(--ink-primary);font-size:var(--text-xs);font-weight:600;letter-spacing:-.01em}.explainer__description{margin:0;color:var(--ink-secondary);font-size:var(--text-xs);line-height:1.55}.binary-segment{position:relative;display:inline-flex;box-sizing:border-box;align-items:center;width:36px;height:20px;background:var(--background-inset);border:1px solid rgba(var(--black-rgb),.08);border-radius:10px;padding:1px;flex-shrink:0;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.binary-segment:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.binary-segment--disabled{opacity:.4;pointer-events:none}.binary-segment__knob{width:16px;height:16px;border-radius:50%;background:rgb(var(--white-rgb));box-shadow:var(--shadow-card);transition:transform var(--duration-normal) var(--ease-out)}.binary-segment:active .binary-segment__knob{transform:scale(.92)}.binary-segment--on{background:var(--toggle-on-fill,var(--accent-primary));background-origin:border-box}.binary-segment--on .binary-segment__knob{background:var(--ink-on-accent);transform:translateX(16px)}.binary-segment--on:active .binary-segment__knob{transform:translateX(16px) scale(.92)}