/* Quarto outline sidebar view (QmdOutlineView) */ .qmd-outline { padding: var(--size-4-2) var(--size-4-1); } .qmd-outline-empty { padding: var(--size-4-2) var(--size-4-3); color: var(--text-muted); font-size: var(--font-ui-small); } .qmd-outline-list { display: flex; flex-direction: column; } .qmd-outline-item { display: flex; align-items: center; gap: var(--size-2-1); padding: var(--size-2-1) var(--size-4-3); border-radius: var(--radius-s); color: var(--text-muted); font-size: var(--font-ui-small); cursor: pointer; } /* Chevron slot — always present so leaf and parent headings align. */ .qmd-outline-toggle { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; width: var(--size-4-4); height: var(--size-4-4); color: var(--text-faint); transition: transform 100ms ease-in-out; } .qmd-outline-toggle .svg-icon { width: var(--icon-xs, 14px); height: var(--icon-xs, 14px); } /* Collapsed: chevron points right, sub-tree hidden. */ .qmd-outline-item.is-collapsed .qmd-outline-toggle { transform: rotate(-90deg); } .qmd-outline-children.is-collapsed { display: none; } .qmd-outline-item-text { flex: 1 1 auto; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .qmd-outline-item:hover { background-color: var(--background-modifier-hover); color: var(--text-normal); } .qmd-outline-item:focus-visible { outline: 2px solid var(--interactive-accent); outline-offset: -2px; color: var(--text-normal); } /* Indentation by heading level — driven by the data-level attribute so the view itself sets no inline styles. Each level adds one --size-4-4 step. */ .qmd-outline-item[data-level='1'] { padding-left: var(--size-4-3); } .qmd-outline-item[data-level='2'] { padding-left: calc(var(--size-4-3) + var(--size-4-4)); } .qmd-outline-item[data-level='3'] { padding-left: calc(var(--size-4-3) + var(--size-4-4) * 2); } .qmd-outline-item[data-level='4'] { padding-left: calc(var(--size-4-3) + var(--size-4-4) * 3); } .qmd-outline-item[data-level='5'] { padding-left: calc(var(--size-4-3) + var(--size-4-4) * 4); } .qmd-outline-item[data-level='6'] { padding-left: calc(var(--size-4-3) + var(--size-4-4) * 5); } /* Code editor views (QmdCodeFileView — YAML and Lua files) */ .qmd-code-view { height: 100%; padding: 0; overflow: hidden; background: var(--background-primary); } .qmd-code-view .cm-editor { height: 100%; background: var(--background-primary); color: var(--text-normal); font-family: var(--font-monospace); font-size: var(--font-ui-small); line-height: var(--line-height-tight); outline: none; } .qmd-code-view .cm-scroller { font-family: var(--font-monospace); font-size: var(--font-ui-small); line-height: var(--line-height-tight); } .qmd-code-view .cm-content { min-height: 100%; padding: var(--size-4-4); caret-color: var(--text-normal); tab-size: 2; } .qmd-code-view .cm-focused { box-shadow: inset 0 0 0 2px var(--interactive-accent); } .qmd-code-view.qmd-code-view .cm-editor .cm-selectionBackground { background: var(--text-selection); } .qmd-yaml-key { color: var(--text-accent); font-weight: 600; } .qmd-yaml-colon, .qmd-yaml-list-marker, .qmd-yaml-doc-marker { color: var(--text-faint); font-weight: 600; } .qmd-yaml-string { color: var(--text-normal); } .qmd-yaml-number, .qmd-yaml-boolean, .qmd-yaml-anchor, .qmd-yaml-block, .qmd-yaml-quarto-format { color: var(--interactive-accent); } .qmd-yaml-comment { color: var(--text-muted); font-style: italic; } .qmd-yaml-scalar { color: var(--text-normal); } /* Lua editor view tokens */ .qmd-lua-keyword { color: var(--text-accent); font-weight: 600; } .qmd-lua-string { color: var(--interactive-accent); } .qmd-lua-number { color: var(--interactive-accent); } .qmd-lua-comment { color: var(--text-muted); font-style: italic; }