.gp-suggest-host { position:relative; flex:1; min-width:0; }
.search-form .gp-suggest-host input { width:100%; min-width:0; box-sizing:border-box; }
.gp-suggestions { position:absolute; z-index:40; inset:calc(100% + 10px) 0 auto; margin:0; padding:6px; list-style:none; border:1px solid #b8cfc5; border-radius:12px; background:#fff; color:#213d35; box-shadow:0 14px 35px #183e2926; max-height:380px; overflow-y:auto; text-align:left; }
.gp-suggestions[hidden] { display:none; }
.gp-suggestions li { padding:12px 14px; border-radius:7px; cursor:pointer; line-height:1.45; }
.gp-suggestions li + li { border-top:1px solid #edf1eb; }
.gp-suggestions li:hover,.gp-suggestions li[aria-selected="true"] { background:#e6f3ed; outline:2px solid #216450; outline-offset:-2px; }
.gp-suggestions strong,.gp-suggestions span { display:block; }
.gp-suggestions strong { font-size:15px; font-weight:600; }
.gp-suggestions span { margin-top:3px; font-size:12px; color:#50635d; }
.search-explainer { color:#53645f; max-width:65ch; }
.search-page .search-controls { flex-wrap:wrap; gap:10px 14px; margin-top:16px; }
.search-page .search-controls select { max-width:100%; }
.search-page .search-result mark { color:inherit; background:#e5edb9; border-radius:2px; padding:0 .07em; }
.search-page .result-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:0 0 10px; line-height:1.6; }
.result-badge { padding:2px 8px; border-radius:5px; background:#eaf3ee; color:#285f4c; font-size:11px; font-weight:600; }
.search-page .result-section { letter-spacing:.02em; text-transform:none; }
.result-meta time { font-size:12px; color:#53645f; }
.search-page .search-result h2 { line-height:1.5; margin:0 0 10px; }
.search-page .search-result p { overflow-wrap:anywhere; }
.search-page .search-result .search-archive-note { margin-top:12px; font-size:12px; }
.search-start,.search-page .empty-results { margin:24px 0; border:1px solid #dce4d9; border-radius:12px; padding:24px; background:white; }
.search-chips { display:flex; flex-wrap:wrap; gap:10px; }
.search-chips a { background:#edf4ee; border:1px solid #d4e3d9; border-radius:20px; padding:7px 13px; font-size:14px; }
@media(max-width:640px) { .gp-suggestions { inset-inline-start:-16px; min-width:min(80vw,380px); } .search-page .search-controls { display:grid; grid-template-columns:1fr; } .search-page .search-result { padding:20px; } .search-page .search-controls select,.search-page .search-controls button { width:100%; } }
