/**
 * @file inbox-poster.css
 * @author Jouni Miikki
 * SPDX-License-Identifier: MIT
 * @description The Messages page in the poster face (design canvas "AIMEAT Viestien sivu", direction
 *   A), as overrides scoped to `.og-ib` over inbox.css's messenger: the two panes under an ink rule,
 *   the list with its coral section labels and the sun on the open row, the thread head with two
 *   doors, bubbles with an ink border (sun for one's own) that name their writer, the composer under
 *   an ink rule, and the pages (broadcast, tracked, results) with the head the mast already carries
 *   removed. Tokens only. NOTE: this file must be linked in spa.html after inbox.css.
 * @version-history
 *   v1.17.0 -- 2026-09-26 -- The page is SettingsPage (name "ib") and the panes ConversationPane: what stays
 *     is the page's own place for the head, the rail pages' column, and on a phone a rail page over the
 *     whole screen (the open panes cover it by themselves). The broadcast choices are the Choice now:
 *     their rules go.
 *   v1.16.0 -- 2026-09-26 -- The list, the messages, the thread and the composer are components now
 *     (ConversationList, Message, Thread, Composer's message tone; conversation-list.css, message.css,
 *     composer.css): their rules here go. The rule between the list and the conversation is the
 *     page's .inbox-side (inbox.css). What stays is the page's own: the head, the two panes' place, the
 *     thread head, the pages under the same crumb.
 *   v1.15.0 -- 2026-09-26 -- The rule between the list and the conversation reads --shape-frame-heavy and --shape-rule-colour (a move: the AIMEAT values equal the old ones).
 *   v1.14.0 -- 2026-09-26 -- The typing box is the chat's one row (.poster-composer and its stacked cut): the field with the thick line under it, the tools as framed squares, the dark block that sends with the page's word; Messages (and its Broadcast form) and an agent's Chat tab take it; the framed field, the round-cornered tools and the box's frame go (a unification: Jouni's decision "Typing box").
 *   v1.13.0 -- 2026-09-26 -- A message is the chat's turn (components/Turn.js classes): your words bold on the sun, the other side's beside the pale coral spine, the name above the words, the time and the read marks under them with Copy and Listen, the other six actions behind one ⋯ (CardMenu inline); an agent's options are the chat's choices. The frame, the picture beside the other side, the action pill and the Chat tab's bubbles, pairing lines and small reader go; a suggested reply waiting for approval keeps its dashed box (a unification: Jouni's decision "Message").
 *   v1.12.0 -- 2026-09-26 -- A list of conversations is the chat's list (ThreadList's rows, .poster-thread): the name in bold, one quiet line with the time and the last message, the open one on the sun; a person's heading is its person tone (ThreadPerson) with the counts named; the row's archive square is the small icon button in the delete's place. Messages' rows, a broadcast's results list and an agent's Chat threads take it; their own row looks go (a unification: Jouni's decision "Conversation list").
 *   v1.11.0 -- 2026-09-25 -- The avatar's own frame, corners and ground go: it is the Object box's avatar cut (.poster-box--avatar, css/poster.css); its size stays here (UI consolidation phase 5, a unification).
 *   v1.10.0 -- 2026-09-25 -- Every small number is the Count (.poster-count waiting or tally), a unification: Jouni's decision Count.
 *   v1.9.0 -- 2026-09-25 -- Every tag is the Tag (.poster-chip and its tones, .poster-chips for a row), a unification: Jouni's decision Tag.
 *   v1.8.0 -- 2026-09-25 -- The headings over lists wear .poster-day-title; their rules here keep only their place (Jouni's decision "Group heading", a unification).
 *   v1.7.0 -- 2026-09-25 -- The row labels' look is .poster-label; their rules here keep only their place (Jouni's decision "Row label", a unification).
 *   v1.6.0 -- 2026-09-25 -- A button that is a mark, not a word, is the library's small icon button,
 *     .poster-icon--small (Jouni's decision "Icon button"): the rules that drew the old marks here go;
 *     a place's layout value stays on its own class.
 *   v1.5.0 -- 2026-09-25 -- The loud action is the library's dark block, .poster-slab (Jouni's
 *     decision "Loud action"): the rules that restyled the old og-slab and .btn-primary here go, and a
 *     place's layout value moves to the new class.
 *   v1.4.0 -- 2026-09-25 -- Dead rules removed: selectors whose classes no file writes (UI consolidation phase 5, a move; the browser's reading proves only those went).
 *   v1.3.0 -- 2026-09-13 -- Compose inbox top rules from poster.css.
 *   v1.2.0 — 2026-09-13 — The list's sections, the archive boxes and the selection in the poster face:
 *     square corners, ink borders, a figure for the counts.
 *   v1.1.0 — 2026-09-08 — The ink on the sun reaches the words. A message one wrote oneself renders
 *     its body through .md-body, which sets its own colour, so in the dark theme the text came out
 *     near-white on sun yellow: measured 1.52:1 against the 4.5:1 floor for body text. Every
 *     markdown element that carries a colour of its own is named here.
 *   v1.0.0 — 2026-08-29 — Initial.
 */

.og-ib { gap: 0; }
.og-ib .og-mast--page { margin-top: .6rem; }
.og-ib .og-title small { align-items: center; }
.og-ib .og-mast-actions .og-doors { flex-wrap: nowrap; }

/* ── The pages under the same crumb: broadcast, tracked responses, results, list rules ── */
.og-ib .og-grid { margin-top: 1.1rem; }

@media (max-width: 760px) {
  /* A page over the whole screen, as an open conversation is; its rail is the way back. */
  .og-ib:has(> .og-grid) { position: fixed; inset: 0; z-index: 1000; gap: 0; margin: 0; overflow-y: auto; background: var(--bg, var(--card-bg)); }
  body:has(.og-ib > .og-grid) { overflow: clip; }
  body:has(.og-ib > .og-grid) .topnav { display: none; }
  .og-ib:has(> .og-grid) > .og-crumb, .og-ib:has(> .og-grid) > .og-mast { display: none; }
}
