/* Global search page */
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.search-form input[type="search"] { width: 100%; font-size: 1.15rem; padding: 0.85rem 1rem; background: var(--bg-2); color: var(--text); border: 1px solid var(--line); border-radius: var(--radius); }
.search-form input[type="search"]:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent); }
.search-kinds { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0.9rem 0 0.4rem; }
.search-results { list-style: none; padding: 0; margin: 0.5rem 0 1.5rem; }
.sr-item { border-bottom: 1px solid var(--line); }
.sr-link { display: flex; gap: 0.9rem; align-items: flex-start; padding: 0.8rem 0.25rem; color: var(--text); text-decoration: none; }
.sr-link:hover .sr-title, .sr-link:focus-visible .sr-title { color: var(--accent); }
.sr-thumb { width: 84px; height: 60px; object-fit: cover; border-radius: 4px; flex: none; background: var(--bg-2); }
.sr-body { display: flex; flex-direction: column; gap: 0.2rem; min-width: 0; }
.sr-kind { font: 600 0.72rem/1.2 var(--sans); letter-spacing: 0.08em; text-transform: uppercase; color: var(--accent); }
.sr-title { font-family: var(--serif, Georgia, serif); font-size: 1.08rem; line-height: 1.35; overflow-wrap: anywhere; }
.sr-snip { color: var(--muted); font-size: 0.92rem; line-height: 1.5; overflow-wrap: anywhere; }
.sr-link mark { background: color-mix(in srgb, var(--accent) 30%, transparent); color: inherit; border-radius: 2px; padding: 0 0.1em; }
.search-more { text-align: center; }
/* Header search box on every archive page */
.nav-search { margin-left: auto; display: flex; align-items: center; }
.nav-search form { display: flex; }
.nav-search input { width: 11rem; font-size: 0.85rem; padding: 0.35rem 0.6rem; background: var(--bg-2); color: var(--text); border: 1px solid var(--line); border-radius: 999px; }
.nav-search input:focus { outline: none; border-color: var(--accent); width: 15rem; }
.archive-nav li.nav-search + li.nav-signout { margin-left: 0.25rem; }
@media (max-width: 720px) { .nav-search input { width: 8rem; } .nav-search input:focus { width: 10rem; } }
