.archive-form { background: var(--lavender); border-left: 4px solid var(--purple); padding: 1.35rem 1.5rem 1.5rem; margin: 0 0 2rem; }
.archive-form h2 { margin: 0 0 .4rem; font-size: 1.45rem; }
.archive-form p { margin: 0 0 1rem; }
.archive-fields { display: flex; flex-wrap: wrap; gap: .8rem; align-items: flex-end; }
.archive-fields label { display: grid; gap: .35rem; font-weight: 700; }
.archive-fields label:first-child { flex: 1; min-width: min(12rem, 100%); }
.archive-fields input, .archive-fields select, .archive-fields button { box-sizing: border-box; min-height: 2.85rem; padding: .5rem .75rem; border: 2px solid var(--ink); font: inherit; border-radius: 0; }
.archive-fields input, .archive-fields select { color: var(--ink); background: white; width: 100%; }
.archive-fields button { color: white; background: var(--purple); border-color: var(--purple); cursor: pointer; font-weight: 700; }
.archive-fields button:hover { background: #231338; }
.archive-form :focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.archive-results .archive-form, .archive-results section { max-width: 58rem; }
.archive-result-list { list-style: none; padding: 0; margin: 1.5rem 0; }
.archive-result-list li { padding: 1rem 0; border-top: 1px solid var(--line); }
.archive-result-list h3 { margin: .3rem 0; font-size: 1.18rem; }
.archive-result-list p { margin: .3rem 0; }
.archive-date, .archive-result-list small { color: var(--muted); font-size: .9rem; font-weight: 500; }
@media(max-width: 36rem) {
 .archive-form { padding: 1rem; }
 .archive-fields { display: grid; grid-template-columns: 1fr 1fr; }
 .archive-fields label:first-child { grid-column: 1 / -1; min-width: 0; }
}
