.graph{--graph-top:4.75rem;--graph-gap:.75rem}.graph-stage{z-index:0;background:radial-gradient(ellipse at 50% 40%, color-mix(in srgb, var(--surface) 55%, var(--background)) 0%, var(--background) 70%);transition:opacity .2s;position:fixed;inset:0}.graph[data-pending=true] .graph-stage{opacity:.55}.graph-stage canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block}.graph-stage canvas.dragging{cursor:grabbing}.graph-empty{color:var(--muted-foreground);pointer-events:none;place-items:center;margin:0;font-size:.9rem;display:grid;position:absolute;inset:0}.graph-float{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(160%)blur(12px);box-shadow:var(--shadow-md);border-radius:.75rem}.graph-toggle{left:var(--graph-gap);top:var(--graph-top);z-index:31;border:1px solid var(--border-strong);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(160%)blur(12px);width:2.25rem;height:2.25rem;box-shadow:var(--shadow-md);color:var(--muted-foreground);cursor:pointer;border-radius:.625rem;place-items:center;display:grid;position:fixed}.graph-toggle:hover,.graph-toggle[data-open=true]{color:var(--foreground);border-color:var(--ring)}.graph-controls{left:var(--graph-gap);top:calc(var(--graph-top) + 2.25rem + .5rem);bottom:var(--graph-gap);z-index:30;width:min(21rem, calc(100vw - 2 * var(--graph-gap)));max-height:calc(100vh - var(--graph-top) - 2.25rem - .5rem - var(--graph-gap));border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(160%)blur(12px);box-shadow:var(--shadow-md);scrollbar-width:thin;border-radius:.75rem;font-size:.85rem;position:fixed;overflow:auto}.graph-controls[data-open=false]{display:none}.graph-controls-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:.75rem;padding:.8rem 1rem .6rem;display:flex}.graph-controls-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:1rem;font-weight:700}.graph-count{color:var(--muted-foreground);white-space:nowrap;font-size:.75rem}.graph-controls details{border-bottom:1px solid var(--border)}.graph-controls details:last-child{border-bottom:0}.graph-controls summary{cursor:pointer;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-foreground);-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;padding:.6rem 1rem;font-size:.72rem;font-weight:700;list-style:none;display:flex}.graph-controls summary::-webkit-details-marker{display:none}.graph-controls summary:before{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:.35rem;height:.35rem;transition:transform .15s;transform:rotate(-45deg)}.graph-controls details[open]>summary:before{transform:rotate(45deg)}.graph-controls summary:hover{color:var(--foreground)}.graph-controls details>:not(summary){max-width:calc(100% - 2rem);margin-inline:1rem}.graph-controls details>:last-child{margin-bottom:.8rem}.graph-search{padding:.5rem .8rem}.graph-modes{gap:.35rem;display:flex}.graph-modes .pill{flex:1;justify-content:center;padding:.4rem .6rem;font-size:.8rem}.graph-dims{flex-wrap:wrap;gap:.35rem;display:flex}.graph-dim{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--muted-foreground);cursor:pointer;white-space:nowrap;border-radius:9999px;align-items:center;gap:.35rem;padding:.2rem .65rem;font-size:.76rem;transition:color .15s,border-color .15s;display:inline-flex}.graph-dim i{background:var(--tone,var(--muted-foreground));opacity:.35;border-radius:9999px;width:.5rem;height:.5rem}.graph-dim b{opacity:.6;font-variant-numeric:tabular-nums;font-weight:600}.graph-dim[data-on=true]{color:var(--foreground);border-color:var(--border-strong)}.graph-dim[data-on=true] i{opacity:1}.graph-dim:hover{border-color:var(--ring)}.graph-chips{flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.5rem;display:flex}.graph-hint{color:var(--muted-foreground);font-size:.76rem;line-height:1.4}.graph-chip{background:var(--surface-2);border:1px solid color-mix(in srgb, var(--tone) 40%, transparent);color:var(--tone);border-radius:9999px;align-items:center;gap:.35rem;padding:.2rem .3rem .2rem .7rem;font-size:.78rem;display:inline-flex}.graph-chip button{all:unset;cursor:pointer;border-radius:9999px;place-items:center;width:1.1rem;height:1.1rem;font-size:.9rem;line-height:1;display:grid}.graph-chip button:hover{background:color-mix(in srgb, var(--tone) 20%, transparent)}.graph-timeline-row{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:.6rem;font-size:.78rem;display:flex}.graph-range{color:var(--foreground);font-weight:600}.graph-quick{flex-wrap:wrap;gap:.25rem;margin-top:.4rem;display:flex}.graph-quick button{all:unset;cursor:pointer;color:var(--muted-foreground);border-radius:.4rem;padding:.15rem .5rem;font-size:.74rem}.graph-quick button:hover,.graph-quick button[data-active=true]{color:var(--foreground);background:var(--surface-2)}.graph-tl{width:100%;height:58px;margin-top:.4rem;display:block}.graph-tl-bar{fill:var(--border-strong)}.graph-tl-axis text{fill:var(--muted-foreground);font-size:10px}.graph-tl-brush .selection{fill:color-mix(in srgb, var(--accent) 18%, transparent);stroke:var(--accent);stroke-width:1px}.graph-tl-brush .handle{fill:var(--accent)}.graph-notice{color:var(--warning);margin:.5rem 0 0;font-size:.76rem;line-height:1.4}.graph-hud{right:var(--graph-gap);top:var(--graph-top);z-index:30;gap:.35rem;display:flex;position:fixed}.graph-hud button{all:unset;cursor:pointer;border:1px solid var(--border-strong);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(160%)blur(12px);width:2.25rem;height:2.25rem;box-shadow:var(--shadow-md);color:var(--muted-foreground);border-radius:.625rem;place-items:center;font-size:1rem;display:grid}.graph-hud button:hover{color:var(--foreground);border-color:var(--ring)}.graph-legend{right:var(--graph-gap);bottom:var(--graph-gap);z-index:30;border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 85%, transparent);color:var(--muted-foreground);pointer-events:none;border-radius:.625rem;flex-wrap:wrap;gap:.3rem .9rem;padding:.45rem .8rem;font-size:.74rem;display:flex;position:fixed}.graph-legend span:before{content:"";background:var(--c);vertical-align:middle;border-radius:9999px;width:.55rem;height:.55rem;margin-right:.4rem;display:inline-block}.graph-tip{z-index:5;border:1px solid var(--border-strong);background:color-mix(in srgb, var(--surface) 96%, transparent);max-width:min(22rem,70vw);box-shadow:var(--shadow-lg);pointer-events:none;border-radius:.6rem;padding:.5rem .7rem;font-size:.8rem;line-height:1.35;position:absolute}.graph-tip b{font-weight:600;display:block}.graph-tip small{color:var(--muted-foreground)}.graph-panel{right:var(--graph-gap);top:calc(var(--graph-top) + 2.25rem + .5rem);bottom:calc(var(--graph-gap) + 2.6rem);z-index:32;width:min(22rem, calc(100vw - 2 * var(--graph-gap)));border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:saturate(160%)blur(12px);box-shadow:var(--shadow-lg);border-radius:.75rem;flex-direction:column;display:flex;position:fixed;overflow:hidden}.graph-panel header{border-bottom:1px solid var(--border);align-items:flex-start;gap:.6rem;padding:.9rem 1rem .6rem;display:flex}.graph-panel header h3{font-family:var(--font-sans);letter-spacing:0;flex:1;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.graph-panel header button{all:unset;cursor:pointer;color:var(--muted-foreground);padding:.1rem .3rem;font-size:1.1rem;line-height:1}.graph-panel header button:hover{color:var(--foreground)}.graph-panel-body{padding:.6rem 1rem 1rem;font-size:.85rem;overflow:auto}.graph-meta{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:.78rem}.graph-panel-tags{flex-wrap:wrap;gap:.3rem;margin:.6rem 0;display:flex}.graph-panel-tags button{cursor:pointer;font:inherit}.graph-panel-actions{flex-wrap:wrap;gap:.4rem;margin-top:.8rem;display:flex}.graph-panel-actions .btn-primary,.graph-panel-actions .btn-ghost{padding:.45rem .8rem;font-size:.82rem}.graph-panel-list{margin:.6rem 0 0;padding:0;list-style:none}.graph-panel-list li{border-top:1px solid var(--border);grid-template-columns:5rem 1fr;align-items:baseline;gap:.6rem;padding:.45rem 0;display:grid}.graph-panel-list li:first-child{border-top:0}.graph-panel-list a{text-decoration:none}.graph-panel-list a:hover{color:var(--accent)}@media (max-width:40rem){.graph-controls,.graph-panel{left:var(--graph-gap);right:var(--graph-gap);top:auto;bottom:var(--graph-gap);width:auto;max-height:58vh}.graph-legend{display:none}}
