// Shared constants for the Vojo "horseshoe" design language.
//
// The void seam between every pair of horseshoe surfaces (top user-card
// silhouette, bottom call rail, settings/profile rail, page-nav <-> chat
// split, etc.) is painted through the `--vojo-horseshoe-void` CSS
// variable so it reshades with the active theme:
//   * dark theme — pure `#000000` so the seam reads as a hard black
//                  void against `Background.Container` `#0d0e11`.
//   * light theme — soft lavender-grey `#d6d6e3` so the seam stays
//                   visible against the panel bg `#f2f2f7` without
//                   feeling like a harsh black slit.
// Bindings live in `src/index.css` (`:root` light default + `.dark-theme`
// override). Originally introduced with the bottom call rail
// (commit 7054ca2 / `HorseshoeContainer.css.ts`); centralised here so
// consumers don't duplicate the literal.
export const VOJO_HORSESHOE_VOID_COLOR = 'var(--vojo-horseshoe-void)';

// Width (and height where vertical) of the void gap separating two
// horseshoe surfaces — kept identical between the bottom call rail
// and the page-nav <-> chat split so all seams in the app read with
// the same thickness. Pixels, intended for `toRem(...)` at the use
// site.
export const VOJO_HORSESHOE_GAP_PX = 12;

// Corner radius of every horseshoe surface — also pixels, applied via
// `toRem(...)` at the use site. Centralised so the page-nav corners,
// the chat-panel corners, and the bottom call-rail corners stay in
// lockstep, including the bg-image squares painted into those corners
// (which must match the radius exactly to avoid bleed-out).
export const VOJO_HORSESHOE_RADIUS_PX = 32;

// Max width (px) of the centred reading band shared by the AI-bot chat
// (ThreadDrawerContentAssistant / ThreadComposerAssistant) and the 1:1 DM
// bubble chat (BubbleTimelineBand / ComposerBubbleBand). The timeline column
// and the composer MUST use the same value or the messages and the input form
// desync on wide web viewports — so it lives here as one source of truth.
export const VOJO_BUBBLE_BAND_PX = 960;

// Distance (px) from the timeline top at which a bubble (1:1 DM) day capsule
// pins while you scroll through that day. The capsule is a real CSS
// `position: sticky` element (compositor-driven, so it never jitters); this
// value is BOTH the CSS `top` of the sticky pill AND the threshold the
// RoomTimeline scroll effect uses to decide which piled capsule is the
// front (visible) one — so it must stay a single shared source of truth.
export const VOJO_STICKY_DATE_TOP_PX = 8;
