mirror of
https://github.com/joshua-walls/trailmark-theme.git
synced 2026-07-22 04:50:30 +00:00
6.7 KiB
6.7 KiB
Obsidian Official-First Compliance Audit
Status: local working file only.
Baseline: official Obsidian Developer Documentation CSS variable pages are the first source of truth. Structural selectors stay only when an official variable cannot express the Trailmark behavior and the override is explicitly approved.
Audit Snapshot
- Official CSS variable docs checked: 63 pages.
- Official variables extracted: 678.
- Trailmark CSS variables assigned: 125.
- Official documented variables assigned in
theme.css: 58. - Trailmark/Forge custom variables assigned: 38.
- Non-doc or legacy variables assigned: 29.
Official-First Refactors
These should move to documented variables before structural selectors are kept.
| ID | Area | Current Pattern | Official First Path | Status |
|---|---|---|---|---|
| RF-01 | Fonts | --font-family-editor, --font-family-preview, --font-family-interface, --font-family-monospace |
--font-text-theme, --font-interface-theme, --font-monospace-theme |
Pending |
| RF-02 | Bold and italic | --strong-color, --em-color, strong, em, .cm-strong, .cm-em |
--bold-color, --italic-color, --bold-weight, --bold-modifier |
Pending |
| RF-03 | Code | --inline-code, --code-block, --pre-code, code, pre, .cm-inline-code |
--code-background, --code-normal, syntax --code-* variables |
Pending |
| RF-04 | Blockquotes | --blockquote-border, blockquote, .HyperMD-quote, .cm-quote |
--blockquote-border-color, --blockquote-border-thickness, --blockquote-color, --blockquote-background-color |
Pending |
| RF-05 | Links | a, .internal-link, .cm-link, .external-link, .cm-url |
--link-color, --link-color-hover, --link-external-*, --link-unresolved-* |
Pending |
| RF-06 | Tags | .cm-hashtag, a.tag, metadata tag pills |
--tag-* variables |
Pending |
| RF-07 | Tables | table, th, tr, td, Dataview table base selectors |
--table-* variables for native tables; plugin selectors need separate approval |
Pending |
| RF-08 | Metadata | .metadata-container, .metadata-properties, .metadata-property |
--metadata-* variables |
Pending |
| RF-09 | Tabs | .workspace-tab-header*, .workspace-tabs* |
--tab-* variables |
Pending |
| RF-10 | Status bar | .status-bar |
--status-bar-* variables |
Pending |
| RF-11 | Titlebar and ribbon | .titlebar*, .workspace-ribbon* |
--titlebar-*, --ribbon-* variables |
Pending |
| RF-12 | Modals/settings basics | .modal, .prompt, .setting-item |
--modal-*, button/input/dropdown variables first |
Pending |
| RF-13 | Buttons and inputs | button, .clickable-icon, input, textarea, select, .dropdown, .checkbox-container |
--button-radius, --input-*, --dropdown-*, --checkbox-*, interactive colors |
Pending |
| RF-14 | Embeds | .markdown-embed, .file-embed |
--embed-* variables |
Pending |
| RF-15 | Graph | .graph-view.color-* |
--graph-* variables |
Completed locally in current working tree |
| RF-16 | Callout aliases | partial callout alias coverage | official callout type alias table | Completed locally in current working tree |
Override Approval Matrix
Each override below requires explicit approval before it is kept or expanded during the refactor.
| Override ID | Area | Why Official Vars Are Insufficient | Current Selectors / Behavior | Approval |
|---|---|---|---|---|
| OV-01 | File explorer route cues | --nav-* covers colors, spacing, weights, guides, but not Trailmark route markers, folder-depth color cycles, or active edge bars. |
.nav-*, .tree-item-*, folder depth rails, active file/folder bars. |
Approved for light-mode sidebar explorer tuning |
| OV-02 | Mobile drawer and bottom picker | Published docs do not expose enough mobile drawer/picker variables for the screenshots' legibility fixes. | .workspace-drawer*, .mobile-navbar, .mobile-toolbar, .mobile-tab-switcher. |
Pending |
| OV-03 | Mermaid SVG internals | No currently published Mermaid CSS variable page was found in the official docs cache. | .mermaid .node, .edgePath, .flowchart-link, labels, arrows. |
Pending |
| OV-04 | Forge plugin styling | Forge is plugin-owned, not covered by Obsidian core CSS variable docs. | .forge-*, data-status, data-current-note-status, data-forge-current-note-status. |
Pending |
| OV-05 | Dataview styling | Dataview is plugin-owned, not covered by Obsidian core CSS variable docs. | .dataview*, .table-view-table, card-table layouts. |
Pending |
| OV-06 | Inline title waypoint treatment | --inline-title-* covers text attributes only, not Trailmark border, gradient, or status signal. |
.inline-title, .markdown-source-view.mod-cm6 .inline-title, status-hook title selectors. |
Pending |
| OV-07 | Heading decorative treatment | --h* variables cover text attributes, not Trailmark trailhead underlines or source-mode cleanup. |
h1-h6, .cm-header-*, .HyperMD-header-* decoration selectors. |
Pending |
| OV-08 | Callout structural polish | --callout-* covers core callout layout and colors, not title tabs, nested gradients, collapsed markers, or Live Preview gutter classes. |
.callout .callout-title::*, nested .callout .callout, .HyperMD-callout source gutters. |
Pending |
| OV-09 | Settings modal reshaping | --modal-*, --button-*, and --input-* cover basics, not the full map-like settings shell. |
.modal.mod-settings, .vertical-tab-content, .setting-item, settings controls. |
Pending |
| OV-10 | Active workspace leaf route edge | Workspace docs currently expose only --workspace-background-translucent; no active-pane edge variable. |
.workspace-leaf.mod-active, active view header edge/shadow. |
Pending |
| OV-11 | Hover popover framing | --popover-* covers sizing/font, not Trailmark left-edge frame/preview surface treatment. |
.popover.hover-popover, nested preview content. |
Pending |
| OV-12 | Search/backlink/outgoing result markers | Search docs cover limited variables; not result waypoint ticks/framing. | .search-result-*, .backlink-pane, .outgoing-link-pane. |
Pending |
| OV-13 | Image shape utility | No official variable governs custom image shape opt-in via alt/src fragment. | img[alt*="#circle"], img[src*="#circle"]. |
Pending |
Validation Commands
rg -n "!important|:has\\(" theme.css
rg -n -- "graph-view\\.color|Reference/CSS\\+variables/Editor/Mermaid" theme.css AGENTS.md
Official Docs Scope
Fetched from the official Obsidian Developer Documentation Publish cache:
Reference/CSS variables/**- Relevant pages include colors, typography, buttons, inputs, navigation, file explorer, graph, callouts, inline title, properties, tables, tags, embeds, tabs, modals, popovers, ribbon, status bar, titlebar, and workspace.