////
///
/// Utilities Layer
/// ===========================================================================
///
/// Explicit overrides. One responsibility per file.
///
/// @group Utilities
/// @author Scape Press
/// @link https://scape.style
/// @since 0.1.0 initial release
/// @access public
///
////

// ============================================================================
// Forward
// ============================================================================

// `@layer` is declared per-file inside each utility partial (see
// 01-core/layers and the constitution). `@forward` may not appear inside
// `@layer`, so this index just exposes the partials.

// Spacing
@forward "spacing/margin";
@forward "spacing/padding";
@forward "spacing/gap";

// Layout
@forward "layout/display";
@forward "layout/position";
@forward "layout/visibility";
@forward "layout/float";
@forward "layout/flex";
@forward "layout/grid";
@forward "layout/align";
@forward "layout/z-index";
@forward "layout/sizing";

// Typography
@forward "typography/text-align";
@forward "typography/truncate";
@forward "typography/text-wrap";

// Accessibility
@forward "accessibility/visually-hidden";
@forward "accessibility/focus-ring";

// Interaction
@forward "interaction/pointer-events";
@forward "interaction/user-select";
@forward "interaction/stretched-link";
@forward "interaction/cursor";

// Media
@forward "media/object-fit";
@forward "media/ratio";

// Print
@forward "print/print";

// Legacy v0.2 class shim (display_*, flex--*, gap--*, grid--*,
// grid__frame--*, margin--*, padding--*, align_self--*, ...)
@forward "legacy-compat";

// Legacy component class shim (carousel-*, slideshow_*, video_*, chat_*,
// blogpost--*, lightbox*, preloader_*, ribbon__*, toast-*, toggle_*, ...),
// emitted into `@layer ss.compat`, which sits below `ss.components`: when a
// class name collides, the modern module wins. legacy-compat holds utility
// aliases and stays in `ss.utilities`. The scapepress sites' `ss-c-*`
// classes are native modules now (`31-modules/*/_*.sites.scss`).
@forward "legacy-components-compat";

// Stylescape 0.3 class names (`.button`, `.badge`, `.ribbon--top`,
// `.frame_main`, `.grid__frame--24`, `.margin--10_right`, …) mapped onto the
// 0.4 module mixins and tokens, in `@layer ss.compat`. Opt out with
// `$v03-compat: false`. See doc/migration-0.4.md.
@forward "legacy-v03-compat";
