/* Le fil est limité à la recherche : les favoris conservent leurs vues. */
body:has(.search-view.is-activity-feed.view--active), body:has(.search-view.is-activity-feed.view--active) .app-shell { background: #fff; }
.search-view.is-activity-feed { --feed-ink: #103651; --feed-muted: #7187a7; --feed-blue: #079ed0; padding-top: 0; color: var(--feed-ink); }
.is-activity-feed .search-feed-tools { position: sticky; top: calc(56px + env(safe-area-inset-top)); z-index: 20; padding-top: 4px; background: #fff; }
.is-activity-feed > .subview-heading { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.is-activity-feed > .subview-heading .back-button { display: none; }
.is-activity-feed #searchResultsHeading { display: none; }
.is-activity-feed #searchToolbar { max-width: 780px; margin-inline: auto; gap: 8px; }
.is-activity-feed .search-input { min-width: 0; min-height: 44px; padding: 0 12px; border: 1px solid #dce6ef; border-radius: 15px; background: #fff; box-shadow: 0 6px 20px #19395206; }
.is-activity-feed .search-input > svg { color: var(--feed-blue); width: 21px; height: 21px; flex-shrink: 0; }
.is-activity-feed .search-input input { min-width: 0; min-height: 42px; font-size: 1rem; color: var(--feed-ink); }
.is-activity-feed .search-input input::placeholder { color: #8a9cba; }
.is-activity-feed #filterButton { width: 44px; min-width: 44px; min-height: 44px; padding: 0; border: 1px solid #b8dfed; border-radius: 14px; color: var(--feed-blue); background: #e5f5fa; box-shadow: none; }
.is-activity-feed #filterButton > span { display: none; }
.is-activity-feed .search-category-navigation { display: grid; grid-template-columns: minmax(0, 1fr) 32px; align-items: center; max-width: 780px; margin-inline: auto; }
.is-activity-feed #searchCategoryChips { min-width: 0; margin: 0; padding-block: 4px; gap: 7px; }
.search-feed-next-category { display: grid; place-items: center; width: 32px; min-height: 36px; padding: 0; background: transparent; color: var(--feed-ink); }
.is-activity-feed #searchCategoryChips button { min-height: 32px; padding: 4px 12px; color: var(--feed-ink); font-size: .875rem; line-height: 1.3; background: #fff; border-color: #dce6ef; white-space: nowrap; }
.is-activity-feed #searchCategoryChips button.is-active { color: #fff; border-color: transparent; background: linear-gradient(110deg, #60b5cc, #0698ce); }
.is-activity-feed #searchActivityGrid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; max-width: 780px; margin: 0 auto; }
.search-feed-post { min-width: 0; background: #fff; border-bottom: 15px solid #eef1f5; }
.search-feed-author { display: flex; align-items: center; gap: 10px; min-height: 66px; padding: 10px 15px; }
.search-feed-avatar { display: grid; place-items: center; flex: 0 0 36px; height: 36px; border: 1px solid #dce6ef; border-radius: 50%; background: #fff; font-size: .875rem; font-weight: 800; }
.search-feed-avatar .brand-mark { width: 25px; height: 29px; }
.search-feed-author-copy { min-width: 0; flex: 1; line-height: 1.25; }
.search-feed-author-copy strong { display: block; font-size: 1rem; font-weight: 900; overflow-wrap: anywhere; }
.search-feed-author-copy small { display: block; margin-top: 2px; color: var(--feed-muted); font-size: .875rem; }
.search-feed-author-copy .search-feed-validation-badge { display: inline-flex; width: fit-content; max-width: 100%; min-height: 24px; align-items: center; gap: 4px; margin-top: 3px; padding: 3px 8px; border: 1px solid rgba(229,100,146,.2); border-radius: 999px; color: #a64f71; background: #fff1f5; font-size: .68rem; font-weight: 900; line-height: 1.15; }
.search-feed-validation-badge .material-symbols-rounded { flex: 0 0 auto; color: #e56492; font-size: .9rem; }
.search-feed-menu { position: relative; flex-shrink: 0; }
.search-feed-menu summary { display: grid; place-items: center; width: 44px; height: 44px; color: var(--feed-muted); list-style: none; cursor: pointer; }
.search-feed-menu summary::-webkit-details-marker { display: none; }
.search-feed-menu > div { position: absolute; top: 100%; right: 0; z-index: 6; min-width: 175px; padding: 6px; border: 1px solid #dce6ef; border-radius: 14px; background: #fff; box-shadow: 0 8px 25px #19395220; }
.search-feed-menu button { display: flex; width: 100%; min-height: 44px; align-items: center; gap: 10px; padding: 8px 12px; background: transparent; text-align: left; border-radius: 8px; }
.search-feed-menu button > svg { width: 19px; height: 19px; flex: 0 0 19px; color: var(--feed-ink); stroke-width: 1.65; }
.search-feed-menu button > span { min-width: 0; }
.search-feed-media { position: relative; isolation: isolate; }
.search-feed-gallery { display: flex; width: 100%; min-height: 12rem; aspect-ratio: 1.52; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
.search-feed-gallery::-webkit-scrollbar { display: none; }
.search-feed-slide { flex: 0 0 100%; min-width: 0; height: 100%; scroll-snap-align: start; scroll-snap-stop: always; background: #e6f0ed; }
.search-feed-slide img { width: 100%; height: 100%; display: block; object-fit: cover; }
.search-feed-fallback { display: grid; place-items: center; width: 100%; height: 100%; background: linear-gradient(145deg, #e4f4eb, #e8e3f7); color: #6c8c80; }
.search-feed-fallback svg { width: 70px; height: 70px; }
.search-feed-media::after { content: ""; position: absolute; inset: 45% 0 0; z-index: 1; pointer-events: none; background: linear-gradient(transparent, #071d28a8); }
.search-feed-category { position: absolute; z-index: 2; top: 10px; left: 15px; max-width: calc(100% - 110px); padding: 7px 12px; border-radius: 24px; color: var(--feed-ink); background: #fff; font-size: .875rem; font-weight: 800; }
.search-feed-count { position: absolute; z-index: 2; top: 12px; right: 15px; padding: 4px 10px; color: #fff; background: #071d28b3; border-radius: 20px; font-size: .875rem; pointer-events: none; }
.search-feed-hook { position: absolute; z-index: 2; bottom: 12px; left: 17px; right: 76px; margin: 0; color: #fff; font-size: clamp(1.1rem, 4.5vw, 1.8rem); font-weight: 900; line-height: 1.12; text-shadow: 0 1px 5px #0004; pointer-events: none; }
.search-feed-favorite { position: absolute; z-index: 3; bottom: 12px; right: 14px; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; color: var(--feed-ink); background: #fff; box-shadow: 0 3px 12px #0002; }
.search-feed-favorite svg { width: 26px; height: 26px; }
.search-feed-favorite.is-favorite { color: #e56f94; }.search-feed-favorite.is-favorite svg { fill: currentColor; }
.search-feed-dots { display: flex; flex-wrap: wrap; justify-content: center; gap: 2px; min-height: 28px; }
.search-feed-dots:empty { min-height: 10px; }
.search-feed-dots button { display: grid; place-items: center; width: 28px; height: 28px; padding: 0; background: transparent; }
.search-feed-dots button::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #c6cfdc; }
.search-feed-dots button[aria-current="true"]::before { width: 8px; height: 8px; background: #ee6492; }
.search-feed-body { padding: 4px 17px 12px; }
.search-feed-title { margin: 0 0 3px; color: var(--feed-ink); font-size: clamp(1.25rem, 3vw, 1.7rem); line-height: 1.22; font-weight: 800; letter-spacing: -.025em; }
.search-feed-description { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin: 0 0 8px; color: #697f9c; font-size: .9375rem; line-height: 1.4; }
.search-feed-location { display: flex; align-items: start; gap: 6px; margin: 0; color: var(--feed-muted); font-size: .875rem; line-height: 1.4; }
.search-feed-location > svg { flex: 0 0 17px; width: 17px; height: 20px; color: var(--feed-ink); }
.search-feed-facts { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 14px; color: var(--feed-muted); font-size: .875rem; }
.search-feed-facts > span { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; }
.search-feed-facts svg { width: 18px; height: 18px; color: var(--feed-blue); }
.search-feed-open { display: inline-flex; align-items: center; justify-content: flex-end; gap: 4px; min-height: 44px; margin-left: auto; padding: 4px 0 4px 8px; color: #008abb; background: transparent; font-size: .9375rem; font-weight: 900; }
.search-feed-post :is(button, summary, [tabindex]):focus-visible, .is-activity-feed #searchCategoryChips button:focus-visible { outline: 3px solid #079ed0; outline-offset: -3px; }
.search-feed-sort { display: grid; gap: 8px; }.search-feed-sort select { width: 100%; min-height: 44px; padding: 10px; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); background: var(--white); font: inherit; }
@media (max-width: 640px) {
  .is-activity-feed .search-feed-tools { margin-inline: -15px; padding-inline: 15px; }
  .is-activity-feed #searchActivityGrid { width: calc(100% + 30px); max-width: none; margin-inline: -15px; }
}
@media (min-width: 641px) { .search-feed-post { border-inline: 1px solid #e8edf2; }.search-feed-author { padding-block: 13px; } }
html[data-theme="dark"] .is-activity-feed { --feed-ink: #e2eef5; --feed-muted: #a5b6cb; }
html[data-theme="dark"] .is-activity-feed .search-feed-tools { background: #172125; }
html[data-theme="dark"] body:has(.search-view.is-activity-feed.view--active), html[data-theme="dark"] body:has(.search-view.is-activity-feed.view--active) .app-shell { background: #172125; }
html[data-theme="dark"] :is(.search-feed-post, .search-feed-menu > div), html[data-theme="dark"] .is-activity-feed :is(.search-input, #searchCategoryChips button:not(.is-active)) { background: #172125; color: #e2eef5; border-color: #33434c; }
html[data-theme="dark"] .search-feed-post { border-bottom-color: #0f191e; }
html[data-theme="dark"] .search-feed-description { color: #a5b6cb; }
html[data-theme="dark"] .search-feed-author-copy .search-feed-validation-badge { color: #f1a5c0; border-color: rgba(229,111,148,.3); background: #2b1c24; }
html[data-theme="dark"] .search-feed-category, html[data-theme="dark"] .search-feed-favorite { color: #103651; }
html[data-theme="dark"] .search-feed-favorite.is-favorite { color: #e56f94; }
@media (prefers-reduced-motion: reduce) { .search-feed-gallery { scroll-behavior: auto; } }
