/* Stardust Log — サイト内検索(search.html / en/search.html のみで読む)。style.css の後に置く。 */

.search-head{ padding: 56px 0 8px; }
.search-head h1{ font-size: 30px; font-weight: 600; letter-spacing: 0.02em; margin: 0 0 12px; }
.search-head .lead{ margin: 0; font-size: 14px; color: var(--text-muted); line-height: 1.9; }

.sr-form{ display: flex; gap: 10px; margin: 30px 0 0; }
.sr-input{
  flex: 1; min-width: 0;
  font-family: inherit; font-size: 16px; font-weight: 400; line-height: 1.6;
  color: var(--text); background: rgba(11,14,26,0.55);
  border: 1px solid var(--line-strong); border-radius: 2px;
  padding: 11px 14px; transition: border-color 0.3s;
  -webkit-appearance: none; appearance: none;
}
.sr-input:focus{ outline: none; border-color: var(--accent); }
.sr-input::placeholder{ color: var(--text-faint); opacity: 1; }
.sr-input::-webkit-search-cancel-button{ -webkit-appearance: none; }
.sr-submit{
  flex-shrink: 0;
  font-family: inherit; font-size: 13px; letter-spacing: 0.05em;
  color: var(--text-muted); background: transparent;
  padding: 0 22px; border: 1px solid var(--line-strong); border-radius: 2px;
  cursor: pointer; transition: color 0.3s, border-color 0.3s, background 0.3s;
}
.sr-submit:hover{ color: var(--text); border-color: var(--accent); background: rgba(132,129,196,0.10); }

.sr-status{ margin: 18px 0 0; min-height: 1.6em; font-size: 13px; color: var(--text-faint); letter-spacing: 0.02em; }

.sr-filters{ display: flex; flex-wrap: wrap; gap: 6px; margin: 18px 0 0; }
.sr-filters[hidden]{ display: none; }
.sr-filter{
  display: inline-flex; align-items: baseline; gap: 7px;
  font-family: inherit; font-size: 12.5px; letter-spacing: 0.04em;
  color: var(--text-muted); background: transparent;
  padding: 5px 13px; border: 1px solid var(--line-strong); border-radius: 999px;
  cursor: pointer; transition: color 0.3s, border-color 0.3s, background 0.3s;
}
.sr-filter:hover{ color: var(--text); border-color: var(--accent); }
.sr-filter[aria-pressed="true"]{ color: var(--text); border-color: var(--accent); background: rgba(132,129,196,0.14); }
.sr-filter-n{ font-family: 'EB Garamond', serif; font-size: 13px; color: var(--text-faint); }

.sr-results{ margin-top: 26px; }
.sr-item{ padding: 24px 0 22px; border-top: 1px solid var(--line); }
.sr-item:last-child{ border-bottom: 1px solid var(--line); }
.sr-meta{ display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin: 0 0 8px; font-size: 11.5px; letter-spacing: 0.04em; }
.sr-type{ color: var(--accent); }
.sr-tag{ color: var(--text-faint); }
.sr-when{ font-size: 13px; color: var(--text-faint); }
.sr-title{ margin: 0 0 8px; font-size: 18px; font-weight: 600; line-height: 1.6; letter-spacing: 0.01em; }
.sr-title a{ color: var(--text); text-decoration: none; transition: color 0.3s; }
.sr-title a:hover{ color: var(--accent); }
.sr-snippet{ margin: 0; font-size: 13.5px; line-height: 1.9; color: var(--text-muted); overflow-wrap: anywhere; }
.sr-results mark{ background: rgba(209,168,98,0.22); color: var(--text); border-radius: 2px; padding: 0 1px; }

.sr-more{
  display: block; margin: 30px auto 0;
  font-family: inherit; font-size: 12.5px; letter-spacing: 0.05em;
  color: var(--text-muted); background: transparent;
  padding: 9px 26px; border: 1px solid var(--line-strong); border-radius: 999px;
  cursor: pointer; transition: color 0.3s, border-color 0.3s;
}
.sr-more:hover{ color: var(--text); border-color: var(--accent); }
.sr-more[hidden]{ display: none; }

@media (max-width: 640px){
  .search-head{ padding-top: 40px; }
  .search-head h1{ font-size: 24px; }
  .sr-submit{ padding: 0 16px; }
  .sr-title{ font-size: 16.5px; }
  .sr-snippet{ font-size: 13px; }
}
