//! Cross-platform UX formatting for CalcPad.
//!
//! This module extracts the notepad UX specs from Epics 10-1, 10-2, and 10-4
//! into the engine so that every platform (macOS, Windows, Web) renders
//! identical results.
//!
//! # Sub-modules
//!
//! * [`answer_format`] — Number formatting for the answer column: standard,
//!   scientific, and SI notation with decimal places (0--10), thousands
//!   separators, and currency symbol placement.
//!   *(Epic 10-4: Answer Column Formatting)*
//!
//! * [`line_types`] — Line-type classification (blank, heading, comment,
//!   label, expression) so the UI knows how to style each line and whether
//!   to show an answer.
//!   *(Epic 10-1: Headers, Comments & Labels)*
//!
//! * [`clipboard`] — Clipboard value extraction from a `CalcResult`:
//!   raw numeric string (single-click) vs display string with unit
//!   (double-click).
//!   *(Epic 10-2: Click-to-Copy Answer)*

pub mod answer_format;
pub mod clipboard;
pub mod line_types;

// Re-export the most commonly used items for convenience.
pub use answer_format::{
    format_number, resolve_formatting, CurrencyPosition, FormattingOptions, LineFormatOverride,
    Notation, ThousandsSeparator,
};
pub use clipboard::{clipboard_values, ClipboardValues};
pub use line_types::{classify_line, is_non_calculable, LineType};
