:root { color-scheme: dark; }
* { box-sizing: border-box; }
body { margin: 0; background: #f9f9f9; color: #dce0d8; font: 14px/1.8 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace; }
h1,p { margin: 0; font: inherit; }
a { color: inherit; text-decoration: none; }
a:hover { text-decoration: underline; text-underline-offset: 5px; }
a:focus-visible { outline: 2px solid #a5c591; outline-offset: 5px; }
.agent-response { max-width: 820px; margin: 0 auto; padding: 65px 35px 80px; }
.agent-message { color: #303030; font: 18px/1.6 Arial, Helvetica, sans-serif; }
.agent-followup { margin-top: 28px; }
.plain-file { --file-bg: #1b1e1b; --file-bar: #242923; --file-border: #343a32; --file-text: #dce0d8; --file-muted: #a2ac9b; --file-numbers: #818b79; --file-accent: #b6ce9b; margin-top: 25px; color: var(--file-text); background: var(--file-bg); border: 1px solid var(--file-border); border-radius: 5px; overflow: hidden; }
.plain-file:has(.file-theme-toggle input:not(:checked)) { color-scheme: light; --file-bg: #f6f5ef; --file-bar: #edece5; --file-border: #d5d9ce; --file-text: #333b32; --file-muted: #626c5f; --file-numbers: #717c69; --file-accent: #486332; }
.plain-file header,.plain-file footer { display: flex; align-items: center; justify-content: space-between; color: var(--file-muted); font-size: 11px; }
.plain-file header { border-bottom: 1px solid var(--file-border); padding: 12px 20px; background: var(--file-bar); }
.file-content { padding: 28px 20px; line-height: 2; }
.file-line { display: grid; grid-template-columns: 24px minmax(0,1fr); gap: 20px; }
.line-number { color: var(--file-numbers); user-select: none; font-weight: 400; }
.file-line p { overflow-wrap: anywhere; }
h1 { font-weight: 400; }
h1 strong { font-weight: 700; }
.file-socials { display: flex; flex-wrap: wrap; gap: 0 24px; color: var(--file-accent); }
.plain-file a { color: var(--file-accent); }
.file-back { color: var(--file-accent); }
.company-title { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 20px; }
.company-dates { color: var(--file-muted); font-size: 12px; }
.company-website { color: var(--file-accent); overflow-wrap: anywhere; }
.plain-file footer { border-top: 1px solid var(--file-border); padding: 10px 20px; }
.plain-file a:focus-visible { outline-color: var(--file-accent); }
.file-theme-toggle { display: flex; align-items: center; gap: 8px; min-height: 28px; color: var(--file-muted); cursor: pointer; }
.file-theme-toggle span { font: 19px/1 Georgia, serif; }
.file-theme-toggle input { appearance: none; position: relative; width: 32px; height: 18px; margin: 0; border: 1px solid var(--file-muted); border-radius: 12px; background: var(--file-border); cursor: pointer; }
.file-theme-toggle input::before { content: ''; position: absolute; top: 3px; left: 3px; width: 10px; height: 10px; border-radius: 50%; background: var(--file-accent); }
.file-theme-toggle input:checked::before { left: 17px; }
.file-theme-toggle:has(input:not(:checked)) .theme-sun,.file-theme-toggle:has(input:checked) .theme-moon { color: var(--file-accent); }
.file-theme-toggle input:focus-visible { outline: 2px solid var(--file-accent); outline-offset: 3px; }
@media(max-width:600px) {
  body { font-size: 12px; }
  .agent-response { padding: 35px 18px 60px; }
  .file-content { padding: 23px 14px; }
  .file-line { grid-template-columns: 20px minmax(0,1fr); gap: 12px; }
  .file-socials { column-gap: 14px; }
}
