/*
 * Application layout.
 *
 * Spacing.css is the 4px grid. This file names the layout decisions every
 * application plane must share, so switching routes does not change how far
 * content sits from chrome, how wide a sidebar is, or where a page column
 * stops. A length that is only used once is not a layout token; it stays in
 * the component.
 *
 * Container queries cannot read custom properties. The compact breakpoint
 * literal in @container rules is 56rem and must stay in lockstep with
 * --sigvelo-layout-break-compact.
 */

:root {
  /* Inset of an application plane from its host, and of page content from
     that plane. Codex and Claude both settle on 12px in the side panel. */
  --sigvelo-layout-gutter: var(--sigvelo-spacing-3);

  /* Gap between sibling regions in a shell (conversation | workbench). */
  --sigvelo-layout-gap: var(--sigvelo-layout-gutter);

  /* Vertical rhythm between stacked page sections. */
  --sigvelo-layout-stack: var(--sigvelo-spacing-4);

  /* Gap inside a wrap cluster: toolbars, action groups, compact lists. */
  --sigvelo-layout-cluster: var(--sigvelo-spacing-2);

  /* Default rail. Hosts may override --responsive-sidebar-shell-sidebar-size;
     this is the fallback before that hook is set, and the documented default. */
  --sigvelo-layout-sidebar: 16rem;

  /* Conversation column. Sizing this side, not the workbench, keeps one
     readable transcript at any window width. 24.5rem is 392px. */
  --sigvelo-layout-conversation: 24.5rem;

  /* Compact shell: one track, no inset plane. Used as documentation and by
     script; @container conditions must repeat the 56rem literal. */
  --sigvelo-layout-break-compact: 56rem;

  /* The flexible track in every 1fr column or row. minmax(0, 1fr) is what
     stops a grid item from overflowing its track. */
  --sigvelo-layout-track-fill: minmax(0, 1fr);

  /* Capped reading/work column for full-page lists and dossiers. 50rem is
     Ploy's 800px list cap; wider panes stretch a name away from its status. */
  --sigvelo-layout-content: 50rem;

  /* Application chrome row, before safe-area insets. */
  --sigvelo-layout-chrome: calc(
    var(--sigvelo-density-compact-control-height) + var(--sigvelo-spacing-2)
  );
}
