.search-form { display:flex; flex-wrap:wrap; align-items:end; gap:10px; margin-top:22px; max-width:720px; }
.search-form label { flex:0 0 100%; font-weight:600; }
.search-form input, .search-page input { flex:1 1 260px; min-width:0; padding:14px 16px; border:1px solid var(--line); border-radius:var(--r-sm); background:var(--surface); color:var(--ink); font:inherit; }
.search-page { max-width:840px; margin:0 auto; }
.search-page input { width:100%; margin:14px 0 24px; }
.search-results { display:grid; gap:14px; margin-top:20px; }
.search-result { padding:20px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
.search-result h2 { margin:0 0 8px; font-size:22px; }
.search-result p { margin:8px 0; color:var(--ink-soft); }
.search-result .date { color:var(--ink-faint); font-size:13px; }
.search-topics { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.search-topics a { border:1px solid var(--line); border-radius:999px; padding:7px 12px; color:var(--ink-soft); text-decoration:none; }
.pagination { display:flex; justify-content:space-between; gap:14px; margin-top:30px; }
.article-category { display:inline-flex; margin:0 0 10px; padding:5px 10px; border-radius:999px; background:var(--accent-soft); color:var(--accent-ink); font-size:13px; font-weight:700; text-decoration:none; }
.comments { margin-top:42px; padding-top:26px; border-top:1px solid var(--line); }
.comment { padding:18px 0; border-bottom:1px solid var(--line-soft); }
.comment h3 { margin:0; font-size:17px; }
.comment time { color:var(--ink-faint); font-size:12px; }
.comment-body { margin-top:10px; color:var(--ink-soft); }
.comment-body p { margin:0 0 10px; }
.dc-contact-form { display:grid; gap:10px; margin:22px 0; padding:22px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); }
.dc-contact-form label { margin-top:7px; font-weight:600; }
.dc-contact-form input, .dc-contact-form textarea { width:100%; padding:12px 14px; border:1px solid var(--line); border-radius:var(--r-sm); background:var(--bg); color:var(--ink); font:inherit; }
.dc-contact-form textarea { resize:vertical; }
.dc-contact-form [aria-invalid="true"] { border-color:#b42318; }
.form-status { min-height:1.4em; margin:0; color:var(--ink-soft); }
.form-status.error { color:#b42318; }
.form-status.success { color:#16794b; }
.form-note { margin:0; color:var(--ink-faint); font-size:13px; }
.hp-field { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.consent-banner[hidden] { display:none; }
.consent-banner { position:fixed; z-index:1000; right:18px; bottom:18px; width:min(540px,calc(100vw - 36px)); padding:18px; border:1px solid var(--line); border-radius:var(--r); background:var(--surface); color:var(--ink); box-shadow:var(--shadow-lg); }
.consent-banner p { margin:0 0 12px; }
.consent-banner > div { display:flex; flex-wrap:wrap; gap:9px; }
.consent-banner > a { display:inline-block; margin-top:12px; font-size:13px; }
.home-intro .intro-lead { max-width:76ch; }
.single-listen:empty { display:none; }
.article-cover img { display:block; width:100%; height:auto; border-radius:var(--r); }
.share-row button { color:inherit; background:transparent; border:0; cursor:pointer; }
.related-head { padding-top:0; }
.page-hero .breadcrumb { margin-bottom:18px; }
.page-hero h1 { overflow-wrap:anywhere; }
.cf-turnstile { margin:5px 0; }
@media (max-width:640px) { .search-form input { flex-basis:100%; } .pagination { flex-direction:column; } .consent-banner { right:10px; bottom:10px; width:calc(100vw - 20px); } }
