/* Shared graph appearance. Camera, gestures and layout remain in graph modules. */
body.studio-d.experience {
  --graph-paper:#FDFCF8;
  --graph-ink:#22241F;
  --graph-muted:#64685C;
  --graph-line:#D8D9CD;
  --graph-electric:#3C4BE0;
  --graph-lemon:#E9EF73;
}
body.studio-d.experience .lx-root {
  --lx-ink:var(--graph-ink);
  --lx-muted:var(--graph-muted);
  --lx-line:var(--graph-line);
  --lx-purple:var(--graph-electric);
  --lx-coral:#D75C41;
  --lx-teal:#087F75;
}
body.studio-d.experience .mm-root {
  --mm-ink:var(--graph-ink);
  --mm-muted:var(--graph-muted);
  --mm-line:var(--graph-line);
  --mm-teal:var(--graph-electric);
}
body.studio-d.experience :is(.lx-root,.mm-controls) input::placeholder { color:#787C70; opacity:1; }
body.studio-d.experience :is(.lx-gesture-hint,.mm-gesture-hint) {
  color:var(--graph-muted)!important;
  background:var(--graph-paper)!important;
  border-color:var(--graph-line);
  border-radius:3px;
}
body.studio-d.experience .graph-capture-toggle {
  color:var(--graph-muted);
  border:1px solid var(--graph-line);
  border-radius:3px;
  background:var(--graph-paper);
  backdrop-filter:none;
}
body.studio-d.experience .graph-capture-toggle:hover,
body.studio-d.experience .graph-capture-toggle[aria-pressed="true"] { color:var(--graph-ink); background:var(--graph-lemon); }
body.studio-d.experience .graph-viewport-backdrop { background:#22241F70; backdrop-filter:blur(10px); }
body.studio-d.experience .graph-viewport-expanded:is(.lx-workspace,.mm-workspace) { border-radius:4px!important; box-shadow:8px 8px 0 #22241F20!important; }
body.studio-d.experience .lx-workspace.graph-viewport-expanded {
  inset:0!important; width:100vw!important; height:100dvh!important;
  border:0!important; border-radius:0!important; box-shadow:none!important; box-sizing:border-box!important;
  grid-template-columns:minmax(0,1fr)!important; grid-template-rows:minmax(0,1fr)!important;
}
html:has(body.studio-d.experience .lx-workspace.graph-viewport-expanded) { scrollbar-gutter:auto!important; }
body.studio-d.experience .lx-workspace.graph-viewport-expanded > .lx-splitter { display:none!important; }
body.studio-d.experience .lx-workspace.graph-viewport-expanded > .lx-inspector-slot { display:contents!important; }
body.studio-d.experience .lx-workspace.graph-viewport-expanded .lx-inspector:not(.lx-is-floating) { display:none!important; }
body.studio-d.experience .lx-workspace.graph-viewport-expanded .lx-inspector.lx-fullscreen-preview {
  position:fixed!important; inset:80px 24px auto auto!important;
  display:flex!important; width:min(460px,calc(100vw - 48px))!important;
  height:min(720px,calc(100dvh - 104px))!important; min-height:0!important;
  max-height:calc(100dvh - 104px)!important; margin:0!important;
  border-radius:6px!important; background:var(--paper)!important;
}
@media(max-width:600px) {
  body.studio-d.experience .lx-workspace.graph-viewport-expanded .lx-inspector.lx-fullscreen-preview {
    inset:auto 10px 10px 10px!important; width:auto!important;
    height:min(62dvh,560px)!important; max-height:calc(100dvh - 100px)!important;
  }
}
body.studio-d.experience :is(.lx-core-input,.mm-root.mm-explorer .mm-controls .mm-resource-toggle input[type="checkbox"]) { border-color:#A7AA9A; border-radius:3px; }
body.studio-d.experience .lx-core-input:checked { background:var(--graph-electric); border-color:var(--graph-electric); }
body.studio-d.experience .mm-root.mm-explorer .mm-controls .mm-resource-toggle input[type="checkbox"]:checked { background-color:var(--graph-electric); border-color:var(--graph-electric); }
body.studio-d.experience .lx-preview-meta .lx-preview-featured { color:var(--graph-ink); background:var(--graph-lemon); border-radius:3px; }

/* A warm drafting surface and solid category marks. */
body.studio-d.experience :is(.lx-canvas,.mm-graph) {
  background-color:var(--graph-paper)!important;
  background-image:radial-gradient(#22241F20 .65px,transparent .65px)!important;
  background-size:22px 22px!important;
}
body.studio-d.experience :is(.lx-atlas-top,.mm-map-toolbar,.lx-atlas-bottom,.lx-theme-legend,.mm-legend) {
  background-color:var(--graph-paper);
  border-color:var(--graph-line);
}
body.studio-d.experience .lx-node-dot {
  fill:var(--lx-node-color);
  stroke:var(--graph-paper);
  stroke-width:2.3;
  filter:none!important;
}
body.studio-d.experience .mm-node-dot:not(.mm-resource-dot) {
  stroke:var(--graph-paper);
  stroke-width:2.3;
  filter:none!important;
}
body.studio-d.experience .mm-resource-dot {
  fill:var(--graph-paper);
  stroke-width:2.3;
  filter:none!important;
}
body.studio-d.experience :is(.lx-node-star) { fill:var(--graph-paper); }
body.studio-d.experience :is(.lx-node-label,.mm-root.mm-explorer .mm-node-label) {
  fill:var(--graph-ink)!important;
  stroke:var(--graph-paper)!important;
  font-weight:560;
  paint-order:stroke;
}
body.studio-d.experience .lx-node-halo { fill:var(--lx-node-color); }
body.studio-d.experience .lx-node:hover .lx-node-halo,
body.studio-d.experience .lx-node:focus-visible .lx-node-halo { opacity:.14; }
body.studio-d.experience .lx-node.lx-is-selected .lx-node-halo { opacity:.18; }
body.studio-d.experience :is(.lx-node.lx-is-selected .lx-node-dot,.mm-root.mm-explorer .mm-node.is-selected .mm-node-dot) {
  stroke:var(--graph-ink);
  stroke-width:2.5;
  filter:none!important;
}
body.studio-d.experience :is(.lx-node:focus-visible .lx-node-dot,.mm-root.mm-explorer .mm-node:focus-visible .mm-node-dot) {
  stroke:var(--graph-ink);
  stroke-width:3;
}
body.studio-d.experience :is(.lx-node.lx-is-selected .lx-node-label,.mm-root.mm-explorer .mm-node-label.is-selected) {
  fill:var(--graph-ink)!important;
  font-weight:700;
}
body.studio-d.experience .mm-root.mm-explorer .mm-node-halo { filter:none!important; }
body.studio-d.experience .mm-root.mm-explorer .mm-node.is-selected .mm-node-halo { fill-opacity:.16; }

/* Category labels retain their category hue with enough ink for small text. */
body.studio-d.experience .lx-anchor-shape {
  fill:color-mix(in srgb,var(--lx-node-color) 11%,var(--graph-paper));
  stroke:color-mix(in srgb,var(--lx-node-color) 48%,var(--graph-paper));
  stroke-width:1;
  rx:4px;
}
body.studio-d.experience .lx-anchor-label {
  fill:color-mix(in srgb,var(--lx-node-color) 75%,var(--graph-ink));
  font-weight:650;
}
body.studio-d.experience .mm-root.mm-explorer .mm-group-plate {
  fill:color-mix(in srgb,var(--mm-group-color) 11%,var(--graph-paper));
  stroke:color-mix(in srgb,var(--mm-group-color) 48%,var(--graph-paper));
  stroke-opacity:1;
  stroke-width:1;
  filter:none;
  rx:4px;
}
body.studio-d.experience .mm-root.mm-explorer .mm-cluster text {
  fill:color-mix(in srgb,var(--mm-group-color) 75%,var(--graph-ink));
  stroke:none;
  font-weight:650;
}
body.studio-d.experience .lx-anchor:hover .lx-anchor-shape,
body.studio-d.experience .lx-anchor:focus-visible .lx-anchor-shape {
  fill:color-mix(in srgb,var(--lx-node-color) 19%,var(--graph-paper));
  stroke:var(--lx-node-color);
}
body.studio-d.experience .mm-root.mm-explorer .mm-cluster:hover .mm-group-plate,
body.studio-d.experience .mm-root.mm-explorer .mm-cluster:focus-visible .mm-group-plate {
  fill:color-mix(in srgb,var(--mm-group-color) 19%,var(--graph-paper));
  stroke:var(--mm-group-color);
}

/* Connections use category color; focused relationships carry stronger weight. */
body.studio-d.experience .lx-edge { opacity:.31; stroke-width:1.05; }
body.studio-d.experience .lx-edge.lx-is-emphasized { opacity:.78; stroke-width:1.65; }
body.studio-d.experience .lx-edge.lx-is-muted { opacity:.065; }
body.studio-d.experience .mm-root.mm-explorer .mm-graph svg .mm-edge {
  stroke:var(--mm-edge-color,var(--graph-muted));
  stroke-opacity:.30;
  stroke-width:1.15;
  filter:none;
}
body.studio-d.experience .mm-root.mm-explorer .mm-graph svg .mm-edge.is-focused {
  stroke:var(--mm-edge-color,var(--graph-electric));
  stroke-opacity:.82;
  stroke-width:1.9;
  filter:none;
}
body.studio-d.experience .mm-root.mm-explorer .mm-graph svg .mm-edge.is-muted { stroke-opacity:.065; }

/* Legends and reading metadata share the category language. */
body.studio-d.experience :is(.lx-theme-legend button,.mm-legend button) {
  color:var(--graph-ink);
  background:transparent;
  border:1px solid transparent;
  border-radius:3px;
}
body.studio-d.experience :is(.lx-theme-legend i,.mm-legend i) {
  width:8px;
  height:8px;
  opacity:1;
  border-radius:2px;
}
body.studio-d.experience :is(.lx-theme-legend button,.mm-legend button):hover {
  color:var(--graph-ink);
  background:#F1F0E7;
  border-color:var(--graph-line);
}
body.studio-d.experience :is(.lx-theme-legend button,.mm-legend button)[aria-pressed="true"] {
  color:var(--graph-ink);
  background:var(--graph-lemon);
  border-color:var(--graph-ink);
}
body.studio-d.experience :is(.mm-legend span,.lx-theme-legend span) { color:var(--graph-muted); }
body.studio-d.experience .mm-group-tag {
  color:color-mix(in srgb,var(--tag-color) 75%,var(--graph-ink))!important;
  background:color-mix(in srgb,var(--tag-color) 11%,var(--graph-paper))!important;
  border-color:color-mix(in srgb,var(--tag-color) 45%,var(--graph-paper));
}
body.studio-d.experience .lx-preview-topics button {
  color:color-mix(in srgb,var(--lx-topic) 75%,var(--graph-ink));
  background:color-mix(in srgb,var(--lx-topic) 11%,var(--graph-paper));
  border:1px solid color-mix(in srgb,var(--lx-topic) 35%,var(--graph-paper));
  border-radius:3px;
}

/* Statistical figures use the same categories and neutral readable labels. */
body.studio-d.experience .lx-topic-track { stroke:#E8E7DD; }
body.studio-d.experience .lx-topic-label-name { fill:var(--graph-ink); font-weight:550; }
body.studio-d.experience .lx-topic-label-count { fill:var(--graph-muted); }
body.studio-d.experience .lx-topic-leader { stroke-opacity:.68; }
body.studio-d.experience .lx-topic-leader-dot { opacity:1; }
body.studio-d.experience .lx-topic-annotation.lx-topic-hover .lx-topic-label-name,
body.studio-d.experience .lx-topic-annotation[aria-pressed="true"] .lx-topic-label-name {
  fill:color-mix(in srgb,var(--lx-topic) 75%,var(--graph-ink));
}
body.studio-d.experience .lx-ring-value strong { color:var(--graph-ink); font-weight:650; }
body.studio-d.experience .lx-has-topic-detail .lx-ring-value strong {
  color:color-mix(in srgb,var(--lx-topic-detail) 75%,var(--graph-ink));
}
body.studio-d.experience :is(.lx-ring-value>span,.lx-ring-center>[data-ring-name],.lx-ring-center small,.lx-timeline-heading>span) { color:var(--graph-muted); }
body.studio-d.experience .lx-year-column i {
  background:var(--graph-electric);
  border-radius:2px 2px 0 0;
  opacity:.86;
}
body.studio-d.experience .lx-year-column:hover i { background:var(--graph-ink); opacity:1; }
body.studio-d.experience .lx-year-plot { border-bottom-color:var(--graph-line); }
body.studio-d.experience :is(.lx-year-label,.lx-year-count,.lx-timeline-empty,.lx-topic-empty) { color:var(--graph-muted); }

/* Tool feedback uses lemon for state and electric blue for precision controls. */
body.studio-d.experience :is(.lx-graph-tools>button,.mm-graph-actions>button,.graph-settings-host .gs-toggle) {
  color:var(--graph-muted);
  border-radius:3px;
}
body.studio-d.experience :is(.lx-graph-tools>button,.mm-graph-actions>button,.graph-settings-host .gs-toggle):hover,
body.studio-d.experience :is(.lx-graph-tools>button,.mm-graph-actions>button)[aria-pressed="true"],
body.studio-d.experience .graph-settings-host .gs-toggle[aria-expanded="true"] {
  color:var(--graph-ink);
  background:var(--graph-lemon);
}
body.studio-d.experience :is(.lx-zoom-tools,.mm-graph-tools) {
  border:1px solid var(--graph-line);
  border-radius:3px;
  background:var(--graph-paper);
  box-shadow:2px 2px 0 #22241F12;
}
body.studio-d.experience :is(.lx-zoom-tools button,.mm-graph-tools button) {
  color:var(--graph-ink);
  border-color:var(--graph-line);
  background:var(--graph-paper);
}
body.studio-d.experience :is(.lx-zoom-tools button,.mm-graph-tools button):hover { color:var(--graph-ink); background:var(--graph-lemon); }
body.studio-d.experience .lx-zoom-rail { background:transparent; }
body.studio-d.experience .lx-zoom-value { color:var(--graph-electric); font-weight:650; }
body.studio-d.experience .lx-root .lx-zoom-slider {
  background:linear-gradient(90deg,transparent calc(50% - 2px),#D8DBEE calc(50% - 2px),#D8DBEE calc(50% + 2px),transparent calc(50% + 2px));
}
body.studio-d.experience .lx-zoom-slider::-webkit-slider-thumb {
  border-color:var(--graph-paper);
  background:var(--graph-electric);
  box-shadow:0 0 0 1px var(--graph-electric);
}
body.studio-d.experience .lx-zoom-slider::-moz-range-thumb {
  border-color:var(--graph-paper);
  background:var(--graph-electric);
  box-shadow:0 0 0 1px var(--graph-electric);
}
body.studio-d.experience .lx-zoom-slider:hover::-webkit-slider-thumb { background:var(--graph-ink); }
body.studio-d.experience .gs-panel {
  color:var(--graph-ink);
  border-color:var(--graph-line);
  border-radius:4px;
  background:var(--graph-paper);
  box-shadow:5px 5px 0 #22241F18;
}
body.studio-d.experience .gs-panel :is(.gs-header h3,.gs-reset,.gs-number,.gs-label-mode select) { color:var(--graph-ink); }
body.studio-d.experience .gs-panel :is(.gs-hint,.gs-number-wrap,.gs-footer) { color:var(--graph-muted); }
body.studio-d.experience .gs-panel :is(.gs-number,.gs-label-mode select) { background:#FFF; border-color:var(--graph-line); border-radius:3px; }
body.studio-d.experience .gs-panel .gs-label-mode { border-color:var(--graph-line); }
body.studio-d.experience .gs-panel input[type="range"] { accent-color:var(--graph-electric); }
body.studio-d.experience .gs-panel input[type="range"]::-webkit-slider-runnable-track { background:linear-gradient(to right,var(--graph-electric) var(--gs-fill),#D8DBEE var(--gs-fill)); }
body.studio-d.experience .gs-panel input[type="range"]::-webkit-slider-thumb { background:var(--graph-electric); border-color:var(--graph-paper); box-shadow:0 0 0 1px var(--graph-electric); }
body.studio-d.experience .gs-panel input[type="range"]::-moz-range-track { background:#D8DBEE; }
body.studio-d.experience .gs-panel input[type="range"]::-moz-range-progress { background:var(--graph-electric); }
body.studio-d.experience .gs-panel input[type="range"]::-moz-range-thumb { background:var(--graph-electric); border-color:var(--graph-paper); box-shadow:0 0 0 1px var(--graph-electric); }
body.studio-d.experience :is(.lx-root,.mm-root,.gs-panel) :is(button,input,select):focus-visible {
  outline-color:var(--graph-electric);
}
body.studio-d.experience .mm-root.mm-explorer .mm-start-methods em { color:var(--graph-electric); }
body.studio-d.experience .mm-root.mm-explorer .mm-splitter::before { background:var(--graph-line); }
body.studio-d.experience .mm-root.mm-explorer .mm-splitter::after { background:#A8AE9D; }
body.studio-d.experience .mm-root.mm-explorer .mm-splitter:is(:hover,:focus-visible)::before,
body.studio-d.experience .mm-root.mm-explorer .mm-is-resizing .mm-splitter::before { background:var(--graph-electric); }
body.studio-d.experience .ltoc .ftoc-panel { color:var(--graph-ink); border-color:var(--graph-line); background:var(--graph-paper); border-radius:4px; box-shadow:5px 5px 0 #22241F18; }
body.studio-d.experience .ltoc-search { color:var(--graph-muted); background:var(--graph-paper); }
body.studio-d.experience .ltoc-search input { color:var(--graph-ink); }
body.studio-d.experience .ltoc-search:focus-within { box-shadow:0 1px var(--graph-electric); }
body.studio-d.experience :is(.ltoc-count,.ltoc-paper-note,.ltoc-metadata,.ltoc-empty) { color:var(--graph-muted); }
body.studio-d.experience .ltoc-paper { color:var(--graph-ink); }
body.studio-d.experience .ltoc-paper:hover,
body.studio-d.experience .ltoc-paper.is-selected { color:var(--graph-electric); }
body.studio-d.experience .ltoc-paper::before { background:var(--graph-electric); }
body.studio-d.experience .ltoc-paper:focus-visible { outline-color:var(--graph-electric); }

