.site-search__form{display:flex;gap:.5rem;margin-bottom:1rem}.site-search__form input[type=search]{flex:1;min-width:0;padding:.7rem;border:1px solid var(--border);border-radius:8px;color:var(--text);background:var(--surface)}.site-search__tabs,.site-search__pages{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.site-search__section{margin:2rem 0}.site-search__section h2{font-size:1.15rem;margin-bottom:.75rem}.site-search .postlist__item p{overflow-wrap:anywhere}.palette__all{display:block;padding:.8rem 1rem;border-top:1px solid var(--border)}.palette__heading{padding:.6rem 1rem .3rem;font-size:.75rem;font-weight:700;color:var(--text-muted)}.palette__item{display:block}.palette__item a{display:block;color:inherit;text-decoration:none}.palette__item.is-active{outline:2px solid var(--accent);outline-offset:-2px}.palette__item .palette__name{display:block;white-space:normal}.palette__item .palette__group{display:block;white-space:normal;font-size:.75rem;margin-top:.2rem}.palette__status{padding:.5rem 1rem;margin:0;font-size:.8rem;color:var(--text-muted)}

/* Dynamic viewport height keeps search controls reachable above the mobile keyboard. */
.palette { overflow-y: auto; overscroll-behavior: contain; }
.palette__box { display: flex; flex-direction: column; min-width: 0; max-height: calc(88vh - 16px); max-height: calc(88dvh - 16px); }
.palette__controls { display: flex; align-items: center; flex-shrink: 0; border-bottom: 1px solid var(--border); }
.palette__controls .palette__input { min-width: 0; flex: 1; border-bottom: 0; }
.palette__close { flex: 0 0 auto; min-width: 44px; min-height: 44px; margin-right: 8px; border: 0; border-radius: 6px; background: var(--surface-alt); color: var(--text); cursor: pointer; }
.palette__list { flex: 1 1 auto; min-height: 0; }
.palette__status, .palette__all { flex-shrink: 0; }
.palette__name, .palette__group { overflow-wrap: anywhere; }
@media (max-width: 600px), (max-height: 500px) {
    .palette { padding: 8px; }
    .palette__box { max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px); }
    .palette__controls .palette__input { font-size: 16px; padding: 12px; }
    .palette__list { max-height: none; }
    .palette__all { min-height: 44px; }
    .site-search__form input[type=search] { font-size: 16px; }
}
