.archive-intro, .archive-browser, .archive-detail { margin-bottom: 1rem; }
.archive-intro p { max-width: 100ch; }
.archive-filters { display: grid; grid-template-columns: minmax(135px, .7fr) minmax(200px, 2fr) repeat(3, minmax(120px, 1fr)) auto; align-items: end; gap: .7rem; }
.archive-scroll { overflow: auto; margin: .8rem 0; max-width: 100%; }
.archive-table { width: 100%; border-collapse: collapse; text-align: left; }
.archive-table th, .archive-table td { border-bottom: 1px solid var(--line); padding: .6rem; vertical-align: top; min-width: 95px; max-width: 400px; overflow-wrap: anywhere; }
.archive-table th { background: var(--soft); font-weight: 650; }
.archive-table td button { text-align: left; overflow-wrap: anywhere; max-width: 100%; }
.archive-table small { display: block; }
.archive-fields { display: grid; grid-template-columns: minmax(120px, 240px) minmax(0, 1fr); margin: .5rem 0 1rem; }
.archive-fields dt, .archive-fields dd { border-bottom: 1px solid var(--line); padding: .5rem; margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.archive-fields dt { color: var(--muted); }
.archive-value { white-space: pre-wrap; overflow-wrap: anywhere; }
.archive-fields details, .archive-fields .archive-scroll { white-space: normal; }
.archive-detail h3 { font-size: 1rem; margin: 1.4rem 0 .5rem; }
.archive-file { border: 1px solid var(--line); border-radius: 6px; padding: .7rem; margin: .5rem 0; overflow-wrap: anywhere; }
.archive-file code { font-size: .8rem; }
.archive-links { padding-left: 1.4rem; }
.archive-links li { margin-bottom: .5rem; overflow-wrap: anywhere; }
details > summary { cursor: pointer; padding: .5rem 0; font-weight: 600; }
pre { background: var(--soft); padding: .8rem; overflow: auto; white-space: pre-wrap; overflow-wrap: anywhere; font-size: .83rem; max-height: 600px; }
@media (max-width: 1100px) { .archive-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 650px) { .archive-filters { grid-template-columns: minmax(0, 1fr); } .archive-fields { grid-template-columns: minmax(90px, 30%) minmax(0, 1fr); } }
