:root {
  --xt-bg: #0000aa;
  --xt-bg-deep: #00008a;
  --xt-white: #ffffff;
  --xt-gray: #aaaaaa;
  --xt-dim: #6c6cd0;
  --xt-side-value: #c8c8c8;
  --xt-cyan: #76e5fc;
  --xt-yellow: #ccff33;
  --xt-sel-bg: #ccff33;
  --xt-sel-fg: #0000aa;
  --xt-rule: #4bc0d9;
  --xt-rule-strong: #6457a6;
  --xt-font-label: Menlo, Consolas, "Cascadia Mono", "Courier New", monospace;
  --xt-font-content: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --xt-font-reader: "Iowan Old Style", "Charter", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, Cambria, "Times New Roman", Times, serif;
}
.xtree-label {
  font-family: var(--xt-font-label);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: subpixel-antialiased;
  text-rendering: geometricPrecision;
}
.xtree-chrome {
  font-family: var(--xt-font-content);
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}
.xt-editorial {
  font-family: var(--xt-font-reader);
  letter-spacing: -0.01em;
}
.xt-path { color: var(--xt-cyan); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.xt-status-key { color: var(--xt-gray); }
.xt-status-word { color: var(--xt-yellow); text-transform: uppercase; }
.xt-cmd-label { color: var(--xt-gray); text-transform: uppercase; letter-spacing: 0.08em; white-space: nowrap; }
.xt-cmd-dir { color: var(--xt-cyan); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.xt-cmd-list { color: var(--xt-gray); text-transform: uppercase; display: flex; flex-wrap: wrap; gap: 0.1rem 0.9rem; }
.xt-cmd { white-space: nowrap; }
.xt-cmd-key { color: var(--xt-yellow); font-weight: 700; }
.xt-cmd-file { color: var(--xt-yellow); display: flex; align-items: baseline; gap: 0.75rem; min-width: 0; }
.xt-cmd-action { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.xt-cmd-copy { color: var(--xt-dim); margin-left: auto; white-space: nowrap; }
.xt-tree { display: block; }
.xt-tree-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 0;
  padding: 0 0.75rem;
  line-height: 1.25;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: transparent;
  transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
              color 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
.xt-tree-row:hover { background: var(--xt-bg-deep); }
.xt-tree-row:focus-visible { outline: 1px solid var(--xt-yellow); outline-offset: -1px; }
.xt-tree-prefix { color: var(--xt-dim); white-space: pre; flex-shrink: 0; }
.xt-tree-folder { color: var(--xt-yellow); }
.xt-tree-file { color: var(--xt-cyan); }
.xt-tree-label { color: inherit; }
.xt-tree-row.is-selected,
.xt-tree-row.is-selected:hover { background: var(--xt-sel-bg); color: var(--xt-sel-fg); }
.xt-tree-row.is-selected .xt-tree-label { color: var(--xt-sel-fg); }
.xt-title {
  margin: 0 0 0.35rem;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--xt-yellow);
  line-height: 1.1;
}
.xt-caption { color: var(--xt-gray); text-transform: uppercase; letter-spacing: 0.1em; font-size: 0.72rem; margin: 0 0 0.5rem; }
.xt-lead { color: var(--xt-white); font-size: 1.0625rem; line-height: 1.55; max-width: 68ch; margin: 0 0 0.5rem; }
.xt-code { font-family: var(--xt-font-label); color: var(--xt-cyan); }
.xt-empty { color: var(--xt-gray); border: 1px solid var(--xt-rule); padding: 1rem; }
.xt-register-wrap { border: 1px solid var(--xt-rule); overflow-x: auto; }
.xt-register-flush { border-left: 0; border-right: 0; border-top: 0; }
.xt-register { width: 100%; border-collapse: collapse; font-size: 0.85rem; table-layout: fixed; }
.xt-th, .xt-cell { overflow-wrap: anywhere; word-break: break-word; }
.xt-th {
  text-align: left;
  color: var(--xt-gray);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.64rem;
  font-weight: 600;
  padding: 0.5rem 0.7rem;
  border-bottom: 1px solid var(--xt-rule);
  background: var(--xt-bg-deep);
}
.xt-th-num { text-align: right; white-space: nowrap; }
.xt-record { border-bottom: 1px solid var(--xt-rule); }
.xt-record:last-child { border-bottom: 0; }
.xt-record:hover { background: var(--xt-bg-deep); }
.xt-cell { padding: 0.6rem 0.7rem; vertical-align: top; color: var(--xt-white); }
.xt-cell-num { text-align: right; white-space: nowrap; }
.xt-empty-cell { color: var(--xt-gray); }
.xt-file { color: var(--xt-cyan); text-decoration: none; font-family: var(--xt-font-label); font-weight: 600; letter-spacing: 0.02em; }
.xt-file:hover { color: var(--xt-yellow); text-decoration: underline; }
.xt-num { color: var(--xt-side-value); font-variant-numeric: tabular-nums; }
.xt-register-desc { display: block; max-width: 56ch; }
.xt-quote { margin: 0.4rem 0 0; color: var(--xt-side-value); font-size: 0.98rem; line-height: 1.55; max-width: 70ch; }
.xt-issue-link { color: var(--xt-cyan); text-decoration: none; white-space: nowrap; font-variant-numeric: tabular-nums; }
.xt-issue-link:hover { color: var(--xt-yellow); text-decoration: underline; }
.xt-issue { color: var(--xt-gray); white-space: nowrap; font-variant-numeric: tabular-nums; }
.xt-pills { list-style: none; margin: 0.5rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 0.3rem; }
.xt-pill, .xt-grouppill {
  font-size: 0.58rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border: 1px solid var(--xt-rule);
  padding: 0.08rem 0.4rem;
  white-space: nowrap;
}
.xt-pill { color: var(--xt-cyan); }
.xt-pill-inactive { color: var(--xt-dim); }
.xt-grouppill { color: var(--xt-yellow); }
.xt-modeline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 0.7rem;
  border-bottom: 1px solid var(--xt-rule);
  font-size: 0.66rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.xt-mode-seg { white-space: nowrap; margin: 0; }
.xt-mode-key { color: var(--xt-gray); }
.xt-select-wrap { display: inline-flex; }
.xt-select {
  font-family: var(--xt-font-label);
  font-size: inherit;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--xt-yellow);
  background: var(--xt-bg-deep);
  border: 1px solid var(--xt-rule);
  padding: 0.12rem 0.4rem;
  cursor: pointer;
}
.xt-select:focus-visible { outline: 1px solid var(--xt-yellow); outline-offset: 1px; }
.xt-mode-go {
  font-family: var(--xt-font-label);
  font-size: inherit;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--xt-cyan);
  background: transparent;
  border: 1px solid var(--xt-rule);
  padding: 0.12rem 0.55rem;
  cursor: pointer;
}
.xt-mode-go:hover,
.xt-mode-go:focus-visible { background: var(--xt-sel-bg); color: var(--xt-sel-fg); border-color: var(--xt-sel-bg); }
.xt-filter-empty {
  padding: 1.25rem 0.7rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
}
.xt-filter-empty-line { margin: 0; color: var(--xt-gray); letter-spacing: 0.1em; }
.xt-meta { display: grid; grid-template-columns: max-content 1fr; gap: 0.35rem 0.75rem; margin: 0; font-size: 0.8rem; }
.xt-meta-row { display: contents; }
.xt-meta-key { color: var(--xt-gray); text-transform: uppercase; letter-spacing: 0.06em; }
.xt-meta-val { margin: 0; color: var(--xt-side-value); word-break: break-word; }
.xt-meta-row-path { display: block; grid-column: 1 / -1; margin-top: 0.15rem; }
.xt-meta-row-path .xt-meta-key { display: block; margin-bottom: 0.15rem; }
.xt-path-val { display: block; color: var(--xt-cyan); }
.xt-path-val span { display: block; overflow-wrap: anywhere; }
.xt-inspector-title { color: var(--xt-yellow); text-transform: uppercase; letter-spacing: 0.14em; margin-bottom: 0.75rem; }
.xt-inspector-section { margin-bottom: 0.25rem; }
.xt-inspector-head { color: var(--xt-gray); text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.68rem; margin-bottom: 0.5rem; }
.xt-inspector-divider { border-top: 1px solid var(--xt-rule-strong); margin: 1rem 0; }
.xt-signal-title { color: var(--xt-yellow); text-transform: uppercase; letter-spacing: 0.14em; margin-bottom: 0.5rem; }
.xt-signal-copy { color: var(--xt-gray); font-size: 0.72rem; line-height: 1.5; margin: 0 0 0.75rem; }
