:root { --chat-user:#f4f4f4; }
.site-header.gallery-header { position:sticky; top:0; z-index:6; display:flex; justify-content:center; min-height:88px; max-width:none; padding:20px var(--gallery-gutter); background:var(--paper); border-bottom:1px solid var(--line); }
.site-header .site-nav { display:flex; justify-content:space-between; align-items:center; width:100%; max-width:1180px; gap:clamp(24px,3.5vw,56px); margin:0; }
.site-header.gallery-header .site-nav a { display:block; min-width:0; padding:11px 0; color:var(--muted); font-family:var(--font-body); font-size:16px; font-weight:var(--weight-nav); line-height:1.4; white-space:nowrap; }
.site-header.gallery-header .site-nav a:hover,.site-header.gallery-header .site-nav a[aria-current] { color:var(--ink); }
.site-header.gallery-header .site-nav a:active { color:var(--focus); }
.settings-shell { max-width:1112px; margin:0 auto; padding:34px 40px 88px; }
.evaluation-setup { margin-top:0; padding:0 0 32px; border-bottom:1px solid var(--line); }
.evaluation-setup > p { margin-top:14px; font-size:16px; line-height:1.75; text-wrap:pretty; }
.settings-section { min-width:0; margin-top:34px; scroll-margin-top:110px; font-size:16px; line-height:1.75; }
.settings-shell > .evaluation-setup { margin-top:0; }
.section-heading h2 { font-family:var(--font-display); font-size:26px; font-weight:var(--weight-display); line-height:1.3; letter-spacing:var(--tracking-display); }
.section-heading > p { margin-top:7px; color:var(--muted); font-size:14px; line-height:1.65; }
.chat-message { min-width:0; }
.chat-role { display:flex; margin-bottom:12px; color:var(--ink); }
.chat-avatar { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:32px; height:32px; border-radius:50%; overflow:hidden; }
.user-avatar { background:var(--hover); }
.user-avatar svg { width:21px; height:21px; stroke-width:1.5; }
.gpt-avatar img { display:block; width:32px; height:32px; filter:grayscale(1); }
.chat-user { max-width:78%; margin:22px 0 32px auto; }
.chat-user .chat-role { justify-content:flex-end; }
.user-bubble { padding:18px 23px; border-radius:24px; background:var(--chat-user); font-size:16px; line-height:1.75; }
.chat-assistant > .chat-role { color:var(--ink); }
.assistant-content { min-width:0; }
.assistant-content h3 { margin:0 0 18px; font-family:var(--font-body); font-size:19px; font-weight:var(--weight-meta); line-height:1.5; letter-spacing:normal; }
.assistant-content p,.assistant-content ul { margin:14px 0; }
.assistant-content ul { padding-left:24px; }
.assistant-content li { padding-left:3px; margin:8px 0; }
.assistant-content h4 { margin:30px 0 12px; font-size:19px; font-weight:var(--weight-meta); line-height:1.5; }
.table-scroll { min-width:0; max-width:100%; overflow:auto; margin:18px 0 24px; scrollbar-gutter:stable; }
.table-scroll:focus-visible { outline-offset:3px; }
.settings-table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; line-height:1.65; }
.settings-table th,.settings-table td { padding:13px 15px; border-bottom:1px solid var(--line); vertical-align:top; }
.settings-table thead th { border-top:1px solid var(--line); font-weight:var(--weight-meta); background:var(--hover); }
.settings-table tbody th { font-weight:var(--weight-nav); }
.task-table { min-width:730px; table-layout:fixed; }
.task-table th:first-child { width:92px; }
.task-table th:nth-child(2) { width:55%; }
.task-table th:nth-child(3) { width:auto; }
.revision-label { display:block; margin-top:7px; color:var(--muted); font-size:10px; font-weight:var(--weight-nav); line-height:1.5; }
.protocol-table { min-width:600px; }
.protocol-table th:first-child { width:180px; }
.data-retry { color:var(--ink); border-color:var(--line); }
.data-retry:hover { background:var(--hover); }
.data-retry:active { background:var(--line); }
@media(max-width:900px) {
  .site-header .site-nav { gap:18px; }
  .site-header.gallery-header .site-nav a { font-size:14px; }
  .settings-shell { padding:30px 26px 64px; }
}
@media(max-width:720px) {
  .site-header.gallery-header { padding:10px 18px; min-height:116px; }
  .site-header .site-nav { width:100%; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:3px 14px; align-items:stretch; }
  .site-header.gallery-header .site-nav a { display:flex; align-items:center; justify-content:center; padding:9px 2px; font-size:13px; white-space:normal; text-align:center; }
  .site-header .site-nav a[aria-current]::after { bottom:3px; }
  .settings-shell { padding:28px 22px 60px; }
  .evaluation-setup > p { font-size:14px; }
  .settings-section { margin-top:30px; scroll-margin-top:145px; font-size:15px; }
  .section-heading h2 { font-size:23px; }
  .chat-user { max-width:94%; margin-top:20px; }
  .user-bubble { padding:16px 18px; font-size:15px; line-height:1.7; border-radius:21px; }
  .settings-table { font-size:13px; }
  .settings-table th,.settings-table td { padding:11px 12px; }
}
@media(forced-colors:active) {
  .user-bubble { border:1px solid CanvasText; }
  .settings-table th,.settings-table td { border-color:CanvasText; }
}
