@peasant-labs/fairtrade 0.0.25 → 0.0.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/{GraphLegend-sgixmPER.js → GraphLegend-kO2WP4yM.js} +1248 -1162
- package/dist/lib/analytics.css +1 -1
- package/dist/lib/analytics.js +29 -21
- package/dist/lib/base.css +4 -2
- package/dist/lib/commons.js +815 -829
- package/dist/lib/components.css +1 -1
- package/dist/lib/fonts.css +19 -21
- package/dist/lib/graph.css +1 -1
- package/dist/lib/graph.js +418 -420
- package/dist/lib/tokens.css +7 -4
- package/dist/lib/tokens.json +20 -7
- package/dist/lib/types/BrandMark.d.ts +2 -2
- package/dist/lib/types/ConnectionState.d.ts +2 -2
- package/dist/lib/types/DataTable.d.ts +74 -10
- package/dist/lib/types/DiffView.d.ts +1 -1
- package/dist/lib/types/GroupedMultiSelect.d.ts +1 -1
- package/dist/lib/types/HelperGroup.d.ts +3 -3
- package/dist/lib/types/Publish.d.ts +4 -4
- package/dist/lib/types/Redaction.d.ts +2 -2
- package/dist/lib/types/Settings.d.ts +6 -0
- package/dist/lib/types/Timeline.d.ts +5 -5
- package/dist/lib/types/analytics/format.d.ts +5 -5
- package/dist/lib/types/format.d.ts +4 -0
- package/dist/lib/types/index.d.ts +1 -1
- package/dist/lib/types/redaction-categories.d.ts +17 -0
- package/dist/lib/types/transcript/TurnCard.d.ts +3 -1
- package/dist/lib/types/transcript/scroll-position.d.ts +10 -0
- package/dist/lib/types/transcript/state-capabilities.d.ts +1 -1
- package/dist/lib/types/transcript/title.d.ts +1 -1
- package/dist/lib/types/transcript/view-model.d.ts +2 -2
- package/dist/lib/ui-Y-iKXft1.js +14076 -0
- package/dist/lib/ui.js +4 -4
- package/package.json +17 -9
- package/dist/lib/ui-C2WXsEFz.js +0 -23542
package/dist/lib/fonts.css
CHANGED
|
@@ -1,28 +1,26 @@
|
|
|
1
|
-
/* @peasant-labs/fairtrade
|
|
1
|
+
/* @peasant-labs/fairtrade/fonts.css - DEPRECATED for apps. Do not import it from an app.
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
app
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
These are neuroinclusive faces (high legibility, disambiguated glyphs); do not substitute.
|
|
10
|
-
Importing this file is the self-contained option. For best performance, prefer the documented
|
|
11
|
-
<link> form below (it lets the browser preconnect and avoids an extra CSS round-trip from @import).
|
|
12
|
-
|
|
13
|
-
--- Option A: @import (this file). Just `@import "@peasant-labs/fairtrade-lib/fonts.css";`
|
|
14
|
-
or add it to a <link rel="stylesheet">. Simplest; one extra request hop vs. Option B. */
|
|
15
|
-
@import url("https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&family=Atkinson+Hyperlegible+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");
|
|
16
|
-
|
|
17
|
-
/* --- Option B: <link> + preconnect (recommended for apps). Put this in your <head> INSTEAD of
|
|
18
|
-
importing this file, so the browser can warm the connections early:
|
|
3
|
+
App path (the only one): load the faces with a <link> in the document head, with preconnect,
|
|
4
|
+
exactly as the design-system app does (index.html). Never pull this file into an app
|
|
5
|
+
stylesheet: its remote @import is an extra render-blocking hop the browser cannot preconnect.
|
|
6
|
+
tokens.css, base.css and components.css never import it, and the library build fails if a
|
|
7
|
+
remote font @import ever reaches them (scripts/finalize-lib-build.mjs).
|
|
19
8
|
|
|
20
9
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
21
10
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
22
11
|
<link rel="stylesheet"
|
|
23
12
|
href="https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&family=Atkinson+Hyperlegible+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap">
|
|
24
13
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
14
|
+
This file stays in the package only for non-app contexts that have no document head of their
|
|
15
|
+
own (a standalone HTML sample, a docs or capture tool). The faces it loads are the canonical
|
|
16
|
+
two families, weights matched exactly:
|
|
17
|
+
- Atkinson Hyperlegible ital,wght 0,400; 0,700; 1,400; 1,700 (--font-body)
|
|
18
|
+
- Atkinson Hyperlegible Mono ital,wght 0,400; 0,500; 0,600; 0,700; 1,400 (--font-mono / --font-display)
|
|
19
|
+
display=swap keeps text visible during load (no FOIT). These are neuroinclusive faces (high
|
|
20
|
+
legibility, disambiguated glyphs); do not substitute.
|
|
21
|
+
|
|
22
|
+
Self-hosting: if you cannot reach Google Fonts (offline, CSP, privacy), self-host the same
|
|
23
|
+
families (e.g. via @fontsource/atkinson-hyperlegible) and keep the family names identical to
|
|
24
|
+
the token contract: "Atkinson Hyperlegible" and "Atkinson Hyperlegible Mono". The token
|
|
25
|
+
--font-* values in tokens.css already fall back to ui-sans-serif / ui-monospace stacks. */
|
|
26
|
+
@import url("https://fonts.googleapis.com/css2?family=Atkinson+Hyperlegible:ital,wght@0,400;0,700;1,400;1,700&family=Atkinson+Hyperlegible+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");
|
package/dist/lib/graph.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@layer graph{.gmp-root{background:var(--canvas);min-width:0;height:100%;min-height:0;font-family:var(--font-body);--gmp-map-pad-x:max(var(--sp-4), calc((100% - 1360px) / 2));flex-direction:column;display:flex}.gmp-map-canvas-region{border:var(--bd);background:var(--canvas);height:100%;min-height:0;position:relative}.gmp-map-legend{align-items:center;gap:var(--sp-4);row-gap:var(--sp-1);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.gmp-map-swatch{width:10px;height:10px;margin-right:var(--sp-1);vertical-align:middle;border:1px solid var(--rule-strong);background:var(--surface-elev);display:inline-block}.gmp-map-swatch--empty{border-color:var(--ink-5);background:var(--surface)}.gmp-map-swatch--edge{border:0;border-top:1px solid var(--rule-strong);background:0 0;width:16px;height:0;margin-top:-1px}.gmp-map-legend-danger{color:var(--danger)}.gmp-navigator{background:var(--canvas);min-height:100%;color:var(--ink);flex-direction:column;display:flex}.gmp-navigator-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-4);border-bottom:var(--bd);background:var(--surface-2);display:flex}.gmp-navigator-kicker{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-strong);margin:0;font-weight:600}.gmp-navigator-note{max-width:var(--measure-prose);margin:var(--sp-1) 0 0;font-size:var(--fs-sm);line-height:var(--lh-body);color:var(--ink-3)}.gmp-navigator-search{min-width:min(100%, var(--rail-w));height:var(--control-h);border:var(--bd-strong);background:var(--surface);align-items:center;display:flex}.gmp-navigator-search:focus-within{border-color:var(--amber-dim);box-shadow:inset 0 0 0 var(--sp-1) var(--focus-ring)}.gmp-navigator-search>.lucide{width:var(--ic-sm);height:var(--ic-sm);margin-inline:var(--sp-2);color:var(--ink-3)}.gmp-navigator-search input{min-width:0;height:100%;padding:0 var(--sp-2) 0 0;color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-label);background:0 0;border:0;outline:0;flex:1}.gmp-navigator-search input::placeholder{color:var(--ink-4);text-transform:lowercase}.gmp-navigator-body{grid-template-columns:minmax(0, 1fr) var(--rail-w);min-height:0;display:grid}.gmp-navigator-tree{min-height:calc(var(--control-h) * 8);padding:var(--sp-3) 0;border-right:var(--bd)}.gmp-navigator-row-wrap{grid-template-columns:var(--control-h-sm) minmax(0, 1fr);align-items:center;gap:var(--sp-2);min-height:var(--control-h);padding:var(--sp-2) var(--sp-4) var(--sp-2) calc(var(--sp-4) + var(--gmp-tree-depth) * var(--sp-5));border-left:var(--sp-1) solid transparent;display:grid}.gmp-navigator-row-wrap:hover{background:var(--surface-hover)}.gmp-navigator-row-wrap:has(.gmp-navigator-row:focus-visible){box-shadow:inset 0 0 0 var(--sp-1) var(--focus-ring)}.gmp-navigator-row-wrap[data-selected=true]{border-left-color:var(--amber);background:var(--surface-elev)}.gmp-navigator-row{grid-template-columns:var(--ic-sm) minmax(0, 1fr) auto;align-items:center;gap:var(--sp-2);cursor:pointer;outline:0;min-width:0;display:grid}.gmp-navigator-row>.lucide{width:var(--ic-sm);height:var(--ic-sm);color:var(--ink-3)}.gmp-navigator-disclosure,.gmp-navigator-disclosure-placeholder{width:var(--control-h-sm);height:var(--control-h-sm)}.gmp-navigator-disclosure{color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.gmp-navigator-disclosure:hover{background:var(--surface-hover);color:var(--ink)}.gmp-navigator-disclosure:focus-visible{outline:var(--sp-1) solid var(--focus-ring);outline-offset:var(--sp-1)}.gmp-navigator-disclosure[aria-disabled=true]{cursor:default;opacity:.6}.gmp-navigator-chevron{visibility:hidden;transition:transform var(--dur-1) var(--ease-standard)}.gmp-navigator-disclosure[aria-expanded] .gmp-navigator-chevron{visibility:visible}.gmp-navigator-disclosure[aria-expanded=true] .gmp-navigator-chevron{transform:rotate(90deg)}.gmp-navigator-path{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--fs-sm);color:var(--ink);overflow:hidden}.gmp-navigator-meta{gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--fs-label);font-variant-numeric:tabular-nums;color:var(--ink-4);display:flex}.gmp-navigator-actions{padding:var(--sp-4);background:var(--surface)}.gmp-navigator-selected{color:var(--ink-strong);overflow-wrap:anywhere;margin:0;font-weight:600}.gmp-navigator-selected-path{margin:var(--sp-1) 0 var(--sp-4);color:var(--ink-4);font-family:var(--font-mono);font-size:var(--fs-label);overflow-wrap:anywhere}.gmp-navigator-action{align-items:center;gap:var(--sp-2);width:100%;min-height:var(--control-h);padding:var(--sp-2) var(--sp-3);border:var(--bd-strong);color:var(--ink-2);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;cursor:pointer;background:0 0;display:flex}.gmp-navigator-action+.gmp-navigator-action{margin-top:var(--sp-2)}.gmp-navigator-action:hover{background:var(--surface-hover);color:var(--ink)}.gmp-navigator-action:focus-visible{outline:var(--sp-1) solid var(--focus-ring);outline-offset:var(--sp-1)}.gmp-navigator-action>.lucide{width:var(--ic-sm);height:var(--ic-sm)}.gmp-navigator-action--primary{border-color:var(--amber-dim);color:var(--amber)}.gmp-navigator-empty{padding:var(--sp-4);color:var(--ink-4);font-size:var(--fs-sm);line-height:var(--lh-body);margin:0}.gmp-navigator-missing{padding:var(--sp-3) var(--sp-4);border-bottom:var(--bd);color:var(--clay);font-size:var(--fs-sm);margin:0}.gmp-navigator-missing button{color:var(--ink);cursor:pointer;background:0 0;border:0;text-decoration:underline}@media (width<=720px){.gmp-navigator-head{flex-direction:column}.gmp-navigator-search{width:100%}.gmp-navigator-body{grid-template-columns:1fr}.gmp-navigator-tree{border-right:0;border-bottom:var(--bd)}.gmp-navigator-meta{flex-direction:column;align-items:flex-end;gap:0}}@media (prefers-reduced-motion:reduce){.gmp-navigator-chevron{transition:none}}.gmp-changes-root{--gmp-pad-x:max(var(--sp-4), calc((100% - 1360px) / 2));max-width:none;margin-inline:0;overflow:auto}.gmp-changes-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-4) var(--gmp-pad-x);border-bottom:var(--bd);background:var(--surface);flex:none;display:flex}.gmp-changes-sub{color:var(--ink-4);margin-top:var(--sp-1);font-size:11px}.gmp-changes-body{padding:var(--sp-4) var(--gmp-pad-x);min-width:0}.gmp-unlinked-sessions{margin-top:var(--sp-5);border-top:var(--bd);padding-top:var(--sp-4)}.gmp-unlinked-sessions-head{padding:0 0 var(--sp-2);border:0}.gmp-unlinked-sessions-list{gap:var(--sp-2);flex-wrap:wrap;display:flex}.gmp-unlinked-session{min-height:var(--sp-6);align-items:center;gap:var(--sp-2);max-width:100%;padding:var(--sp-1) var(--sp-2);border:var(--bd);background:var(--surface-2);color:var(--ink-2);font-family:var(--font-mono);font-size:var(--fs-label);text-align:left;cursor:pointer;display:inline-flex}.gmp-unlinked-session:hover{background:var(--surface-hover)}.gmp-unlinked-session:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.gmp-merged-chip{align-items:center;gap:var(--sp-2);padding:3px var(--sp-3);background:var(--surface-2);border:1px dashed var(--ink-5);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-4);cursor:pointer;z-index:3;display:inline-flex;position:absolute}.gmp-merged-chip:hover{color:var(--ink-2);border-color:var(--rule-strong)}.gmp-merged-chip:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.gmp-merged-chip .lucide{flex:none;width:13px;height:13px}.gmp-merged-sec{margin-top:var(--sp-5);border-top:var(--bd);padding-top:var(--sp-4)}.gmp-merged-head{padding:0 0 var(--sp-2);border:0}.gmp-merged-list{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.gmp-merged-revert{position:static}.gmp-legend-item{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-3);display:inline-flex}.gmp-legend-dim{color:var(--ink-4)}.gmp-changes-legend{align-items:center;gap:var(--sp-4);margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:var(--bd);flex-wrap:wrap;display:flex}.gmp-changes-legend .cg-dot{flex:none;position:static!important;transform:none!important}@media (width<=1460px){.gmp-merged-chip{margin-top:var(--sp-2);position:static!important}}@media (width<=600px){.gmp-changes-body{padding:var(--sp-3);overflow:hidden}.gmp-merged-chip{margin-top:var(--sp-2);position:static!important}}.gmp-detail-root{padding:var(--sp-5);gap:0;overflow:auto}.gmp-detail-head{margin-bottom:var(--sp-5)}.gmp-detail-title{font-family:var(--font-display);color:var(--ink-strong);font-weight:700;font-size:var(--fs-lg);margin-top:var(--sp-2)}.gmp-caption{margin-top:var(--sp-4);color:var(--ink-2);font-size:var(--fs-body);max-width:64ch;line-height:1.6}.gmp-frag{padding:0 var(--sp-1);border:0;border-bottom:1px dotted var(--amber-dim);color:var(--amber);font-family:var(--font-mono);cursor:pointer;background:0 0;font-size:.94em;display:inline}.gmp-frag:hover{color:var(--amber-bright);border-bottom-style:solid}.gmp-frag-on{color:var(--amber-bright);background:color-mix(in srgb, var(--amber) 12%, transparent);border-bottom-style:solid}.gmp-caption-hint{margin-top:var(--sp-2);text-transform:lowercase;color:var(--ink-4);font-size:11px;display:block}.gmp-signals{gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.gmp-signal{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface);border:var(--bd);font-family:var(--font-mono);text-transform:lowercase;color:var(--ink-3);font-size:11px;display:inline-flex}.gmp-signal .lucide{color:var(--ink-4);width:14px;height:14px}.gmp-signal b{color:var(--ink);font-weight:600}.gmp-signal .mono{text-transform:none;color:var(--ink-2)}.gmp-signal-warn{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--rule))}.gmp-signal-warn .lucide,.gmp-signal-warn b{color:var(--danger)}.gmp-totals{gap:var(--sp-4);padding:var(--sp-3) 0;border-top:var(--bd);border-bottom:var(--bd);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.gmp-add{color:var(--add-rail)}.gmp-del{color:var(--del-rail)}.gmp-detail-sec{margin-bottom:var(--sp-5)}.gmp-detail-sechead{padding:0 0 var(--sp-3);border:0}.gmp-label-chip{align-items:center;gap:var(--sp-1);padding:1px var(--sp-2);border:1px solid var(--rule-strong);font-family:var(--font-mono);text-transform:lowercase;color:var(--ink-2);font-size:10px;display:inline-flex}.gmp-label-chip .lucide{color:var(--amber);width:11px;height:11px}.gmp-files{flex-direction:column;display:flex}.gmp-file{border:var(--bd)}.gmp-file+.gmp-file{border-top:0}.gmp-file-head{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);background:var(--surface);text-align:left;cursor:pointer;border:0;display:flex}.gmp-file-head:hover{background:var(--surface-hover)}.gmp-file-head:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-3px}.gmp-file-head .lucide:first-child{color:var(--ink-4);flex:none}.gmp-file-path{font-size:var(--fs-sm);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gmp-file-status{height:22px;padding:0 var(--sp-2);flex:none}.gmp-file-convos{color:var(--ink-4);flex:none}.gmp-file-convos .lucide{color:var(--ink-4)}.gmp-file-body{border-top:var(--bd);background:var(--canvas)}.gmp-diff-state{padding:var(--sp-2) var(--sp-3);font-family:var(--font-mono);color:var(--ink-4);font-size:11px}.gmp-diff-error{color:var(--danger)}.gmp-hunk{border-bottom:var(--bd)}.gmp-hunk:last-child{border-bottom:0}.gmp-hunk-attrib{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);font-family:var(--font-mono);color:var(--ink-3);font-size:11px;display:flex}.gmp-hunk-attrib .lucide{color:var(--ink-5);flex:none}.gmp-hunk-from{color:var(--ink-4);text-transform:lowercase;flex:none}.gmp-hunk-link{color:var(--amber);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.gmp-hunk-hash{color:var(--ink-4);flex:none;margin-left:auto}.gmp-hunk-diff{border:0}.gmp-annot{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex;position:relative}.gmp-annot-chip{height:24px;padding:0 var(--sp-1) 0 var(--sp-2);font-size:11px}.gmp-annot-x{width:16px;height:16px;color:var(--ink-4);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-left:2px;display:inline-flex}.gmp-annot-x:hover{color:var(--ink)}.gmp-annot-add{align-items:center;gap:var(--sp-2);height:var(--control-h-sm);padding:0 var(--sp-3);border:var(--bd-strong);color:var(--ink-3);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;cursor:pointer;background:0 0;display:inline-flex}.gmp-annot-add:hover{color:var(--ink);border-color:var(--amber-dim)}.gmp-annot-add .lucide{color:var(--amber);width:13px;height:13px}.gmp-annot-pop{z-index:var(--z-dropdown);gap:var(--sp-2);width:min(280px,90vw);padding:var(--sp-3);background:var(--surface-elev);border:var(--bd-strong);box-shadow:var(--glow-soft);flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);left:0}.gmp-annot-pop .input{height:var(--control-h-sm)}.gmp-annot-pop-foot{justify-content:flex-end;gap:var(--sp-2);display:flex}.gmp-exits{align-items:center;gap:var(--sp-3);padding-top:var(--sp-4);border-top:var(--bd);flex-wrap:wrap;display:flex}.gmp-gitdiff{padding:0 var(--sp-3);height:var(--control-h);background:var(--canvas);border:var(--bd);color:var(--ink-2);align-items:center;font-size:12px;display:inline-flex}.gmp-boundary{margin-top:var(--sp-4);text-transform:lowercase;color:var(--ink-4);border-left:2px solid var(--rule-strong);padding-left:var(--sp-3);font-size:11px;line-height:1.5}.tb-graph{background:var(--canvas);--edge:var(--rule-strong);--edge-error:var(--danger);flex-direction:column;height:100%;display:flex;position:relative}.tb-graph-flow{flex:1;min-height:0;position:relative}.tb-graph .react-flow__attribution{display:none}.tb-graph-minimap{border:var(--bd)!important;background:var(--surface)!important;width:160px!important;height:100px!important;bottom:.75rem!important;left:3rem!important}.tb-graph-controls{z-index:var(--z-sticky);border:var(--bd);background:var(--surface);flex-direction:column;display:flex;position:absolute;bottom:.75rem;left:.75rem}.tb-graph-controls-btn{width:var(--control-h-sm);height:var(--control-h-sm);border:0;border-bottom:var(--bd);color:var(--ink-2);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.tb-graph-controls-btn:last-child{border-bottom:0}.tb-graph-controls-btn:hover{background:var(--surface-hover);color:var(--ink)}.tb-graph-controls-btn:focus-visible{outline:var(--sp-1) solid var(--focus-ring);outline-offset:calc(var(--sp-1) * -1)}.tb-graph-legend{z-index:var(--z-sticky);padding:var(--sp-2) var(--sp-3);border:var(--bd);background:var(--surface);position:absolute;top:.75rem;right:.75rem}.tb-gnode-handle{background:var(--rule-strong)!important;border:0!important;width:6px!important;height:6px!important}.tb-gnode-handle-top{top:-3px!important}.tb-gnode-handle-bottom{bottom:-3px!important}.tb-gnode-handle-right{top:50%!important;right:-3px!important;transform:translateY(-50%)!important}.tb-gnode-handle-left{top:50%!important;left:-3px!important;transform:translateY(-50%)!important}@media (prefers-reduced-motion:no-preference){.tb-graph-controls-btn{transition:background var(--dur-1) var(--ease-standard), color var(--dur-1) var(--ease-standard)}}}
|
|
1
|
+
@layer graph{.gmp-root{background:var(--canvas);min-width:0;height:100%;min-height:0;font-family:var(--font-body);--gmp-map-pad-x:max(var(--sp-4), calc((100% - 1360px) / 2));flex-direction:column;display:flex}.gmp-map-canvas-region{border:var(--bd);background:var(--canvas);height:100%;min-height:0;position:relative}.gmp-map-legend{align-items:center;gap:var(--sp-4);row-gap:var(--sp-1);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.gmp-map-swatch{width:10px;height:10px;margin-right:var(--sp-1);vertical-align:middle;border:1px solid var(--rule-strong);background:var(--surface-elev);display:inline-block}.gmp-map-swatch--empty{border-color:var(--ink-5);background:var(--surface)}.gmp-map-swatch--edge{border:0;border-top:1px solid var(--rule-strong);background:0 0;width:16px;height:0;margin-top:-1px}.gmp-map-legend-danger{color:var(--danger)}.gmp-navigator{background:var(--canvas);min-height:100%;color:var(--ink);flex-direction:column;display:flex}.gmp-navigator-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-4);border-bottom:var(--bd);background:var(--surface-2);display:flex}.gmp-navigator-kicker{font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-strong);margin:0;font-weight:600}.gmp-navigator-note{max-width:var(--measure-prose);margin:var(--sp-1) 0 0;font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink-3)}.gmp-navigator-search{min-width:min(100%, var(--rail-w));height:var(--control-h);border:var(--bd-strong);background:var(--surface);align-items:center;display:flex}.gmp-navigator-search:focus-within{border-color:var(--amber-dim);box-shadow:inset 0 0 0 var(--focus-ring-width) var(--focus-ring)}.gmp-navigator-search>.lucide{width:var(--ic-sm);height:var(--ic-sm);margin-inline:var(--sp-2);color:var(--ink-3)}.gmp-navigator-search input{min-width:0;height:100%;padding:0 var(--sp-2) 0 0;color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-label);background:0 0;border:0;outline:0;flex:1}.gmp-navigator-search input::placeholder{color:var(--ink-4);text-transform:lowercase}.gmp-navigator-body{grid-template-columns:minmax(0, 1fr) var(--rail-w);min-height:0;display:grid}.gmp-navigator-tree{min-height:calc(var(--control-h) * 8);padding:var(--sp-3) 0;border-right:var(--bd)}.gmp-navigator-row-wrap{grid-template-columns:var(--control-h-sm) minmax(0, 1fr);align-items:center;gap:var(--sp-2);min-height:var(--control-h);padding:var(--sp-2) var(--sp-4) var(--sp-2) calc(var(--sp-4) + var(--gmp-tree-depth) * var(--sp-5));border-left:var(--stroke-emphasis) solid transparent;display:grid}.gmp-navigator-row-wrap:hover{background:var(--surface-hover)}.gmp-navigator-row-wrap:has(.gmp-navigator-row:focus-visible){box-shadow:inset 0 0 0 var(--focus-ring-width) var(--focus-ring)}.gmp-navigator-row-wrap[data-selected=true]{border-left-color:var(--amber);background:var(--surface-elev)}.gmp-navigator-row{grid-template-columns:var(--ic-sm) minmax(0, 1fr) auto;align-items:center;gap:var(--sp-2);cursor:pointer;outline:0;min-width:0;display:grid}.gmp-navigator-row>.lucide{width:var(--ic-sm);height:var(--ic-sm);color:var(--ink-3)}.gmp-navigator-disclosure,.gmp-navigator-disclosure-placeholder{width:var(--control-h-sm);height:var(--control-h-sm)}.gmp-navigator-disclosure{color:var(--ink-3);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.gmp-navigator-disclosure:hover{background:var(--surface-hover);color:var(--ink)}.gmp-navigator-disclosure:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.gmp-navigator-disclosure[aria-disabled=true]{cursor:default;opacity:.6}.gmp-navigator-chevron{visibility:hidden}@media (prefers-reduced-motion:no-preference){.gmp-navigator-chevron{transition:transform var(--dur-1) var(--ease-standard)}}.gmp-navigator-disclosure[aria-expanded] .gmp-navigator-chevron{visibility:visible}.gmp-navigator-disclosure[aria-expanded=true] .gmp-navigator-chevron{transform:rotate(90deg)}.gmp-navigator-path{white-space:normal;overflow-wrap:anywhere;min-width:0;font-size:var(--fs-sm);line-height:var(--lh-mono);color:var(--ink)}.gmp-navigator-meta{gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--fs-label);font-variant-numeric:tabular-nums;color:var(--ink-4);display:flex}.gmp-navigator-actions{padding:var(--sp-4);background:var(--surface)}.gmp-navigator-selected{color:var(--ink-strong);overflow-wrap:anywhere;margin:0;font-weight:600}.gmp-navigator-selected-path{margin:var(--sp-1) 0 var(--sp-4);color:var(--ink-4);font-family:var(--font-mono);font-size:var(--fs-label);overflow-wrap:anywhere}.gmp-navigator-action{align-items:center;gap:var(--sp-2);width:100%;min-height:var(--control-h);padding:var(--sp-2) var(--sp-3);border:var(--bd-strong);color:var(--ink-2);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;cursor:pointer;background:0 0;display:flex}.gmp-navigator-action+.gmp-navigator-action{margin-top:var(--sp-2)}.gmp-navigator-action:hover{background:var(--surface-hover);color:var(--ink)}.gmp-navigator-action:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.gmp-navigator-action>.lucide{width:var(--ic-sm);height:var(--ic-sm)}.gmp-navigator-action--primary{border-color:var(--amber-dim);color:var(--amber)}.gmp-navigator-empty{padding:var(--sp-4);color:var(--ink-4);font-size:var(--fs-sm);line-height:var(--lh-body);margin:0}.gmp-navigator-missing{padding:var(--sp-3) var(--sp-4);border-bottom:var(--bd);color:var(--clay);font-size:var(--fs-sm);margin:0}.gmp-navigator-missing button{color:var(--ink);cursor:pointer;background:0 0;border:0;text-decoration:underline}@media (width<768px){.gmp-navigator-head{flex-direction:column}.gmp-navigator-search{width:100%}.gmp-navigator-body{grid-template-columns:1fr}.gmp-navigator-tree{border-right:0;border-bottom:var(--bd)}.gmp-navigator-row{grid-template-columns:var(--ic-sm) minmax(0, 1fr)}.gmp-navigator-meta{gap:var(--sp-2);flex-wrap:wrap;grid-column:2}}@media (prefers-reduced-motion:reduce){.gmp-navigator-chevron{transition:none}}.gmp-toolbar-spacer{flex:1}.gmp-rank-toolbar{align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-bottom:var(--bd);flex-wrap:wrap;display:flex}.gmp-scent-filter{gap:var(--sp-1);flex-wrap:wrap;display:inline-flex}.gmp-rank-overflow{min-height:var(--target-min);padding:var(--sp-2) var(--sp-3);border:0;border-top:var(--bd);background:var(--surface);color:var(--ink-3);font-family:var(--font-mono);font-size:var(--fs-label);text-align:left;cursor:pointer;margin:0}.gmp-rank-overflow:hover{background:var(--surface-hover);color:var(--ink-2)}.gmp-presentation-switch{min-height:var(--control-h-sm);border:var(--bd-strong);display:inline-flex}.gmp-presentation-switch button{min-height:var(--target-min);padding:0 var(--sp-3);border:0;border-left:var(--bd);color:var(--ink-3);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;cursor:pointer;background:0 0}.gmp-presentation-switch button:first-child{border-left:0}.gmp-presentation-switch button:hover{background:var(--surface-hover);color:var(--ink)}.gmp-presentation-switch button[aria-pressed=true]{box-shadow:inset var(--stroke-emphasis) 0 0 var(--amber-dim);background:var(--surface-elev);color:var(--ink-strong)}.gmp-presentation-switch button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset-inset)}@media (width<768px){.gmp-toolbar-spacer{display:none}}.gmp-rail-inner{border:0}.gmp-rail-pad{padding:var(--sp-3) var(--sp-4)}.gmp-root .rs-sec:has(.gmp-rail-inner){padding:0!important}.gmp-root .rs-sec-body:has(>.gmp-rail-inner){padding:0!important}.gmp-root .rs-sec-body>.gmp-rail-inner>.sb-sec:last-child{border-bottom:0}.gmp-coverage{gap:var(--sp-2);flex-direction:column;display:flex}.gmp-coverage-top{justify-content:space-between;align-items:baseline;gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-2);display:flex}.gmp-coverage-top>.label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.gmp-coverage-pct{white-space:nowrap;color:var(--ink-strong);flex:none;font-weight:600}.gmp-coverage-bar{background:var(--surface-2);border:1px solid var(--rule);height:6px}.gmp-coverage-bar>span{background:var(--amber-dim);height:100%;display:block}.gmp-coverage-sub{font-size:var(--fs-label);color:var(--ink-4)}.gmp-tasklist,.gmp-convos,.gmp-coupling{padding:var(--sp-1) 0;margin:0;list-style:none}.gmp-task-row{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-4);border:0;border-left:var(--stroke-emphasis) solid transparent;text-align:left;cursor:pointer;min-height:var(--target-min);background:0 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.gmp-task-row:hover,.gmp-task-row:focus-visible{background:var(--surface-hover);border-left-color:var(--amber);outline:none}.gmp-task-row:focus-visible{box-shadow:inset 0 0 0 var(--focus-ring-width) var(--focus-ring)}.gmp-task-title{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink);overflow-wrap:anywhere}.gmp-task-when{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-4);white-space:nowrap}.gmp-outcome{white-space:nowrap;flex:none}.gmp-rail-filter{margin:0}.gmp-rail-filter .input{height:var(--control-h-sm)}.gmp-showall{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-4);border:0;border-top:var(--bd);color:var(--amber);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;text-align:left;cursor:pointer;background:0 0;display:flex}.gmp-showall:hover{background:var(--surface-hover);color:var(--amber-bright)}.gmp-rail-node-head{padding:var(--sp-3) var(--sp-4)}.gmp-rail-close{width:var(--control-h-sm);height:var(--control-h-sm);border:var(--bd-strong);color:var(--ink-3);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.gmp-rail-close:hover{color:var(--ink);border-color:var(--amber-dim)}.gmp-rail-name{margin-top:var(--sp-2);font-size:var(--fs-sm);color:var(--ink-strong);word-break:break-all}.gmp-rail-meta{gap:var(--sp-3);margin-top:var(--sp-2);flex-wrap:wrap;display:flex}.gmp-connects{gap:var(--sp-3);flex-direction:column;display:flex}.gmp-connect-grp{gap:var(--sp-2);flex-direction:column;display:flex}.gmp-connect-chips{gap:var(--sp-2)}.gmp-connect-chip{cursor:pointer;max-width:100%}.gmp-connect-chip:hover{border-color:var(--amber-dim);color:var(--ink)}.gmp-connect-chip .mono{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.gmp-convo-task{border-bottom:var(--bd)}.gmp-convo-task:last-child{border-bottom:0}.gmp-convo-task-btn{width:100%;padding:var(--sp-3) var(--sp-4);text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:3px;display:flex}.gmp-convo-task-btn:hover{background:var(--surface-hover)}.gmp-convo-task-btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset-inset)}.gmp-convo-task-top{align-items:center;gap:var(--sp-2);display:flex}.gmp-convo-task-title{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink);overflow-wrap:anywhere}.gmp-retry{color:var(--amber);flex:none;align-items:center;margin-left:auto;display:inline-flex}.gmp-retry .lucide{width:var(--ic-sm);height:var(--ic-sm)}.gmp-convo-task-sub{font-size:var(--fs-label);color:var(--ink-4);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gmp-convo-commit{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);background:var(--surface-2);border-bottom:var(--bd);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-3);display:flex}.gmp-convo-commit .lucide{color:var(--ink-4);width:var(--ic-sm);height:var(--ic-sm);flex:none}.gmp-commit-hash{color:var(--ink-2);flex:none}.gmp-commit-msg{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gmp-label-chips{gap:var(--sp-1);flex-wrap:wrap;display:flex}.gmp-coupling-row{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-4);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.gmp-coupling-row:hover{background:var(--surface-hover)}.gmp-coupling-row:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset-inset)}.gmp-coupling-row .lucide{color:var(--ink-5);flex:none}.gmp-coupling-id{font-size:var(--fs-label);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gmp-coupling-shared{font-size:var(--fs-label);color:var(--ink-4);white-space:nowrap;flex:none;margin-left:auto}.gmp-effort{gap:var(--sp-2);flex-direction:column;display:flex}.gmp-effort-row{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.gmp-effort-row b{color:var(--ink);font-weight:600}.gmp-effort-spend b{color:var(--amber)}.gmp-contribute{align-items:center;gap:var(--sp-2);width:100%;margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:0;border-top:var(--bd);color:var(--amber);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;text-align:left;cursor:pointer;background:0 0;display:flex}.gmp-contribute:hover{background:var(--surface-hover);color:var(--amber-bright)}.gmp-contribute .lucide:last-child{margin-left:auto}.gmp-session-destination-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:700;line-height:var(--lh-body);color:var(--ink-strong);overflow-wrap:anywhere;margin:0}.gmp-session-destination-context{margin:var(--sp-2) 0 var(--sp-4);color:var(--ink-3);font-size:var(--fs-sm)}.gmp-session-destination-summary{border:var(--bd);background:var(--surface-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.gmp-session-destination-summary>div{gap:var(--sp-3);min-height:var(--control-h);padding:var(--sp-3) var(--sp-4);border-bottom:var(--bd);grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:baseline;display:grid}.gmp-session-destination-summary>div:nth-last-child(-n+2){border-bottom:0}.gmp-session-destination-summary>div:nth-child(odd){border-right:var(--bd)}.gmp-session-destination-summary dt{font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-4)}.gmp-session-destination-summary dd{overflow-wrap:anywhere;min-width:0;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--ink-2);margin:0}@media (width<768px){.gmp-session-destination-summary{grid-template-columns:minmax(0,1fr)}.gmp-session-destination-summary>div{border-right:0}.gmp-session-destination-summary>div:nth-last-child(-n+2){border-bottom:var(--bd)}.gmp-session-destination-summary>div:last-child{border-bottom:0}}.gmp-changes-root{--gmp-pad-x:max(var(--sp-4), calc((100% - 1360px) / 2));max-width:none;margin-inline:0;overflow:auto}.gmp-changes-head{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);padding:var(--sp-4) var(--gmp-pad-x);border-bottom:var(--bd);background:var(--surface);flex:none;display:flex}.gmp-changes-sub{font-size:var(--fs-label);color:var(--ink-4);margin-top:var(--sp-1)}.gmp-changes-body{padding:var(--sp-4) var(--gmp-pad-x);min-width:0}.gmp-unlinked-sessions{margin-top:var(--sp-5);border-top:var(--bd);padding-top:var(--sp-4)}.gmp-unlinked-sessions-head{padding:0 0 var(--sp-2);border:0}.gmp-unlinked-sessions-list{gap:var(--sp-2);flex-wrap:wrap;display:flex}.gmp-unlinked-session{min-height:var(--sp-6);align-items:center;gap:var(--sp-2);max-width:100%;padding:var(--sp-1) var(--sp-2);border:var(--bd);background:var(--surface-2);color:var(--ink-2);font-family:var(--font-mono);font-size:var(--fs-label);text-align:left;cursor:pointer;display:inline-flex}.gmp-unlinked-session:hover{background:var(--surface-hover)}.gmp-unlinked-session:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.gmp-merged-chip{align-items:center;gap:var(--sp-2);padding:3px var(--sp-3);background:var(--surface-2);border:1px dashed var(--ink-5);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-4);cursor:pointer;z-index:3;display:inline-flex;position:absolute}.gmp-merged-chip:hover{color:var(--ink-2);border-color:var(--rule-strong)}.gmp-merged-chip:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset)}.gmp-merged-chip .lucide{width:var(--ic-sm);height:var(--ic-sm);flex:none}.gmp-merged-sec{margin-top:var(--sp-5);border-top:var(--bd);padding-top:var(--sp-4)}.gmp-merged-head{padding:0 0 var(--sp-2);border:0}.gmp-merged-list{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex}.gmp-merged-revert{position:static}.gmp-legend-item{align-items:center;gap:var(--sp-2);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-3);display:inline-flex}.gmp-legend-dim{color:var(--ink-4)}.gmp-changes-legend{align-items:center;gap:var(--sp-4);margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:var(--bd);flex-wrap:wrap;display:flex}.gmp-changes-legend .cg-dot{flex:none;position:static!important;transform:none!important}.gmp-changes-legend .cg-dot-filled{place-items:center;display:inline-grid}.gmp-changes-legend .cg-spark{position:static!important;transform:none!important}@media (width<1440px){.gmp-merged-chip{margin-top:var(--sp-2);position:static!important}}@media (width<768px){.gmp-changes-body{padding:var(--sp-3);overflow:hidden}.gmp-merged-chip{margin-top:var(--sp-2);position:static!important}}.gmp-detail-root{padding:var(--sp-5);gap:0;overflow:auto}.gmp-detail-head{margin-bottom:var(--sp-5)}.gmp-detail-title{font-family:var(--font-display);color:var(--ink-strong);font-weight:700;font-size:var(--fs-lg);margin-top:var(--sp-2)}.gmp-caption{margin-top:var(--sp-4);color:var(--ink-2);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);max-width:var(--measure-prose)}.gmp-frag{padding:0 var(--sp-1);border:0;border-bottom:var(--stroke-hairline) dotted var(--amber-dim);color:var(--amber);font-family:var(--font-mono);font-size:var(--fs-body);cursor:pointer;background:0 0;display:inline}.gmp-frag:hover{color:var(--amber-bright);border-bottom-style:solid}.gmp-frag-on{color:var(--amber-bright);background:color-mix(in srgb, var(--amber) 12%, transparent);border-bottom-style:solid}.gmp-caption-hint{margin-top:var(--sp-2);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-4);display:block}.gmp-signals{gap:var(--sp-3);margin-bottom:var(--sp-4);flex-wrap:wrap;display:flex}.gmp-signal{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface);border:var(--bd);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-3);display:inline-flex}.gmp-signal .lucide{color:var(--ink-4);width:var(--ic-sm);height:var(--ic-sm)}.gmp-signal b{color:var(--ink);font-weight:600}.gmp-signal .mono{text-transform:none;color:var(--ink-2)}.gmp-signal-warn{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--rule))}.gmp-signal-warn .lucide,.gmp-signal-warn b{color:var(--danger)}.gmp-totals{gap:var(--sp-4);padding:var(--sp-3) 0;border-top:var(--bd);border-bottom:var(--bd);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.gmp-add{color:var(--add-rail)}.gmp-del{color:var(--del-rail)}.gmp-detail-sec{margin-bottom:var(--sp-5)}.gmp-detail-sechead{padding:0 0 var(--sp-3);border:0}.gmp-label-chip{align-items:center;gap:var(--sp-1);padding:0 var(--sp-2);border:var(--bd-strong);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-2);display:inline-flex}.gmp-label-chip .lucide{color:var(--amber);width:var(--ic-sm);height:var(--ic-sm)}.gmp-files{flex-direction:column;display:flex}.gmp-file{border:var(--bd)}.gmp-file+.gmp-file{border-top:0}.gmp-file-head{align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-2) var(--sp-3);background:var(--surface);text-align:left;cursor:pointer;border:0;display:flex}.gmp-file-head:hover{background:var(--surface-hover)}.gmp-file-head:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset-inset)}.gmp-file-head .lucide:first-child{color:var(--ink-4);flex:none}.gmp-file-path{font-size:var(--fs-sm);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gmp-file-status{height:22px;padding:0 var(--sp-2);flex:none}.gmp-file-convos{color:var(--ink-4);flex:none}.gmp-file-convos .lucide{color:var(--ink-4)}.gmp-file-body{border-top:var(--bd);background:var(--canvas)}.gmp-diff-state{padding:var(--sp-2) var(--sp-3);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-4)}.gmp-diff-error{color:var(--danger)}.gmp-hunk{border-bottom:var(--bd)}.gmp-hunk:last-child{border-bottom:0}.gmp-hunk-attrib{align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--fs-label);color:var(--ink-3);display:flex}.gmp-hunk-attrib .lucide{color:var(--ink-5);flex:none}.gmp-hunk-from{color:var(--ink-4);text-transform:lowercase;flex:none}.gmp-hunk-link{color:var(--amber);font:inherit;cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:0;padding:0;overflow:hidden}.gmp-hunk-link:hover{color:var(--amber-bright);text-underline-offset:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.gmp-hunk-hash{color:var(--ink-4);flex:none;margin-left:auto}.gmp-hunk-diff{border:0}.gmp-annot{align-items:center;gap:var(--sp-3);flex-wrap:wrap;display:flex;position:relative}.gmp-annot-chip{min-height:var(--target-min);padding:0 var(--sp-1) 0 var(--sp-2);font-size:var(--fs-label)}.gmp-annot-x{width:16px;height:16px;color:var(--ink-4);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-left:2px;display:inline-flex}.gmp-annot-x:hover{color:var(--ink)}.gmp-annot-add{align-items:center;gap:var(--sp-2);height:var(--control-h-sm);padding:0 var(--sp-3);border:var(--bd-strong);color:var(--ink-3);font-family:var(--font-mono);font-size:var(--fs-label);text-transform:lowercase;cursor:pointer;background:0 0;display:inline-flex}.gmp-annot-add:hover{color:var(--ink);border-color:var(--amber-dim)}.gmp-annot-add .lucide{color:var(--amber);width:var(--ic-sm);height:var(--ic-sm)}.gmp-annot-pop{z-index:var(--z-dropdown);gap:var(--sp-2);width:min(280px,90vw);padding:var(--sp-3);background:var(--surface-elev);border:var(--bd-strong);box-shadow:var(--overlay-shadow);flex-direction:column;display:flex;position:absolute;top:calc(100% + 4px);left:0}.gmp-annot-pop .input{height:var(--control-h-sm)}.gmp-annot-pop-foot{justify-content:flex-end;gap:var(--sp-2);display:flex}.gmp-exits{align-items:center;gap:var(--sp-3);padding-top:var(--sp-4);border-top:var(--bd);flex-wrap:wrap;display:flex}.gmp-gitdiff{padding:0 var(--sp-3);height:var(--control-h);background:var(--canvas);border:var(--bd);font-size:var(--fs-label);color:var(--ink-2);align-items:center;display:inline-flex}.gmp-boundary{margin-top:var(--sp-4);font-size:var(--fs-label);text-transform:lowercase;color:var(--ink-4);border-left:var(--stroke-emphasis) solid var(--rule-strong);padding-left:var(--sp-3);line-height:var(--lh-mono)}.tb-graph{background:var(--canvas);--edge:var(--rule-strong);--edge-error:var(--danger);flex-direction:column;height:100%;display:flex;position:relative}.tb-graph-flow{flex:1;min-height:0;position:relative}.tb-graph .react-flow__attribution{display:none}.tb-graph-minimap{border:var(--bd)!important;background:var(--surface)!important;width:160px!important;height:100px!important;bottom:.75rem!important;left:3rem!important}.tb-graph-controls{z-index:var(--z-sticky);border:var(--bd);background:var(--surface);flex-direction:column;display:flex;position:absolute;bottom:.75rem;left:.75rem}.tb-graph-controls-btn{width:var(--control-h-sm);height:var(--control-h-sm);border:0;border-bottom:var(--bd);color:var(--ink-2);cursor:pointer;background:0 0;justify-content:center;align-items:center;display:inline-flex}.tb-graph-controls-btn:last-child{border-bottom:0}.tb-graph-controls-btn:hover{background:var(--surface-hover);color:var(--ink)}.tb-graph-controls-btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring);outline-offset:var(--focus-ring-offset-inset)}.tb-graph-legend{z-index:var(--z-sticky);padding:var(--sp-2) var(--sp-3);border:var(--bd);background:var(--surface);position:absolute;top:.75rem;right:.75rem}.tb-gnode-handle{background:var(--rule-strong)!important;border:0!important;width:6px!important;height:6px!important}.tb-gnode-handle-top{top:-3px!important}.tb-gnode-handle-bottom{bottom:-3px!important}.tb-gnode-handle-right{top:50%!important;right:-3px!important;transform:translateY(-50%)!important}.tb-gnode-handle-left{top:50%!important;left:-3px!important;transform:translateY(-50%)!important}@media (prefers-reduced-motion:no-preference){.tb-graph-controls-btn{transition:background var(--dur-1) var(--ease-standard), color var(--dur-1) var(--ease-standard)}}}
|