/* Suggestions communes : le contenu reste lisible sans élargir la page. */
.sp-home-search-clear { flex:none; width:40px; height:40px; border:0; border-radius:10px; background:transparent; color:var(--text-secondary); cursor:pointer; font-size:22px; }
.sp-home-search-clear[hidden], .sp-home-shortcut.is-hidden { display:none; }
.sp-home-suggestions { flex-direction:column; gap:4px; }
.sp-home-search input::-webkit-search-cancel-button { -webkit-appearance:none; }
.sp-home-suggestions .suggestion-item { display:flex; gap:12px; align-items:center; text-align:left; }
.sp-home-suggestions .suggestion-left { flex:1; min-width:0; }
.sp-home-suggestions .suggestion-title { font-size:13px; }
.sp-home-suggestions .suggestion-desc { font-size:11px; }
.sp-home-suggestions .suggestion-right { max-width:45%; flex-wrap:wrap; justify-content:flex-end; }
.search-suggestions .suggestion-right { max-width:45%; flex-wrap:wrap; justify-content:flex-end; }
.suggestion-keys { max-width:100%; flex-wrap:wrap; }
.suggestion-item { gap:12px; min-height:44px; }
.sp-home-search-clear:focus-visible { outline:3px solid var(--accent); outline-offset:2px; }
/* En-tête stable : la pause n'est jamais remplacée avec le contenu tournant. */
.sp-home-page .sp-suggestion-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:24px; }
.sp-home-page .sp-suggestion-heading .suggested-section-title { margin:0; }
.sp-suggestion-pause { flex:none; border:0; background:transparent; color:var(--text-secondary); padding:8px 10px; border-radius:8px; font:inherit; font-size:12px; min-height:40px; cursor:pointer; }
.sp-suggestion-pause:focus-visible, .sp-suggested-open:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.sp-suggested-context { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:8px; }
.sp-suggested-system { display:inline-flex; align-items:center; padding:5px 9px; border-radius:8px; background:var(--bg-filter); color:var(--text-secondary); font-size:11px; font-weight:650; }
.sp-suggested-context .catalogue-context-badges { margin:0; }
.sp-suggested-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.sp-suggested-open { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:8px 12px; border:1px solid var(--border-color); border-radius:10px; background:var(--bg-filter); color:var(--text-secondary); font:inherit; font-size:12px; cursor:pointer; }
.sp-home-page .suggested-footer { margin-top:18px; gap:14px; }
.sp-home-page .suggested-nav-group { margin-left:auto; }
.sp-home-page .suggested-prev-btn, .sp-home-page .suggested-next-btn { min-height:40px; }
@media(max-width:699px) {
    .sp-home-page .sp-suggestion-heading { gap:8px; margin-bottom:20px; }
    .sp-home-page .suggested-footer { border-top:1px solid var(--border-color); padding-top:16px; }
    .sp-home-page .suggested-category { flex-basis:100%; }
    .sp-home-page .sp-suggested-actions, .sp-home-page .suggested-nav-group { width:100%; }
    .sp-home-page .suggested-nav-group { justify-content:space-between; }
    .sp-home-page .suggested-prev-btn, .sp-home-page .suggested-next-btn, .sp-suggested-open { min-height:44px; }
}
@media(prefers-reduced-motion:reduce) {
    .sp-home-page .animated-slogan-section { padding-bottom:24px; }
    .sp-home-page .suggested-content, .sp-home-page .suggested-content.fade-in, .sp-home-page .suggested-content.fade-out { transition:none!important; opacity:1!important; transform:none!important; }
}
@media(max-width:600px) {
    .sp-home-suggestions .suggestion-item, .search-suggestions .suggestion-item { flex-direction:column; align-items:stretch; }
    .sp-home-suggestions .suggestion-right, .search-suggestions .suggestion-right { max-width:100%; justify-content:flex-start; }
    .sp-home-suggestions, .search-suggestions { max-height:min(360px,55dvh); overscroll-behavior:contain; }
    .sp-home-search-clear { width:36px; }
}
