.dtip { position: relative; border: 1px solid var(--border, #e2e8f0); border-radius: .5rem; overflow: hidden; background: #fff; }
.dtip svg { display: block; width: 100%; height: auto; }
.dtip .mono { font-family: Menlo, Consolas, monospace; }
.dtip .sans { font-family: Inter, "Helvetica Neue", Arial, sans-serif; }
.dtip [data-tip] { cursor: pointer; outline: none; }
.dtip [data-tip] .dtip-box { transition: fill .15s, stroke-width .15s, filter .15s; }
.dtip [data-tip]:hover .dtip-box,
.dtip [data-tip]:focus .dtip-box,
.dtip [data-tip].is-on .dtip-box { stroke-width: 5; filter: drop-shadow(0 2px 6px rgba(15, 23, 42, .18)); }
.dtip [data-tip] .dtip-fill { fill: transparent; transition: fill .15s; }
.dtip [data-tip]:hover .dtip-fill,
.dtip [data-tip]:focus .dtip-fill,
.dtip [data-tip].is-on .dtip-fill { fill: rgba(37, 99, 235, .12); }
.dtip .dtip-edge { transition: stroke .15s, stroke-width .15s; }
.dtip .dtip-edge.is-hl { stroke: #0f172a; stroke-width: 4; }
.dtip[hidden] { display: none; }
.dtip-tabs { display: inline-flex; gap: .25rem; padding: .25rem; border: 1px solid var(--border, #e2e8f0); border-radius: .5rem; background: #f8fafc; align-self: flex-start; }
.dtip-tabs button { font-size: .8125rem; font-weight: 500; padding: .35rem .75rem; border-radius: .375rem; color: #475569; background: transparent; cursor: pointer; }
.dtip-tabs button[aria-selected="true"] { background: #fff; color: #0f172a; box-shadow: 0 1px 3px rgba(15, 23, 42, .12); }
.dtip-hint { font-size: .75rem; color: var(--muted-foreground, #64748b); }

.dtip-tip { position: fixed; z-index: 1000; max-width: min(400px, calc(100vw - 16px)); background: #0f172a; color: #e2e8f0; border-radius: .5rem; padding: .6rem .75rem; font-size: 12px; line-height: 1.45; box-shadow: 0 8px 24px rgba(15, 23, 42, .25); pointer-events: none; }
.dtip-tip-title { font-weight: 600; color: #fff; margin-bottom: .35rem; }
.dtip-tip-body { margin: 0; white-space: pre-wrap; font-family: Menlo, Consolas, monospace; font-size: 11px; color: #bfdbfe; }
.dtip-tip-note { margin-top: .4rem; color: #94a3b8; }
.dtip-tip-note:empty { display: none; }
