/* freddie-dashboard.css — supplemental rules for the freddie dashboard surfaces.
   Most of the dashboard renders through bible components (AppShell/Panel/Kpi/
   Table/Receipt/Hero/Row/EmptyState/Chip) that ship their own classes via
   247420.css. This file holds the freddie-specific chrome that AGENTS.md's
   inline-styles ban pushed out of freddie-dashboard.js and the freddie/* page
   modules. Tokens follow the kit --os-* namespace plus the base --space-*/
   --fs-* 8pt scale, with the var(--token, fallback) idiom so the kit's
   standalone theme.css resolves cleanly. */

.app-fd .fd-pre {
    font-family: var(--os-mono, JetBrains Mono, monospace);
    font-size: var(--fs-tiny, 12px);
    white-space: pre-wrap;
    word-break: break-all;
    margin: 0;
    max-height: 320px;
    overflow: auto;
    background: var(--os-bg-2, #F0E9DA);
    padding: var(--space-2, 8px) var(--space-3, 16px);
    border-radius: var(--os-radius-sm, 6px);
}

.fd-root { height: 100%; overflow: hidden; display: flex; flex-direction: column; }

.fd-btn-mini { padding: var(--space-1, 4px) var(--space-2, 8px); font-size: var(--fs-tiny, 12px); }

/* chat composer fields */
.fd-chat-form { display: flex; flex-direction: column; gap: var(--space-3, 16px); }
.fd-chat-row  { display: flex; gap: var(--space-3, 16px); flex-wrap: wrap; }
.fd-chat-field { display: flex; flex-direction: column; gap: var(--space-1, 4px); min-width: 120px; }
.fd-chat-field-grow { flex: 2; min-width: 140px; }
.fd-chat-field > label { font-family: var(--os-mono, JetBrains Mono, monospace); font-size: var(--fs-micro, 11px); color: var(--os-fg-3, #857B6C); letter-spacing: var(--tr-label, 0.10em); text-transform: uppercase; }
.fd-chat-field > input { width: 100%; box-sizing: border-box; }
.fd-chat-submit { display: flex; gap: var(--space-3, 16px); align-items: flex-end; }
.fd-chat-submit textarea { flex: 1; resize: none; min-height: 80px; }
.fd-chat-submit > button { align-self: flex-end; }

/* chatlog (legacy fd-chat-msgs container) */
.fd-chatlog {
    max-height: 420px; overflow-y: auto;
    background: var(--os-bg-2, #F0E9DA);
    border-radius: var(--os-radius-sm, 6px);
    padding: var(--space-1, 4px); margin-top: var(--space-2, 8px);
}
.fd-chatlog-msg { padding: var(--space-1, 4px) var(--space-3, 16px); background: var(--os-bg-2, #F0E9DA); white-space: pre-wrap; word-break: break-word; }
.fd-chatlog-assistant { color: var(--os-accent, #3F8A4A); }
.fd-chatlog-tool { margin: var(--space-1, 4px) 0; padding: var(--space-1, 4px) var(--space-2, 8px); background: var(--os-bg-3, #E3DAC7); border-radius: var(--os-radius-sm, 6px); font-family: var(--os-mono, JetBrains Mono, monospace); font-size: var(--fs-tiny, 12px); }
.fd-chatlog-tool-sum { cursor: pointer; color: var(--os-red, #FF6B4A); padding: var(--space-1, 4px) 0; }
.fd-chatlog-tool-body { margin: var(--space-1, 4px) 0 0; white-space: pre-wrap; word-break: break-all; max-height: 200px; overflow-y: auto; }

/* chip wraps (providers, env) */
.fd-chip-wrap { display: flex; flex-wrap: wrap; gap: var(--space-1, 4px); }
.fd-chip-wrap-padded { padding: var(--space-2, 8px) var(--space-1, 4px); }
.fd-env-chip { cursor: pointer; }
