/* CodeMirror Overrides — Search Dialog, Match Highlighting, Hints */

.CodeMirror-dialog {
    background: var(--color-bg-secondary); border-bottom: 1px solid var(--color-border);
    padding: var(--space-8) var(--space-12); color: var(--color-text-primary); font-family: inherit;
}
.CodeMirror-dialog input {
    background: var(--color-bg-tertiary); border: 1px solid var(--color-border);
    border-radius: var(--radius-sm); color: var(--color-text-primary);
    padding: var(--space-4) var(--space-8); font-family: inherit; outline: none;
}
.CodeMirror-dialog input:focus { border-color: var(--color-accent-primary); }
.CodeMirror-dialog button {
    background: var(--color-accent-primary); border: none; border-radius: var(--radius-sm);
    color: white; padding: var(--space-4) var(--space-12); margin-left: var(--space-8); cursor: pointer;
}
.CodeMirror-dialog button:hover { background: var(--color-accent-secondary); }

.cm-matchhighlight { background: var(--color-accent-primary-bg); border-radius: var(--radius-xs); }
.cm-searching { background: var(--color-accent-warning-bg); border-radius: var(--radius-xs); }
.CodeMirror-search-match { background: var(--color-accent-warning); opacity: 0.8; }

/* Hints */
.CodeMirror-hints {
    background: var(--color-bg-secondary); border: 1px solid var(--color-border);
    border-radius: var(--radius-sm); box-shadow: var(--shadow-hint);
    font-family: var(--font-family-mono); font-size: var(--font-size-md);
    max-height: 260px; overflow-y: auto; padding: var(--space-4) 0; z-index: var(--z-modal);
}
.CodeMirror-hint {
    padding: var(--space-4) var(--space-12); color: var(--color-text-primary);
    cursor: pointer; white-space: nowrap; line-height: var(--line-height-relaxed); border-radius: 0;
}
.CodeMirror-hint:hover { background: var(--color-bg-hover); }
li.CodeMirror-hint-active { background: var(--color-accent-primary); color: white; }

.cm-hint-command     { color: var(--color-hint-command); }
.cm-hint-environment { color: var(--color-hint-environment); }
.cm-hint-greek       { color: var(--color-hint-greek); }
.cm-hint-math        { color: var(--color-hint-math); }
li.CodeMirror-hint-active .cm-hint-command,
li.CodeMirror-hint-active .cm-hint-environment,
li.CodeMirror-hint-active .cm-hint-greek,
li.CodeMirror-hint-active .cm-hint-math { color: white; }

.cm-hint-preview { float: right; margin-left: var(--space-12); opacity: 0.6; font-size: var(--font-size-base); }
li.CodeMirror-hint-active .cm-hint-preview { opacity: 0.8; }
