/* Claude-style hierarchy using open alternatives, not Anthropic font files.
   Preserve Cooper's supplied wordmark and terminal sprite metrics. */
@font-face { font-family:'DM Sans'; src:url('./assets/fonts/dm-sans.woff2') format('woff2'); font-style:normal; font-weight:100 1000; font-display:swap; }
@font-face { font-family:'DM Sans'; src:url('./assets/fonts/dm-sans-italic.woff2') format('woff2'); font-style:italic; font-weight:100 1000; font-display:swap; }
@font-face { font-family:'Source Serif 4'; src:url('./assets/fonts/source-serif.woff2') format('woff2'); font-style:normal; font-weight:200 900; font-display:swap; }
@font-face { font-family:'Source Serif 4'; src:url('./assets/fonts/source-serif-italic.woff2') format('woff2'); font-style:italic; font-weight:200 900; font-display:swap; }
:root {
  --interface-font: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --reading-font: 'Source Serif 4', Charter, Georgia, serif;
  font-optical-sizing: auto;
  font-family: var(--interface-font);
}
body { font-size: 14px; }
button, input, textarea, select { font-family: var(--interface-font); }
.welcome h1, .panel h2 { font-family: var(--reading-font); font-weight: 400; letter-spacing: -.025em; }
.welcome h1 { font-size: clamp(32px, 3.1vw, 42px); line-height: 1.15; }
.hero-description { font-size: 14px; line-height: 1.6; }
.welcome .eyebrow, .section-label, .panel-head .eyebrow { font-size: 10px; letter-spacing: .16em; }
.new-chat, .cap-nav, .all-tools, .chat-item { font-size: 13px; }
.breadcrumb strong, .notebook-save { font-size: 13px; }
.suggestion strong, .baseline-start-button strong { font-size: 14px; font-weight: 500; }
.suggestion > span:not(.card-icon):not(.card-arrow), .baseline-start-button small { font-size: 12px; }
.baseline-action, .tool-toggle, .company-chip, .coverage-control, .coverage-invitation, .memory-toggle { font-size: 12px; }
.composer textarea { font-size: 15px; line-height: 1.55; }
.composer-disclaimer { font-size: 10px; }
.panel h2 { font-size: 28px; }
.panel h3, .panel label, .panel-button, .setting-row, .research-plans,
.capability-group > summary, .library-readiness > summary, .notebook-snapshot > summary { font-size: 13px; }
.panel p, .panel input[type=search], .panel input[type=password], .panel input[type=text] { font-size: 14px; }
.panel-button small, .setting-row small, .research-plan-list small { font-size: 12px; }
.company-option strong { font-size: 14px; }
.company-option small { font-size: 12px; }
.workbench-context, .workbench-status, .workbench-field small, .workbench-note, .workbench-basis { font-size: 12px !important; }
.workbench-button, .workbench-primary { font-size: 13px !important; }
.workbench-preview > summary, .workbench-upload > summary, .workbench-check { font-size: 13px; }
.notebook-actions .panel-button, .workbench-button, .workbench-primary, .primary-button { font-size: 13px; }
.workbench-field input, .workbench-field select, .workbench-field textarea { font-size: 14px; }
.answer-body, .terminal-answer .answer-body, .notebook-message .answer-body,
.draft-answer { font-family: var(--reading-font); font-size: 17px; line-height: 1.7; }
.user-message .message-text { font-family: var(--interface-font); font-size: 15px; line-height: 1.65; }
.answer-body h3, .answer-body h4 { font-size: 19px; font-weight: 600; }
.message-actions button, .source-chip, .followups button { font-size: 12px; }
.data-table, .workbench-table { font-size: 13px; font-variant-numeric: lining-nums tabular-nums; }
.data-table th { font-size: 11px; letter-spacing: .04em; }
/* Code, exact figures, provenance and the terminal-sized pixel animations keep
   their functional monospaced face. In particular, don't change --mono or ch units. */
.answer-body pre, .answer-body code, .source-text, .workbench-json,
.data-table .numeric, input[type=number] { font-family: var(--mono); font-variant-numeric: lining-nums tabular-nums; }
.answer-body pre, .answer-body code { font-size: 12px; }
@media (max-width: 560px) {
  .welcome h1 { font-size: 29px; }
  .hero-description { font-size: 13px; }
  .welcome .eyebrow { font-size: 8px; letter-spacing: .12em; }
  .suggestion strong, .baseline-start-button strong { font-size: 13px; }
  .suggestion > span:not(.card-icon):not(.card-arrow), .baseline-start-button small { font-size: 12px; }
  .tool-toggle { font-size: 11px; }
  .company-chip, .coverage-control { font-size: 11px; }
  .memory-toggle { font-size: 0; }
  .composer textarea { font-size: 16px; }
  .composer-disclaimer { font-size: 9px; }
}
