/** * styles/scrying-pool.less — Entry point (@imports only) * * Build: npm run build → dist/styles/scrying-pool.css * Watch: npm run watch (chokidar detects changes in @import-ed partials) * * Import order: tokens (base → states → motion → focus) → components */ // ── Token layers ───────────────────────────────────────────────────────────── @import "tokens/_base.less"; @import "tokens/_states.less"; @import "tokens/_motion.less"; @import "tokens/_focus.less"; // ── Component styles ────────────────────────────────────────────────────────── @import "components/_participant-card.less"; @import "components/_roster-strip.less"; @import "components/_directors-board.less"; @import "components/_scene-preset-panel.less"; @import "components/_notification.less"; @import "components/_player-badge.less"; @import "components/_player-panel.less"; /* * VisibilityBadge :root exception * ───────────────────────────────────────────────────────────────────────────── * PlayerStatusBadge (FR-22) is mounted directly onto Foundry's AV tile DOM, * OUTSIDE the .scrying-pool root element. Its state tokens must therefore be * declared on :root rather than scoped under .scrying-pool. * * This is an intentional architectural exception — all other module CSS MUST * remain scoped under .scrying-pool. Do not add additional :root declarations * without documenting the architectural reason here. * * The badge tokens are a subset of the Layer 2 state tokens declared in * _states.less, re-exported on :root for badge accessibility outside the root. */ :root { --sp-badge-state-active-bg: var(--sp-state-active-bg); --sp-badge-state-active-text: var(--sp-state-active-text); --sp-badge-state-hidden-bg: var(--sp-state-hidden-bg); --sp-badge-state-hidden-text: var(--sp-state-hidden-text); --sp-badge-state-self-muted-bg: var(--sp-state-self-muted-bg); --sp-badge-state-self-muted-text: var(--sp-state-self-muted-text); --sp-badge-state-offline-bg: var(--sp-state-offline-bg); --sp-badge-state-offline-text: var(--sp-state-offline-text); --sp-badge-state-cam-lost-bg: var(--sp-state-cam-lost-bg); --sp-badge-state-cam-lost-text: var(--sp-state-cam-lost-text); --sp-badge-state-reconnecting-bg: var(--sp-state-reconnecting-bg); --sp-badge-state-reconnecting-text: var(--sp-state-reconnecting-text); /* Badge surface & text (badge mounts outside .scrying-pool root) */ --sp-badge-surface: var(--sp-badge-bg, rgba(0, 0, 0, 0.72)); --sp-badge-color: var(--sp-badge-text, #dde2e8); }