.pdf-workspace-body { display: grid; grid-template-columns: minmax(0, 1fr) 340px; min-height: 0; }
.pdf-activity { min-height: 0; overflow: auto; overscroll-behavior: contain; background: #222724; border-left: 1px solid #ffffff18; }
.pdf-activity-frame { display: block; }
.pdf-current-summary { display: flex; flex-wrap: wrap; gap: 8px; padding: 18px 20px; border-bottom: 1px solid #ffffff16; font: 500 13px/1.5 var(--font-ui); }
.pdf-current-summary span + span::before { content: '·'; margin-right: 8px; color: #9ba99e; }
.pdf-history-panel { padding: 0 20px 24px; outline: none; overflow-wrap: anywhere; }
.pdf-history-panel header { display: flex; align-items: center; justify-content: space-between; }
.pdf-history-panel h2 { font: 600 14px/1.6 var(--font-ui); margin: 20px 0; }
.pdf-history-panel h3 { font: 500 12px/1.6 var(--font-ui); color: #becbbf; margin: 20px 0 10px; }
.pdf-classification { padding-bottom: 18px; border-bottom: 1px solid #ffffff16; }
.pdf-event-evidence { margin-top: 10px; color: #becbbf; }
.pdf-history-panel dl { font-size: 12px; }
.pdf-history-panel dt { color: #a5b3a8; margin-top: 12px; }
.pdf-history-panel dd { margin: 4px 0; }
.pdf-timeline { list-style: none; padding: 0; margin: 0; }
.pdf-timeline li { padding: 20px 0; border-bottom: 1px solid #ffffff12; }
.pdf-event-byline { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: baseline; }
.pdf-event-byline strong { font-size: 12px; }
.pdf-event-byline time { color: #9ca99f; font-size: 11px; }
.pdf-timeline p, .pdf-history-empty { font-size: 13px; line-height: 1.8; margin: 8px 0 0; white-space: pre-wrap; }
.pdf-event-reason { color: #b8c5bc; }
.pdf-timeline blockquote { margin: 8px 0; padding-left: 10px; border-left: 2px solid #718376; font-size: 12px; }
.pdf-history-panel a { color: #c7ddcc; font-size: 12px; display: inline-block; margin: 16px 0; }
.pdf-viewer .pdf-history-toggle, .pdf-viewer .pdf-history-close { display: none; }
@media (max-width: 800px) {
  .pdf-workspace-body { display: block; min-height: 0; }
  .pdf-reader { height: 100%; }
  .pdf-viewer-footer { min-height: 56px; box-sizing: border-box; }
  .pdf-viewer .pdf-history-toggle, .pdf-viewer .pdf-history-close { display: inline-flex; }
  .pdf-activity { border: 0; }
  .pdf-current-summary { position: absolute; bottom: calc(50px + max(8px, env(safe-area-inset-bottom))); left: 0; right: 0; padding: 8px 16px; justify-content: center; border: 0; background: #191c1ae8; font-size: 12px; pointer-events: none; }
  .pdf-pages { padding-bottom: 44px; }
  .pdf-history-panel { display: none; position: absolute; inset: auto 0 0; max-height: 70dvh; overflow: auto; overscroll-behavior: contain; z-index: 3; background: #252a26; border-radius: 16px 16px 0 0; box-shadow: 0 -12px 40px #0005; padding-bottom: max(24px, env(safe-area-inset-bottom)); }
  .history-open .pdf-history-panel { display: block; }
}

.pdf-file-actions { display: flex; align-items: center; gap: 4px; }
.pdf-file-actions form { margin: 0; }
.pdf-file-actions .pdf-control { border-color: #ffffff24; font-size: 12px; padding: 8px 10px; }
.pdf-file-info { margin-top: 24px; border-top: 1px solid #ffffff16; }
@media (max-width: 800px) {
  .pdf-viewer-header { flex-wrap: wrap; gap: 4px 8px; }
  .pdf-file-actions { flex-basis: 100%; justify-content: flex-end; }
}

.pdf-document-memo { padding: 18px 0; border-bottom: 1px solid #ffffff16; }
.pdf-document-memo p { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.8; margin: 10px 0 0; }
