/* Espace soutien : hierarchie douce, controles compacts et espacements communs. */
#homeSoutien {
  --hs-bg:#faf8f4; --hs-surface:#f0ece4; --hs-card:#fffdf9; --hs-line:#dfd7cb;
  --hs-text:#392f25; --hs-muted:#74685b; --hs-accent:#785b2f; --hs-good:#3f7253;
  --hs-hover:#ece5d8; --hs-track:#e6ded2; --hs-thumb:#b3a38c;
  float:right; position:sticky; top:8px; width:300px; margin:0 0 16px 10px;
  color:var(--hs-text); background:var(--hs-bg); border:1px solid var(--hs-line);
  border-radius:10px; box-shadow:0 4px 16px #251c1214; font:14px/1.4 Arial,sans-serif;
}
.themeSombre #homeSoutien {
  --hs-bg:#241f1a; --hs-surface:#302820; --hs-card:#2b251f; --hs-line:#4a3e31;
  --hs-text:#f1e7d8; --hs-muted:#bfae98; --hs-accent:#e5c58a; --hs-good:#9bc9a6;
  --hs-hover:#3b3127; --hs-track:#4a4033; --hs-thumb:#77634b;
  color-scheme:dark; box-shadow:0 4px 18px #0004;
}
#homeSoutien, #homeSoutien * { box-sizing:border-box; }
#homeSoutien [hidden] { display:none !important; }
#homeSoutien .hs-header { padding:9px 12px; border-radius:9px 9px 0 0; background:var(--hs-surface); border-bottom:1px solid var(--hs-line); }
#global #homeSoutien h2 { margin:0; padding:0; font:700 17px/1.4 Arial,sans-serif; color:var(--hs-text) !important; letter-spacing:0; text-transform:none; }
#homeSoutien h2 > span { color:var(--hs-accent); margin-right:5px; }
#homeSoutien .hs-body { max-height:calc(100vh - 62px); overflow-y:auto; overscroll-behavior:contain; border-radius:0 0 9px 9px; }
#homeSoutien .hs-section { display:block; min-width:0; padding:8px 10px; border-top:1px solid var(--hs-line); }
#homeSoutien .hs-section:first-child { border-top:0; }
#homeSoutien .hs-heading, #homeSoutien .hs-group-heading { display:flex; align-items:center; justify-content:space-between; gap:6px; margin:0 0 4px; }
#homeSoutien .hs-heading { min-height:28px; }
#global #homeSoutien h3 { margin:0; padding:0; color:var(--hs-text) !important; font:700 15px/1.4 Arial,sans-serif; letter-spacing:0; text-transform:none; }
#global #homeSoutien h4 { margin:0; padding:0; color:var(--hs-muted) !important; font:600 14px/1.4 Arial,sans-serif; letter-spacing:0; text-transform:none; }
#homeSoutien .hs-group-heading { margin-top:6px; margin-bottom:2px; }
#global #homeSoutien ul, #global #homeSoutien li { margin:0; padding:0; list-style:none; color:inherit !important; background:none; }
#homeSoutien button, #homeSoutien a { font:inherit; cursor:pointer; text-align:left; text-decoration:none; color:var(--hs-accent) !important; }
#homeSoutien button { margin:0; padding:0; border:0; background:none; }
#homeSoutien button:not(:disabled):hover, #homeSoutien a:hover { color:var(--hs-text) !important; background:var(--hs-hover); border-radius:6px; }
#homeSoutien :is(a,button,summary,select):focus-visible { outline:2px solid var(--hs-accent); outline-offset:1px; border-radius:4px; }
#homeSoutien .hs-heading > a, #homeSoutien .hs-heading > button { flex-shrink:0; }
#homeSoutien .hs-ellipsis { display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#homeSoutien .hs-count { display:inline-block; flex-shrink:0; min-width:20px; padding:1px 5px; border-radius:4px; background:var(--hs-surface); color:var(--hs-accent); font:600 13px/1.4 Arial,sans-serif; text-align:center; font-variant-numeric:tabular-nums; }
#homeSoutien .hs-task { display:flex; align-items:center; gap:7px; width:100%; min-width:0; padding:6px; color:var(--hs-text) !important; text-align:left; border-radius:6px; }
#homeSoutien .hs-task-state { flex:0 0 12px; width:12px; height:12px; border:1px solid var(--hs-line); border-radius:3px; background:var(--hs-card); }
#homeSoutien .hs-task-content { display:block; min-width:0; flex:1; }
#homeSoutien .hs-task-title { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; color:var(--hs-text); font:400 14px/1.4 Arial,sans-serif; }
#homeSoutien .hs-task-mode { color:var(--hs-muted); font:600 13px/1.4 Arial,sans-serif; margin-bottom:1px; }
#homeSoutien .hs-task-count { flex-shrink:0; min-width:28px; color:var(--hs-muted); font:600 13px/1.4 Arial,sans-serif; text-align:right; font-variant-numeric:tabular-nums; }
#homeSoutien progress { display:block; width:100%; height:2px; margin-top:4px; appearance:none; border:0; border-radius:2px; background:var(--hs-track); color:var(--hs-good); }
#homeSoutien progress::-webkit-progress-bar { background:var(--hs-track); border-radius:2px; }
#homeSoutien progress::-webkit-progress-value { background:var(--hs-good); border-radius:2px; }
#homeSoutien progress::-moz-progress-bar { background:var(--hs-good); border-radius:2px; }
#homeSoutien .hs-classics { margin-top:6px; padding-top:6px; border-top:1px solid var(--hs-line); }
#homeSoutien summary { display:flex; align-items:center; gap:6px; cursor:pointer; padding:4px 3px; color:var(--hs-muted); font:600 14px/1.4 Arial,sans-serif; list-style:none; }
#homeSoutien summary::-webkit-details-marker { display:none; }
#homeSoutien summary::before { content:""; width:5px; height:5px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(-45deg); margin:0 3px; flex-shrink:0; }
#homeSoutien details[open] > summary::before { transform:rotate(45deg); margin-bottom:3px; }
#homeSoutien summary .hs-count { margin-left:auto; }
#global #homeSoutien .hs-classic-list { max-height:184px; overflow-y:auto; padding:2px; }
#homeSoutien .hs-classic-list li + li { border-top:1px solid var(--hs-line); }
#homeSoutien .hs-scroll { scrollbar-width:thin; scrollbar-color:var(--hs-thumb) transparent; }
#homeSoutien .hs-scroll::-webkit-scrollbar { width:4px; height:4px; }
#homeSoutien .hs-scroll::-webkit-scrollbar-track { background:transparent; }
#homeSoutien .hs-scroll::-webkit-scrollbar-thumb { background:var(--hs-thumb); border-radius:4px; }
@supports selector(::-webkit-scrollbar) { #homeSoutien .hs-scroll { scrollbar-width:auto; scrollbar-color:auto; } }
#homeSoutien .hs-defis { margin-top:7px; padding:3px; border-radius:6px; background:var(--hs-surface); }
#homeSoutien .hs-mission { display:flex; align-items:center; justify-content:space-between; gap:6px; width:100%; min-width:0; min-height:28px; padding:5px 6px; color:var(--hs-text) !important; }
#homeSoutien .hs-mission > span { min-width:0; }
#homeSoutien .hs-mission > small { flex-shrink:1; text-align:right; }
#homeSoutien small { color:var(--hs-muted); font:400 13px/1.4 Arial,sans-serif; }
#homeSoutien button:disabled { cursor:default; color:var(--hs-muted) !important; }
#global #homeSoutien .hs-muted { margin:3px 0 0; padding:0; color:var(--hs-muted) !important; font:400 13px/1.4 Arial,sans-serif; text-align:left; text-transform:none; }
#homeSoutien [data-hs-status]:empty { display:none; }
#homeSoutien .hs-actions { display:flex; align-items:center; gap:4px; }
#homeSoutien .hs-icon-button { display:grid; place-items:center; flex:0 0 28px; width:28px; height:28px; border:1px solid var(--hs-line); border-radius:6px; color:var(--hs-accent) !important; background:var(--hs-card); font:400 16px/1 Arial,sans-serif; text-align:center; }
#homeSoutien .hs-chevron { display:block; width:14px; height:14px; flex:0 0 14px; fill:none; stroke:currentColor; stroke-width:1.75; stroke-linecap:round; stroke-linejoin:round; }
#homeSoutien .hs-nav { border-color:transparent; background:transparent; }
#homeSoutien .hs-play-link { display:inline-flex; align-items:center; gap:3px; padding:4px 5px; min-height:28px; border-radius:6px; font-size:14px; }
#homeSoutien .hs-picker { display:grid; grid-template-columns:minmax(0,1fr) 30px 30px; align-items:center; gap:4px; margin-top:5px; padding:4px; background:var(--hs-surface); border-radius:6px; }
#homeSoutien .hs-picker select { width:100%; min-width:0; height:30px; padding:3px 5px; border:1px solid var(--hs-line) !important; border-radius:4px; background:var(--hs-card) !important; color:var(--hs-text) !important; font:14px Arial,sans-serif; }
#homeSoutien .hs-picker .hs-icon-button { width:30px; height:30px; }
#homeSoutien .hs-confirm { color:var(--hs-good) !important; }
#homeSoutien .hs-favorites-section.hs-favorites-empty { padding-top:4px; padding-bottom:4px; }
#homeSoutien .hs-favorites-empty .hs-heading { margin-bottom:0; }
#homeSoutien .hs-favorites { display:flex; flex-wrap:wrap; gap:4px; }
#homeSoutien .hs-favorite { display:flex; align-items:stretch; max-width:100%; min-width:0; border-radius:5px; background:var(--hs-surface); }
#homeSoutien .hs-favorite > :first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding:4px 6px; min-width:0; }
#homeSoutien .hs-favorite > [data-hs-remove] { flex-shrink:0; width:28px; text-align:center; font-size:16px; border-left:1px solid var(--hs-line); color:var(--hs-muted) !important; }
#global #homeSoutien .hs-friends { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3px; max-width:270px; padding:2px; }
#homeSoutien .hs-friends li { min-width:0; }
#homeSoutien .hs-friend { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; width:100%; min-width:0; min-height:77px; aspect-ratio:1; padding:5px 3px; border:0; border-radius:8px; background:transparent; color:var(--hs-text) !important; text-align:center; }
#homeSoutien .hs-friend:not(:disabled):hover { background:transparent; }
#homeSoutien .hs-friend:hover > span { text-decoration:underline; text-underline-offset:2px; }
#homeSoutien .hs-friend img { display:block; width:46px; height:46px; flex-shrink:0; object-fit:cover; border-radius:7px; }
#homeSoutien .hs-friend > span { width:100%; font:400 13px/1.25 Arial,sans-serif; }
#homeSoutien .hs-friends-more { display:inline-block; margin-top:4px; padding:3px 4px; font-size:13px; }
#homeSoutien .hs-news { display:block; min-width:0; padding:5px 6px; border-radius:6px; }
#homeSoutien .hs-news strong { color:var(--hs-text); font:600 14px/1.4 Arial,sans-serif; }
#homeSoutien .hs-news > span { color:var(--hs-muted); font:400 13px/1.4 Arial,sans-serif; }
#homeSoutien .hs-feed-line { display:flex; gap:4px; align-items:center; min-width:0; }
#homeSoutien .hs-feed-line > a { flex:1; min-width:0; }
#homeSoutien .hs-vote { display:block; min-height:28px; padding:5px 6px; color:var(--hs-text) !important; border-radius:6px; }
#homeSoutien .hs-votes { background:var(--hs-surface); }
#homeSoutien .hs-dismiss { flex-shrink:0; background:transparent; border-color:transparent; }
#homeSoutien .hs-dismiss-confirm { padding:7px; margin:3px 0 6px; border:1px solid var(--hs-line); border-radius:6px; background:var(--hs-surface); }
#global #homeSoutien .hs-dismiss-confirm p { margin:0 0 5px; padding:0; font:400 14px/1.4 Arial,sans-serif; color:var(--hs-text) !important; text-align:left; }
#homeSoutien .hs-dismiss-confirm .hs-actions { justify-content:flex-end; }
#homeSoutien .hs-feed-item + .hs-feed-item { border-top:1px solid var(--hs-line); }
#homeSoutien .hs-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media (max-width:991px) {
  #homeSoutien { float:none; position:static; width:100%; margin:0 0 14px; }
  #homeSoutien .hs-body { max-height:none; overflow:visible; }
}
@media (min-width:600px) and (max-width:991px) {
  #global #homeSoutien .hs-classic-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:14px; }
  #global #homeSoutien .hs-friends { grid-template-columns:repeat(6,minmax(0,1fr)); max-width:540px; }
}
@media (pointer:coarse) {
  #homeSoutien .hs-task, #homeSoutien .hs-mission, #homeSoutien .hs-vote { min-height:30px; }
  #homeSoutien .hs-icon-button { min-width:30px; min-height:30px; }
}
