//! Themes: semantic design tokens and the AbstractUIC theme family.
//!
//! Widgets consume [`TokenId`]s resolved against the active theme's
//! [`TokenSet`]; they never hold raw colors. The registry ports the
//! AbstractUIC palette family (abstract dark/light, observer-night,
//! catppuccin x4, rose-pine x3, tokyo-night, nord, one-dark/light,
//! dracula, monokai, gruvbox, solarized x2, everforest x2) hex-for-hex
//! from `theme.css`; tokens the CSS lacks are derived by documented,
//! contrast-guarded rules. Runtime theme switching is a signal write.
//!
//! Contrast floors and role hygiene are test-pinned (see
//! `docs/design/theme-identity.md` for the full token model and floors).
//!
//! Apps bring their own theme through the same pipeline the built-ins
//! ride: [`Palette`] (your ~12 authored colors) → [`Palette::derive`] (the
//! engine's derivation, not a copy of it) → [`register()`] (the audit). See
//! [`palette`] for why the derivation is public rather than left as an
//! afternoon's reimplementation.
//!
//! OWNER: DESIGN.
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;