.letter-browser { margin-top: 28px; }
.letter-filters { display: flex; flex-wrap: wrap; align-items: end; gap: 14px; }
.letter-filters label { display: grid; gap: 8px; margin: 0; }
.letter-filters label:first-child { flex: 0 1 170px; }
.letter-filters label:nth-child(2) { flex: 1 1 220px; }
.letter-filters input, .letter-filters select { width: 100%; min-height: 46px; margin: 0; }
.letter-filters .button { min-height: 46px; }
.letter-filters .quiet-link { align-self: center; }
.letter-browser .letter-help { margin: 12px 0 18px; color: var(--muted); font-size: 13px; line-height: 1.8; }
.letter-list-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 24px 0 14px; }
.letter-result-count { margin: 0; font-size: 14px; }
.letter-viewport { border-radius: 8px; }
.letter-viewport.is-rotating { max-height: 440px; max-height: min(440px, 65svh); overflow-y: auto; overflow-anchor: none; scroll-behavior: auto; scrollbar-gutter: stable; }
.letter-viewport:focus-visible { outline: 2px solid var(--green); outline-offset: 5px; }
.letter-track { display: grid; gap: 20px; }
.space-page .letter-track .letters { margin: 0; }
.letter-empty { padding: 28px 0; color: var(--muted); }
.space-page #main .sample-letter-browser { margin-top: 26px; }
.space-page #main .sample-letter-browser .letter-list-heading { margin-bottom: 10px; }
.space-page #main .sample-letter-motion-note { margin: 0 0 18px; font: 12px/1.8 var(--sans); color: var(--paper-muted); }
.space-page #main .sample-letter-browser .letter-viewport.is-rotating { max-height: 560px; max-height: min(560px, 70svh); padding: 4px 8px 12px 4px; scrollbar-width: thin; scrollbar-color: #bdb19c transparent; overscroll-behavior-y: contain; }
.space-page #main .sample-letter-browser .sample-letters { gap: 20px; }
.space-page #main .sample-letter-browser .sample-letter { margin: 0; padding: 28px 30px; border-radius: 14px; }
@media (max-width: 600px) {
  .space-page #main .sample-letter-browser .sample-letter { padding: 24px 20px; }
  .letter-filters label:first-child { flex: 1 1 100%; }
  .letter-filters label:nth-child(2) { flex: 1 1 180px; }
  .space-page .letter-track .letters article { padding: 24px 20px; }
  .space-page .letter-track .letters article > p { font-size: 16px; }
}
