// ───────────────────────────────────────────────────────────────────────────── // Component: Code // File: src/scss/components/_code.scss // // Variants: pre, code, pre code, .diff-track-*, .diff-sign-* // Tokens: --code-output-bg, --bg-overlay, --border-default, --font-mono // --color-success, --color-danger, --color-accent // Usage:
// // Notes: Syntax highlight colors (hljs) are intentionally hardcoded — // they are part of the One Dark theme, not the design system. // ───────────────────────────────────────────────────────────────────────────── pre { background: var(--code-output-bg); border: 1px solid var(--border-default); border-radius: var(--radius-base); padding: var(--space-3); font-size: 13px; font-family: var(--font-mono); overflow-x: auto; white-space: pre-wrap; word-break: break-word; color: var(--text-secondary); line-height: 1.65; } code { font-family: var(--font-mono); font-size: 0.88em; background: var(--bg-overlay); border: 1px solid var(--border-subtle); padding: 1px 6px; border-radius: 4px; } pre code { background: transparent; border: none; padding: 0; font-size: inherit; color: inherit; } // Diff track rows (musical / multi-domain diffs) .diff-track-row { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); margin-bottom: var(--space-1); } .diff-track-added { background: color-mix(in srgb, var(--color-success) 10%, transparent); border-left: 3px solid var(--color-success); } .diff-track-removed { background: color-mix(in srgb, var(--color-danger) 10%, transparent); border-left: 3px solid var(--color-danger); } .diff-track-changed { background: color-mix(in srgb, var(--color-accent) 10%, transparent); border-left: 3px solid var(--color-accent); } .diff-sign { font-size: var(--text-lg); font-weight: var(--weight-bold); width: 20px; flex-shrink: 0; } .diff-sign-add, .diff-sign-add { color: var(--color-success); } .diff-sign-del, .diff-sign-remove { color: var(--color-danger); } .diff-sign-ctx, .diff-sign-change { color: var(--color-accent); }