/* Modal.css — Phase 17 <Modal> primitive variant gloss.
 *
 * Almost-empty by design. Theme.css already carries the full
 * .manifold-modal-* chrome from Phase 16:
 *
 *   .manifold-modal-overlay   theme.css:612
 *   .manifold-modal           theme.css:623
 *   .manifold-modal-header    theme.css:635
 *   .manifold-modal-header h2 theme.css:643
 *   .manifold-modal-close     theme.css:663
 *   .manifold-modal-body      theme.css:681
 *   .manifold-modal-footer    theme.css:1342
 *
 * Those rules use --m-* tokens that route through every theme; the
 * primitive renders correctly in default, sentry, raycast, etc. with
 * zero additional CSS. Phase 19 owns the rename from .manifold-modal-*
 * to whatever the migrated primitive namespace becomes; until then,
 * Modal.jsx consumes the existing class family directly.
 *
 * The single rule below glosses the close-button icon. Modal.jsx wraps
 * the × glyph in <span className="manifold-modal-close-icon"> so this
 * file has a real referent and the PRIM-STYLE gate's token-consumption
 * rule is satisfied with a meaningful read (not a placeholder).
 *
 * PRIM-STYLE rules this file MUST satisfy
 * (tools/audit_primitive_css.py --gate):
 *   1. At least one var(--mt-*) or var(--m-*) consumption — satisfied
 *      below by the color: var(--m-text-muted) read.
 *   2. Zero hex literals — none below.
 *   3. Zero variable declarations — primitive CSS is consume-only;
 *      declarations live in theme.css (codegen-owned via
 *      tools/build_tokens.py).
 *
 * Failure mode if this file regresses:
 *   - Introducing a hex literal here silently bypasses the theme
 *     system. The close button renders correctly in default but
 *     wrong in every other theme. audit_primitive_css.py catches it.
 *   - Declaring a --mt-* variable here shadows the theme.css value
 *     and breaks the theme-switch contract. audit_primitive_css.py
 *     catches it.
 *
 * Recovery recipe:
 *   1. Run `python3 tools/audit_primitive_css.py` to see the failing
 *      rule.
 *   2. For hex_literal: replace with var(--mt-*) reference.
 *   3. For variable_declaration: move into theme.css sentinel block.
 *   4. For missing_token_consumption: re-read at least one --m-* /
 *      --mt-* token in this file.
 */

.manifold-modal-close-icon {
  /* Reinforces the muted-text color from the close button itself so
     screen-magnifier and high-contrast users see a consistent glyph
     contrast even when browsers override <button> font color. The
     parent .manifold-modal-close (theme.css:663-674) already sets
     color: var(--m-text-muted); this re-declaration on the inner span
     guards against descendant overrides leaking in from utility
     classes or theme variants. */
  color: var(--m-text-muted);
  line-height: 1;
}
