:root { color-scheme: light dark; --archive-paper:#fff; --archive-ink:#202e36; --archive-muted:#52616a; --archive-border:#d5dfe4; --archive-blue:#006780; --archive-soft:#e9f5f7; }
body { color:var(--archive-ink); text-align:left; }
html { scroll-padding-top:1rem; }
nav.navbar { max-width:960px; padding:1rem 0; }
.navbar-brand { color:var(--archive-ink); white-space:normal; font-size:1.15rem; }
.archive-shell { max-width:960px; padding-bottom:1rem; }
.archive-detail { max-width:760px; }
.archive-shell a { color:var(--archive-blue); text-underline-offset:3px; }
.archive-shell a:hover { text-decoration:underline; }
.archive-shell h1 { font-size:1.45rem; line-height:1.6; font-weight:700; }
.archive-shell h2 { font-size:1.15rem; line-height:1.6; font-weight:700; }
.archive-shell h3 { font-size:1.05rem; line-height:1.6; font-weight:700; }
.archive-notice { background:var(--archive-soft); border-left:4px solid var(--archive-blue); border-radius:8px; padding:1rem 1.2rem; margin-bottom:1.5rem; line-height:1.7; }
.archive-notice p { margin:0; }
.notice-title { font-weight:700; }
.archive-tools { background:var(--archive-paper); border:1px solid var(--archive-border); border-radius:12px; padding:1.25rem; margin-bottom:1.5rem; }
.archive-tools label { font-weight:600; }
.field-help,.question-meta,.question-author,.result-count { color:var(--archive-muted); font-size:.9rem; line-height:1.7; }
.field-help { margin:.35rem 0 .7rem; }
.search-row,.sort-row,.jump-row,.pagination-row,.detail-navigation,.results-heading { display:flex; align-items:center; gap:.75rem; flex-wrap:wrap; }
.search-row input { flex:1; min-width:0; }
.archive-tools input[type=search],.archive-tools input[type=number],.archive-tools select { background:var(--archive-paper); color:var(--archive-ink); border:1px solid var(--archive-border); border-radius:6px; padding:.65rem; min-height:44px; font-size:1rem; }
.archive-tools button,.page-button { background:var(--archive-blue); color:#fff !important; border:0; border-radius:6px; padding:.65rem .9rem; min-height:44px; display:inline-flex; align-items:center; justify-content:center; font-weight:600; }
.archive-tools button:hover { filter:brightness(.9); }
.sort-row { border-top:1px solid var(--archive-border); padding-top:1rem; margin-top:1rem; }
.fish-results { border-top:1px solid var(--archive-border); margin-top:1rem; padding-top:1rem; }
.fish-candidates { display:flex; flex-wrap:wrap; gap:.6rem; list-style:none; padding:0; }
.fish-candidates a { display:inline-flex; align-items:center; border:1px solid var(--archive-border); border-radius:20px; padding:.55rem .9rem; min-height:44px; }
.active-filter { background:var(--archive-soft); padding:.8rem; border-radius:6px; margin:1rem 0 0; }
.results-heading { justify-content:space-between; margin-bottom:.8rem; }
.results-heading h2,.result-count { margin:0; }
.issue-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.issue-card,.question-detail,.answer-card { min-width:0; max-width:none; background:var(--archive-paper); border:1px solid var(--archive-border); border-radius:12px; overflow:hidden; margin:0; }
.issue-card-link { display:block; height:100%; color:var(--archive-ink) !important; }
.issue-card-link:hover { text-decoration:none !important; }
.issue-card-link:hover .read-question { text-decoration:underline; }
.question-image { width:100%; height:220px; object-fit:contain; background:var(--archive-soft); display:block; }
.issue-card-body,.question-detail,.answer-card { padding:1rem; }
.question-body { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.8; margin:.7rem 0; }
.question-meta,.question-author { margin:.3rem 0; overflow-wrap:anywhere; }
.state-pill { display:inline-block; color:var(--archive-blue); background:var(--archive-soft); padding:.2rem .6rem; border-radius:4px; font-size:.8rem; font-weight:700; margin-bottom:.4rem; }
.read-question { display:block; color:var(--archive-blue); margin-top:.8rem; font-size:.9rem; font-weight:600; }
.pagination-row { justify-content:center; margin:1.5rem 0; }
.page-number { color:var(--archive-muted); }
.empty-state { background:var(--archive-paper); border:1px solid var(--archive-border); border-radius:8px; padding:1.3rem; line-height:1.8; }
.detail-navigation { justify-content:space-between; margin:0 0 1rem; }
.detail-navigation a,.back-to-list { padding:.5rem 0; min-height:44px; display:inline-flex; align-items:center; }
.detail-heading h1 { margin:.4rem 0; }
.detail-image { display:block; max-width:100%; max-height:80vh; height:auto; margin:1rem auto; }
.answers { margin:1.5rem 0; }
.answer-card { margin:1rem 0; }
.best-answer { color:var(--archive-blue); font-weight:700; }
.answer-fish { display:flex; gap:1rem; align-items:center; }
.answer-fish img { width:72px; height:72px; object-fit:contain; }
.answer-fish p { margin:0; color:var(--archive-muted); }
.archive-footer { max-width:none; text-align:center; border-top:1px solid var(--archive-border); margin:2rem 0 0; padding:1.5rem 0; color:var(--archive-muted); font-size:.9rem; line-height:1.7; }
.archive-footer p { margin:0 0 .5rem; }
.archive-shell :focus-visible { outline:3px solid #e08900; outline-offset:3px; }
@media (max-width:575px) {
  .archive-shell { padding-left:1rem; padding-right:1rem; }
  .archive-notice,.archive-tools { padding:1rem; }
  .archive-notice { font-size:.95rem; }
  .archive-shell h1 { font-size:1.25rem; }
  .issue-grid { grid-template-columns:minmax(0,1fr); gap:1rem; }
  .search-row { gap:.5rem; }
  .search-row button { padding:.65rem .7rem; }
  .results-heading { display:block; }
  .question-image { height:240px; }
  .pagination-row { gap:.5rem; }
  .page-button { padding:.65rem .7rem; }
  .detail-navigation { font-size:.9rem; gap:.3rem; }
}
@media (prefers-color-scheme:dark) {
  :root { --archive-paper:#202b32; --archive-ink:#e7f0f4; --archive-muted:#b4c4ce; --archive-border:#465862; --archive-blue:#8bdbe9; --archive-soft:#183c47; }
  .archive-tools button,.page-button { background:#86d5e4; color:#102c35 !important; }
}

.jump-row { margin-top:1rem; }
.jump-row input[type=number] { width:5.5rem; }
