:root{
  --gp-bg:#f4ead7;
  --gp-surface:#e7d7bb;
  --gp-surface-2:#e7d7bb;
  --gp-border:#b79263;
  --gp-border-strong:#9c6f3d;
  --gp-title:#5b3a1e;
  --gp-text:#5b3a1e;
  --gp-muted:#7a5a39;
  --gp-font-family:Merriweather,"Times New Roman",serif;
  --gp-font-size:17px;
  --gp-heading-font-family:Merriweather,"Times New Roman",serif;
  --gp-heading-scale:1;
  --gp-blog-title-start:rgba(239,227,207,.96);
  --gp-blog-title-end:rgba(239,227,207,.96);
  --gp-blog-title-bg:linear-gradient(180deg,var(--gp-blog-title-start),var(--gp-blog-title-end));
  --gp-blog-title-text:#5b3a1e;
  --gp-blog-title-hover-start:rgba(156,111,61,.96);
  --gp-blog-title-hover-end:rgba(111,75,37,.96);
  --gp-blog-title-hover-bg:linear-gradient(180deg,var(--gp-blog-title-hover-start),var(--gp-blog-title-hover-end));
  --gp-blog-title-hover-text:#f8f1e6;
  --gp-blog-title-border:#b79263;
  --gp-blog-title-font-family:Merriweather,"Times New Roman",serif;
  --gp-blog-title-font-size:28px;
  --gp-btn-start:#9c6f3d;
  --gp-btn-end:#6f4b25;
  --gp-btn:linear-gradient(180deg,var(--gp-btn-start),var(--gp-btn-end));
  --gp-btn-hover-start:#6f4b25;
  --gp-btn-hover-end:#9c6f3d;
  --gp-btn-hover:linear-gradient(180deg,var(--gp-btn-hover-start),var(--gp-btn-hover-end));
  --gp-btn-text:#f8f1e6;
  --gp-btn-hover-text:#f8f1e6;
  --gp-footer:#9c6f3d;
  --gp-footer-text:#f8f1e6;
  --gp-footer-btn-start:#9c6f3d;
  --gp-footer-btn-end:#6f4b25;
  --gp-footer-btn:linear-gradient(180deg,var(--gp-footer-btn-start),var(--gp-footer-btn-end));
  --gp-footer-hover-start:#6f4b25;
  --gp-footer-hover-end:#9c6f3d;
  --gp-footer-hover:linear-gradient(180deg,var(--gp-footer-hover-start),var(--gp-footer-hover-end));
  --gp-footer-hover-text:#f8f1e6;
  --gp-collectif-vignette-bg:rgba(231,215,187,.82);
  --gp-collectif-vignette-text:#5b3a1e;
  --gp-collectif-vignette-border:#b79263;
  --gp-shadow:0 14px 34px rgba(91,58,30,.12);
  --gp-shadow-soft:0 8px 22px rgba(91,58,30,.08);
  --gp-line:1.6;
  --gp-vignette-width:232px;
  --gp-vignette-height:146px;
  --gp-vignette-gap:8px;
  --gp-vignette-padding:8px;
  --gp-card-article-height:162px;
}

.mediatek-public-note,
.mediatek-sortbar{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0;
}
.mediatek-public-note{
  justify-content:space-between;
  border:1px dashed rgba(78,43,20,.55);
  border-radius:14px;
  padding:10px 14px;
  background:rgba(255,248,230,.55);
}
.mediatek-public-note p{
  margin:0;
}
.mediatek-sortbar .bouton1.is-active{
  outline:2px solid rgba(255,255,255,.9);
  box-shadow:0 0 0 2px rgba(78,43,20,.5);
}
.mediatek-reactions{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  margin-top:6px;
}
.videotheque-strip-card .mediatek-reactions{
  position:static;
}
.mediatek-reactions .reaction-btn{
  min-width:54px;
  min-height:34px;
  padding:5px 10px;
}
.mediatek-playlist-create-form{
  margin-top:12px;
}
.musikotek-track-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.mediatek-comments-section{
  margin-top:18px;
}
.mediatek-comments-compact{
  gap:8px;
  padding:12px 14px;
}
.mediatek-comments-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
}
.mediatek-comments-head h2{
  margin:0;
}
.mediatek-comments-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.mediatek-comments-intro,
.mediatek-comments-login{
  margin:0;
}
.mediatek-comment-form-line{
  display:flex;
  align-items:flex-end;
  gap:8px;
}
.mediatek-comment-form-line textarea{
  min-height:42px;
  max-height:160px;
  resize:vertical;
}
.mediatek-comment-form-line .bouton1{
  flex:0 0 auto;
}
.mediatek-reactions .card-reaction{
  min-width:54px;
  min-height:34px;
  padding:5px 10px;
}

@media (max-width: 720px){
  .mediatek-public-note{
    justify-content:center;
    text-align:center;
  }
  .mediatek-sortbar .bouton1{
    min-width:140px;
  }
  .mediatek-comment-form-line{
    align-items:stretch;
    flex-direction:column;
  }
}

*{box-sizing:border-box}
html{height:100%;scroll-behavior:smooth}
body{min-height:100vh;margin:0;display:flex;flex-direction:column;color:var(--gp-text);font-family:var(--gp-font-family);font-size:var(--gp-font-size);line-height:var(--gp-line);background:url("../img/fondusite01.jpg") center/cover fixed no-repeat;background-color:var(--gp-bg)}
a{color:var(--gp-title)}
a:hover{color:var(--gp-btn-hover)}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
main{flex:1 0 auto;width:min(var(--gp-max),calc(100% - 28px));margin:0 auto;padding:12px 0 26px}
main.blog-home-page{width:min(55vw,calc(100% - 28px))}
main.article-page{width:min(65vw,calc(100% - 28px))}
main.gp-local-page,
main.messages-page,
main.my-articles-page,
main.gp-page,
main.tags-page{width:min(70vw,calc(100% - 28px))}
body.page-admin main,body.page-create-article main,body.page-edit-article main{width:min(var(--gp-max),calc(100% - 28px))}

h1,h2,h3,h4{color:var(--gp-title);line-height:1.18;margin:0 0 .55em;font-family:var(--gp-heading-font-family)}
h1{font-size:calc(clamp(1.34rem,1.9vw,1.82rem) * var(--gp-heading-scale))}
h2{font-size:calc(clamp(1.12rem,1.45vw,1.38rem) * var(--gp-heading-scale))}
h3{font-size:calc(clamp(1rem,1.1vw,1.16rem) * var(--gp-heading-scale))}
h4{font-size:calc(clamp(1rem,1.2vw,1.15rem) * var(--gp-heading-scale))}
p,ul,ol{margin:0 0 1em}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.small{font-size:.95rem;color:var(--gp-muted)}
.no-article,.messages-empty,.my-articles-empty{padding:24px;border:1px dashed var(--gp-border);background:rgba(231,215,187,.9);border-radius:18px;text-align:center;color:var(--gp-muted)}

.titre-articles,
.hero-blog-intro,
.formwrapper,
.gp-card,
.messages-wide,
.gp-local-section,
.gp-local-card,
.profile-card-extended,
.profile-section-box,
.auth-card,
.my-article-card,
.gp-local-titlebox,
.my-articles-head,
.tags-head{
  background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));
  border:1px solid var(--gp-border);
  border-radius:var(--gp-radius, 24px);
  box-shadow:var(--gp-shadow);
}

.card-article,
.article-meta-box,
.article-community-box,
.article-posters,
.article-video-block,
.comments-section,
.article-rich-content,
.blocarticle{
  background:linear-gradient(180deg,var(--gp-article-bg),var(--gp-article-bg));
  border:1px solid var(--gp-article-border);
  border-radius:var(--gp-radius, 24px);
  box-shadow:var(--gp-shadow);
}

.titre-articles{
  display:inline-block;
  width:auto;
  max-width:max-content;
  padding:12px 22px;
  margin:6px auto 14px;
  border-radius:18px;
  font-weight:700;
  text-align:center;
}
.titre-articles--section{font-size:1.02rem}
.note,.form-help,.auth-helper-note,.article-editor-head__meta,.article-create-lead,.gp-note{
  color:var(--gp-muted);
}
.article-editor-head__actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

/* boutons */
.bouton1,.bouton-form,.header-mini-btn,.nav-auth-btn,.gp-btn,.gp-local-related__btn,.gp-local-link,.my-article-pill,.tag-pill,.article-edit-btn,.share-mini,.social-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:clamp(38px, 3vw, 42px);
  padding:clamp(8px, .9vw, 10px) clamp(12px, 1.25vw, 16px);
  border-radius:14px;
  border:1px solid var(--gp-nav-border, var(--gp-border-strong));
  background-image:var(--gp-btn);
  background-color:var(--gp-btn-start);
  color:var(--gp-btn-text);
  text-decoration:none;
  font-weight:700;
  font-size:clamp(.84rem, 1.08vw, 1rem);
  line-height:1.1;
  box-shadow:var(--gp-shadow-soft);
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
  cursor:pointer;
  white-space:nowrap;
}
.bouton1:hover,.navbouton > .bouton1.is-current,.bouton-form:hover,.header-mini-btn:hover,.nav-auth-btn:hover,.blog-footer__link:hover,.gp-btn:hover,.gp-local-related__btn:hover,.gp-local-link:hover,.my-article-pill:hover,.tag-pill:hover,.article-edit-btn:hover,.share-mini:hover,.social-btn:hover{
  background-image:var(--gp-btn-hover);
  background-color:var(--gp-btn-end);
  color:var(--gp-btn-hover-text, var(--gp-btn-text));
  transform:translateY(-1px);
}
.bouton-form--light,.share-mini,.tag-pill{background:rgba(156,111,61,.14);color:var(--gp-title)}
.bouton-form--light:hover,.share-mini:hover,.tag-pill:hover{color:var(--gp-btn-text)}
.share-mini--pdf{min-width:54px}
.share-mini--pdf .share-mini__icon{font-size:.9rem;font-weight:800;letter-spacing:0}
button:disabled,.admin-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}

/* formulaires */
label{display:block;margin:0 0 6px;font-weight:700;color:var(--gp-title)}
input[type="text"],input[type="email"],input[type="password"],input[type="url"],input[type="search"],select,textarea{
  width:100%;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--gp-border);
  background:rgba(244,234,215,.95);
  color:var(--gp-text);
  outline:none;
  box-shadow:inset 0 1px 2px rgba(91,58,30,.05);
}
textarea{min-height:140px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--gp-btn-hover);box-shadow:0 0 0 4px rgba(156,111,61,.16)}
.password-field{position:relative;display:block}
.password-field input{padding-right:52px}
.password-toggle{
  position:absolute;top:50%;right:8px;transform:translateY(-50%);
  display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border:1px solid var(--gp-border);border-radius:999px;background:rgba(255,250,240,.72);
  color:var(--gp-title);cursor:pointer;font-size:1rem;line-height:1;
}
.password-toggle:hover,.password-toggle:focus-visible{background:var(--gp-btn-bg);color:var(--gp-btn-text)}
.formwrapper{width:min(980px,100%);margin:20px auto;padding:24px}
.auth-card{width:min(640px,100%)}
.formwrapper form,.admin-form{display:grid;gap:16px}
.form-group,.form-group--full{display:grid;gap:8px}
.form-actions,.profile-actions-row,.profile-actions,.auth-links-grid,.gp-local-related__buttons,.my-article-actions{display:flex;flex-wrap:wrap;gap:12px}
.auth-links-grid{margin-top:14px}
.auth-links-grid .auth-link-button{
  flex:1 1 220px;
  color:#ffe45c;
}
.auth-links-grid .auth-link-button:hover,
.auth-links-grid .auth-link-button:focus-visible{
  color:#ffe45c;
}
.msg,.flash,.flash-success,.flash-error{padding:14px 16px;border-radius:14px;margin:0 0 14px}
.msg,.flash{background:rgba(156,111,61,.12);border:1px solid var(--gp-border)}
.msg-error,.flash-error{background:rgba(140,87,52,.12);border:1px solid rgba(140,87,52,.35);color:#7a3f34}
.flash-success{background:rgba(121,122,77,.13);border:1px solid rgba(121,122,77,.35);color:#48623d}
.form-avatar{display:block;width:72px;height:72px;object-fit:contain;margin:0 auto 10px}
.link{display:inline-block;text-decoration:none;font-weight:700}

/* header */
header{padding-top:8px}
.header-inline-wrap{width:min(1400px,calc(100% - 24px));margin:0 auto 10px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.nav-gauche{display:flex;justify-content:center;align-items:center}
.navtitre{
  display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:18px;text-decoration:none;
  background:linear-gradient(180deg,rgba(231,215,187,.98),rgba(239,227,207,.98));
  border:1px solid var(--gp-border);box-shadow:var(--gp-shadow);font-weight:700;font-size:clamp(1rem,2.1vw,1.45rem);color:var(--gp-title);text-align:center
}
.navtitre:hover{background:var(--gp-blog-title-hover-bg);color:var(--gp-blog-title-hover-text)}
.header-inline-tools{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.header-mini-badge{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:rgba(244,234,215,.98);
  color:var(--gp-title);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.75rem;
  font-weight:700;
  border:1px solid var(--gp-admin-border, var(--gp-border));
  box-shadow:var(--gp-shadow-soft);
}
.navboutonstructure{margin-bottom:8px}
.navbouton{width:min(1400px,calc(100% - 24px));margin:0 auto;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;align-items:center}
.search-box{display:flex;align-items:center;justify-content:flex-end;gap:0;flex:0 0 auto;width:46px;min-width:46px;max-width:46px;padding:2px;background:rgba(231,215,187,.94);border:1px solid rgba(183,146,99,.9);border-radius:999px;box-shadow:var(--gp-shadow-soft);backdrop-filter:blur(2px);overflow:hidden;transition:width .24s ease,max-width .24s ease,padding .24s ease,box-shadow .18s ease}
.search-box.search-box--open,.search-box.search-box--filled,.search-box:focus-within{width:min(320px,100%);max-width:320px;padding:2px 2px 2px 12px;gap:8px}
.search-box input[type="search"]{flex:1;max-width:0;opacity:0;border:0;background:transparent;box-shadow:none;padding:8px 0;min-width:0;pointer-events:none;transition:max-width .24s ease,opacity .18s ease,padding .24s ease}
.search-box.search-box--open input[type="search"],.search-box.search-box--filled input[type="search"],.search-box:focus-within input[type="search"]{max-width:240px;opacity:1;padding:8px 2px;pointer-events:auto}
.search-box input[type="search"]::placeholder{color:rgba(91,58,30,.65)}
.search-box input[type="search"]:focus{box-shadow:none}
.search-box .search-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:40px;height:40px;padding:0;border:1px solid var(--gp-nav-border, var(--gp-border-strong));border-radius:999px;background-image:var(--gp-btn);background-color:var(--gp-btn-start);color:var(--gp-btn-text);box-shadow:var(--gp-shadow-soft);cursor:pointer;transition:transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease}.search-btn__icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px}.search-btn__icon svg{width:100%;height:100%;display:block}
.search-box .search-btn:hover{background-image:var(--gp-btn-hover);background-color:var(--gp-btn-end);color:var(--gp-btn-hover-text, var(--gp-btn-text));transform:translateY(-1px)}
.search-btn__icon{font-size:1rem;line-height:1}

/* accueil */
.blog-home-wrap{
  display:grid;
  gap:20px;
  justify-items:center;
}
.hero-blog-intro{
  display:inline-block;
  width:auto;
  max-width:max-content;
  padding:12px 24px;
  text-align:center;
}
.hero-blog-intro__title{
  margin:0;
  font-size:clamp(1.34rem,2vw,1.82rem);
  line-height:1.06;
}
.articles-grid{
  display:grid;
  gap:18px;
  width:100%;
}
.card-article{
  display:grid;
  grid-template-columns:var(--gp-vignette-width) minmax(0,1fr);
  column-gap:var(--gp-vignette-gap);
  align-items:start;
  height:var(--gp-card-article-height);
  min-height:var(--gp-card-article-height);
  max-height:var(--gp-card-article-height);
  padding:var(--gp-vignette-padding);
  background:linear-gradient(180deg,rgba(231,215,187,.88),rgba(239,227,207,.88));
  border-radius:var(--gp-radius, 24px);
  overflow:hidden;
}
.card-article__thumb-link{
  display:block;
  inline-size:var(--gp-vignette-width);
  block-size:var(--gp-vignette-height);
  min-inline-size:var(--gp-vignette-width);
  max-inline-size:var(--gp-vignette-width);
  min-block-size:var(--gp-vignette-height);
  max-block-size:var(--gp-vignette-height);
  margin:0;
  overflow:hidden;
  border-radius:var(--gp-radius-soft, 18px);
  justify-self:start;
  align-self:start;
}
.card-article__thumb{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  border-radius:inherit;
}
.card-article__content{
  min-width:0;
  min-height:0;
  height:100%;
  padding:0;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  row-gap:10px;
  align-content:start;
  text-align:left;
  overflow:hidden;
}
.card-article__title{
  margin:0;
  font-size:clamp(1.08rem,1.25vw,1.42rem);
  line-height:1.12;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.card-article__title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.card-article__title-row .card-article__title{
  flex:1 1 auto;
  min-width:0;
}
.card-article__group-btn{
  flex:0 0 auto;
  max-width:42%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.card-article__title a{text-decoration:none}
.card-article__excerpt{
  margin:0;
  color:var(--gp-text);
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.card-article__meta-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 12px;
  align-self:end;
  width:100%;
  padding-bottom:6px;
}
.card-article__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  flex:1 1 auto;
  min-width:min(100%,360px);
  margin:0;
  color:var(--gp-muted);
  font-size:.92rem;
}
.card-article__date{
  white-space:nowrap;
}
.card-article__collectif{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:min(34ch,100%);
  min-height:36px;
  padding:7px 14px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.card-article__group-btn:hover,
.card-article__collectif:hover{
  color:#ffe866;
  text-decoration:none;
}
.card-article__tags{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.card-reactions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.card-article__reactions{
  margin-left:auto;
  flex:0 0 auto;
  justify-content:flex-end;
}
.card-reaction{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:7px 12px;
  border:1px solid var(--gp-border-strong);
  border-radius:14px;
  background:rgba(156,111,61,.18);
  color:var(--gp-title);
  font-weight:700;
  font-size:.9rem;
  line-height:1;
  white-space:nowrap;
  box-shadow:var(--gp-shadow-soft);
  cursor:pointer;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}
.card-reaction:hover{
  background:rgba(156,111,61,.28);
  transform:translateY(-1px);
}
.card-reaction.is-active{
  outline:2px solid var(--gp-border-strong);
  outline-offset:2px;
  background:rgba(156,111,61,.32);
}
.card-article__reactions .card-reaction.is-active,
.collectifs-page .collectif-card__reactions .card-reaction.is-active,
.article-community-box__reactions .social-btn.is-active{
  background:#ffe866;
  color:#4e2b14;
  border-color:#4e2b14;
  outline:2px solid #4e2b14;
  outline-offset:1px;
}
.card-reaction:disabled{
  opacity:.65;
  cursor:wait;
  transform:none;
}
.tag-pill{
  min-height:36px;
  padding:7px 14px;
}

/* article */
.article-page{display:grid;gap:18px}
.article-page > .blocarticle{
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.article-page > .blocarticle.article-rendered{
  color:var(--gp-article-text);
}
.article-rich-content{
  display:grid;
  gap:22px;
  background:transparent;
  border:0;
  box-shadow:none;
}
.article-rich-header{
  display:grid;
  justify-items:center;
  gap:12px;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  text-align:center;
}
.article-rich-header h1,.article-rich-subtitle,.raw-article-heading{color:var(--gp-article-title)}
.article-rich-header h1{margin:0;display:inline-block;width:fit-content;max-width:min(100%,900px);padding:10px 20px;border:1px solid var(--gp-article-border);border-radius:24px;background:var(--gp-article-bg);font-family:var(--gp-article-title-font-family);font-size:clamp(1.35rem,2vw,var(--gp-article-title-font-size));line-height:1.12;box-shadow:var(--gp-shadow-soft)}
.article-rich-subtitle{margin:0;display:inline-block;width:fit-content;max-width:min(100%,760px);padding:8px 18px;border:1px solid var(--gp-article-border);border-radius:20px;background:var(--gp-article-bg);font-family:var(--gp-article-title-font-family);font-size:clamp(1rem,1.4vw,calc(var(--gp-article-title-font-size) * .52));line-height:1.28;box-shadow:var(--gp-shadow-soft)}
.article-rendered,.article-reading-panel,.article-html-content,.raw-article-render{font-family:var(--gp-article-text-font-family);font-size:clamp(1rem,1.15vw,var(--gp-article-text-font-size));line-height:1.8;color:var(--gp-article-text)}
.article-reading-panel{
  width:min(100%,980px);
  margin:0 auto;
  padding:28px 30px;
  border:1px solid var(--gp-article-border);
  border-radius:22px;
  background:linear-gradient(180deg,var(--gp-article-bg),var(--gp-article-bg));
  box-shadow:var(--gp-shadow-soft);
  backdrop-filter:blur(1.5px);
}
.article-html-content{
  display:grid;
  gap:0;
  padding:0;
}
.article-html-content .gp-title-block{
  width:100%;
  margin:18px 0;
}
.article-html-content .gp-title-block--left{text-align:left}
.article-html-content .gp-title-block--center{text-align:center}
.article-html-content .gp-title-block--right{text-align:right}
.article-html-content .gp-title-block h2{
  display:inline-block;
  width:fit-content;
  max-width:100%;
  margin:0;
  padding:14px 22px;
  overflow-wrap:anywhere;
  border:2px solid rgba(139,107,63,.48);
  border-radius:18px;
  background:rgba(255,248,235,.60);
  box-shadow:0 10px 28px rgba(60,40,20,.18);
  color:var(--gp-article-title);
  line-height:1.25;
}
.article-html-content .gp-paragraph{
  margin:18px 0;
  padding:18px 22px;
  overflow:hidden;
  border:2px solid rgba(139,107,63,.48);
  border-radius:18px;
  background:rgba(255,248,235,.60);
  box-shadow:0 10px 28px rgba(60,40,20,.18);
  line-height:1.75;
}
.article-html-content .gp-paragraph > :first-child{margin-top:0}
.article-html-content .gp-paragraph > :last-child{margin-bottom:0}
.article-html-content .gp-acc,
.article-html-content details{
  margin:18px 0;
  overflow:hidden;
  border:2px solid rgba(139,107,63,.48);
  border-radius:18px;
  background:rgba(255,248,235,.60);
  box-shadow:0 10px 28px rgba(60,40,20,.18);
}
.article-html-content .gp-acc[open],
.article-html-content details[open]{
  border-color:rgba(111,139,74,.75);
}
.article-html-content .gp-sum,
.article-html-content details summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  cursor:pointer;
  list-style:none;
  padding:18px 22px;
  user-select:none;
  background:linear-gradient(180deg,rgba(255,252,245,.42),rgba(233,219,191,.28));
}
.article-html-content .gp-sum::-webkit-details-marker,
.article-html-content details summary::-webkit-details-marker{display:none}
.article-html-content .gp-sum__title,
.article-html-content details summary > span:first-child{
  font-size:1.18rem;
  font-weight:700;
  color:var(--gp-article-title);
}
.article-html-content .gp-sum__hint,
.article-html-content details summary:not(.gp-sum)::after{
  flex:0 0 auto;
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  border:1px solid rgba(139,107,63,.55);
  color:#6f8b4a;
  font-size:1.15rem;
  background:rgba(255,250,242,.55);
  transition:transform .25s ease;
}
.article-html-content details summary:not(.gp-sum)::after{content:"∨"}
.article-html-content .gp-acc[open] .gp-sum__hint,
.article-html-content details[open] summary:not(.gp-sum)::after{
  transform:rotate(180deg);
}
.article-html-content .gp-content,
.article-html-content details > div{
  padding:0 22px 22px;
  border-top:1px solid rgba(183,146,99,.65);
  line-height:1.75;
}
.article-rendered p,.article-html-content p,.raw-article-render p{margin:0 0 1em}
.article-rendered p:last-child,.article-html-content p:last-child,.raw-article-render p:last-child{margin-bottom:0}
.article-rendered ul,.article-html-content ul,.raw-article-render ul,.gp-legal-list,.gp-legal-list ul{padding-left:1.25em}
.raw-article-render{
  width:100%;
}
.raw-article-heading{
  margin:1.35em 0 .55em;
  font-family:var(--gp-article-title-font-family);
  font-size:clamp(1.08rem,1.35vw,calc(var(--gp-article-title-font-size) * .62));
  line-height:1.25;
}
.raw-article-render > .raw-article-heading:first-child{
  margin-top:0;
}
.raw-article-intro{
  font-size:calc(var(--gp-article-text-font-size) * 1.03);
}
.raw-article-paragraph,
.raw-article-intro{
  max-width:none;
}
.article-reading-panel .raw-article-paragraph,
.article-reading-panel .raw-article-intro,
.article-reading-panel .raw-article-list,
.article-reading-panel .raw-article-heading{
  max-width:72ch;
}
.article-reading-panel .raw-article-list{
  margin-left:auto;
  margin-right:auto;
}
.raw-article-list{
  margin:0 0 1.1em 0;
  padding-left:1.4em;
}
.raw-article-list li{margin:.45em 0}
.article-html-content::after,
.raw-article-render::after,
.article-reading-panel::after{
  content:"";
  display:block;
  clear:both;
}
.article-inline-figure{
  margin:18px auto;
  max-width:100%;
}
.article-inline-figure--left{
  float:left;
  margin:6px 20px 12px 0;
}
.article-inline-figure--right{
  float:right;
  margin:6px 0 12px 20px;
}
.article-inline-figure--center{
  text-align:center;
}
.article-inline-image{
  display:block;
  height:auto;
  max-width:100%;
  border-radius:14px;
  border:1px solid var(--gp-article-border);
  box-shadow:var(--gp-shadow-soft);
}
.article-inline-image--small{width:min(220px,100%)}
.article-inline-image--medium{width:min(420px,100%)}
.article-inline-image--full{width:100%}
.article-inline-figure--center .article-inline-image{margin-inline:auto}
.article-inline-figure--left .article-inline-image,
.article-inline-image--left{margin-right:auto}
.article-inline-figure--right .article-inline-image,
.article-inline-image--right{margin-left:auto}
.article-inline-video{
  display:block;
  width:100%;
  max-width:760px;
  margin:20px auto;
  overflow:hidden;
  border:1px solid var(--gp-article-border);
  border-radius:18px;
  background:#000;
  box-shadow:var(--gp-shadow-soft);
}
.article-inline-video-frame,
.article-inline-video-player{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  height:auto;
  min-height:220px;
  border:0;
  background:#000;
}
@media (max-width:760px){
  .article-inline-figure--left,
  .article-inline-figure--right{float:none;margin:16px auto;text-align:center}
  .article-inline-video-frame,
  .article-inline-video-player{min-height:180px}
}
.article-carousel,.article-posters,.article-video-block,.article-meta-box,.article-community-box{padding:20px}
.article-carousel{
  display:grid;
  gap:6px;
  justify-items:center;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.article-carousel__viewport{
  position:relative;
  overflow:hidden;
  display:grid;
  place-items:center;
  width:min(100%, 760px);
  height:clamp(280px, 38vw, 430px);
  min-height:280px;
  margin:0 auto;
  padding:18px 62px;
  border:1px solid var(--gp-article-border);
  border-radius:24px;
  background:linear-gradient(180deg,var(--gp-article-bg),var(--gp-article-bg));
  box-shadow:var(--gp-shadow-soft);
}
.article-carousel__slide{display:none;justify-content:center;align-items:center;padding:0;margin:0;width:100%;height:100%;overflow:hidden}
.article-carousel__slide.is-active{display:flex}
.article-carousel__slide img{display:block;width:auto;max-width:100%;max-height:100%;height:auto;object-fit:contain;border-radius:18px;border:1px solid var(--gp-article-border);box-shadow:var(--gp-shadow-soft);margin:0 auto}
.article-carousel__btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2}
.article-carousel__btn--prev{left:-56px}.article-carousel__btn--next{right:-56px}
.article-carousel__dots{display:flex;justify-content:center;gap:8px;margin-top:2px;flex-wrap:wrap}
.article-carousel__dot{width:12px;height:12px;border-radius:999px;border:0;background:rgba(111,75,37,.35);cursor:pointer}
.article-carousel__dot.is-active{background:var(--gp-btn-end)}
.article-related-box{display:grid;gap:14px}
.article-related-box__title{margin:0;text-align:center}
.article-related-box__links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.article-related-box__link{text-align:center}
.article-posters{
  display:grid;
  gap:18px;
  width:100%;
  padding:0;
  justify-items:center;
}
.article-poster{
  width:100%;
  margin:0 auto;
  text-align:center;
}
.article-poster__img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  margin:0 auto;
  border-radius:18px;
  border:1px solid var(--gp-article-border);
  box-shadow:var(--gp-shadow-soft);
}
.article-poster--portrait .article-poster__img,.article-poster--landscape .article-poster__img,.article-poster--square .article-poster__img{max-height:none}
.article-video-player,.article-video-embed{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:18px;background:#000;overflow:hidden}
.article-video-player{height:auto}
.article-video-embed iframe{display:block;width:100%;height:100%;border:0;border-radius:18px;background:#000}
.article-meta-box{display:grid;gap:12px}
.article-meta-line,.article-meta-left,.article-meta-right,.article-meta-tags,.sharebar,.social-actions,.article-community-box__top,.article-community-box__reactions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.article-meta-line{justify-content:flex-start}
.article-meta-left{flex:1 1 320px}
.article-meta-line > .sharebar{margin-left:auto;justify-content:flex-end}
.article-meta-right{justify-content:flex-end}
.article-community-box__top{justify-content:space-between}
.article-community-box__reactions{margin-left:auto;justify-content:flex-end}
.article-author-card{display:flex;gap:12px;align-items:center;padding:0;border-radius:0;background:transparent;border:0;box-shadow:none;text-decoration:none}
.article-author-card__avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid var(--gp-article-border)}
.article-meta-date{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border-radius:18px;border:1px solid var(--gp-article-border);background:var(--gp-article-bg);font-family:var(--gp-article-text-font-family);font-size:clamp(.9rem,1vw,var(--gp-article-meta-font-size));line-height:1.3;color:var(--gp-article-text);white-space:nowrap;box-shadow:var(--gp-shadow-soft)}
.article-community-box__title{margin-bottom:0}
.comments-form-wrap{margin-top:14px}
.article-community-box__form{display:flex;align-items:flex-end;gap:10px}
.article-community-box__form textarea{flex:1 1 auto;min-width:0;min-height:44px;height:44px;max-height:260px;resize:vertical;padding-block:10px}
.article-community-box__form .bouton1{flex:0 0 auto;min-height:44px}
.comments-section{display:grid;gap:14px;padding:20px}
.comment-item,.comment{padding:14px;border:1px solid var(--gp-border);border-radius:16px;background:rgba(244,234,215,.76)}
.comment-item-pinned{border-width:2px;border-color:var(--gp-btn-start);box-shadow:0 0 0 3px rgba(182,255,0,.14),var(--gp-shadow-soft)}
.comment-meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px}
.comment-meta{min-width:0}
.comment-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-left:auto}
.comment-actions button,.comment-reply-btn,.reply-send{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 10px;border:1px solid var(--gp-border-strong);border-radius:10px;background:var(--gp-btn);color:var(--gp-btn-text);font:inherit;font-weight:700;cursor:pointer}
.comment-actions .comment-icon-btn{flex:0 0 34px;width:34px;min-height:34px;padding:0;border-radius:50%;font-size:1rem;line-height:1}
.comment-item-pinned .comment-pin-btn{box-shadow:0 0 0 3px rgba(182,255,0,.28)}
.comment-reply-box{margin-top:10px}
.comment-reply-box textarea{width:100%;min-height:70px;resize:vertical}
.like-btn,.dislike-btn{display:inline-flex}
.reaction-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}
.reaction-icon--like{color:#ff4fa3;font-size:1.75em;font-weight:900;width:1em}
.reaction-icon--dislike{filter:grayscale(1) brightness(0)}

/* pages tags, légales, locaux */
.gp-page,.gp-local-page,.tags-page,.my-articles-page,.messages-page{display:grid;gap:18px}
.gp-card{padding:24px}
.tags-wrap{display:grid;gap:20px;justify-items:center;text-align:center}
.tags-buttons-box{width:min(100%,1080px);padding:22px 24px}
.tags-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 16px;width:100%}
.tag-btn{min-width:fit-content}
.tags-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;width:100%}
.gp-legal-head__sub{margin-top:8px}
.gp-legal-list li{margin:.45em 0}
.gp-local-wrap{display:grid;gap:18px}
.gp-local-titlebox,.my-articles-head,.tags-head{padding:18px 22px;border-radius:22px;border:1px solid var(--gp-border);background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));box-shadow:var(--gp-shadow);text-align:center}
.gp-local-titlebox h1,.my-articles-head h1,.tags-head h1{font-size:clamp(1.24rem,1.6vw,1.6rem);line-height:1.08;margin:0;color:var(--gp-title)}
.gp-local-section,.gp-local-card{padding:22px}
.gp-local-grid,.profile-sections,.profile-meta-grid,.my-articles-list{display:grid;gap:18px}
.gp-local-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.gp-local-card{text-align:center}
.gp-local-card__logo img{display:block;margin:0 auto 12px;max-height:120px;width:auto}
.gp-local-card__zone{color:var(--gp-muted);font-weight:700}
.gp-local-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.gp-local-related{margin-top:12px}
.gp-local-related__title{font-weight:700;margin-bottom:10px}

/* auth / profils */
.profile-card-extended{position:relative;padding:26px;display:grid;gap:22px}
.profile-quick-actions{display:flex;justify-content:flex-end;align-items:center;margin:0 0 8px}
.profile-logout-btn{margin-left:auto}
.profile-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px solid var(--gp-border);border-radius:18px;background:rgba(255,250,240,.62);box-shadow:var(--gp-shadow-soft)}
.profile-hero--private{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:flex-start}
.profile-identity{display:flex;align-items:center;gap:18px;min-width:0}
.profile-avatar-circle{width:116px;height:116px;margin:0;border-radius:50%;overflow:hidden;border:2px solid var(--gp-border-strong);background:rgba(244,234,215,.85);display:grid;place-items:center;box-shadow:var(--gp-shadow-soft);flex:0 0 auto}
.profile-card-extended > .profile-avatar-circle{margin:0 auto}
.profile-avatar-img{width:100%;height:100%;object-fit:cover}
.profile-identity__text{min-width:0}
.profile-kicker{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;margin-bottom:8px;border:1px solid var(--gp-border);border-radius:999px;background:rgba(244,234,215,.8);font-size:.86rem;font-weight:700;color:var(--gp-muted)}
.profile-identity__text h1{margin:0;color:var(--gp-title);line-height:1.05;font-size:clamp(1.55rem,2.5vw,2.15rem);overflow-wrap:normal;word-break:normal}
.profile-identity__text p{margin:8px 0 0;color:var(--gp-muted);font-weight:700}
.profile-card-extended .msg{margin:0 0 26px}
.profile-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}
.profile-meta-item{padding:16px;border:1px solid var(--gp-border);border-radius:16px;background:rgba(244,234,215,.78);box-shadow:var(--gp-shadow-soft);min-width:0}
.profile-meta-item--wide{grid-column:1 / -1}
.profile-meta-item span,.profile-meta-item strong{display:block}
.profile-meta-item span{margin-bottom:8px;color:var(--gp-muted);font-size:.92rem}
.profile-meta-item strong{line-height:1.45;overflow-wrap:anywhere}
.profile-sections{margin-top:0;grid-template-columns:repeat(2,minmax(0,1fr))}
.profile-actions-row{margin-top:0;align-items:center;justify-content:flex-end}
.profile-actions-row--top{max-width:none;gap:8px}
.profile-actions-row--top .bouton-form{min-height:38px;padding:8px 12px;font-size:.92rem}
.profile-section-box{padding:20px;border-radius:18px}
.profile-section-box--main{grid-column:1 / -1}
.profile-section-box h2{margin-bottom:10px}
.profile-section-box p{margin:0;line-height:1.65}
.public-profile-card{max-width:980px}
.profile-collectifs-modal[hidden]{display:none}
.profile-collectifs-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px}
.profile-collectifs-modal__backdrop{position:absolute;inset:0;background:rgba(35,28,20,.58);backdrop-filter:blur(3px)}
.profile-collectifs-panel{position:relative;z-index:1;width:min(760px,100%);max-height:min(78vh,760px);overflow:auto;padding:22px;border:1px solid var(--gp-border-strong);border-radius:18px;background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));box-shadow:var(--gp-shadow)}
.profile-collectifs-panel h2{margin:0 46px 16px 0;color:var(--gp-title)}
.profile-collectifs-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:999px;border:1px solid var(--gp-border);background:rgba(244,234,215,.9);color:var(--gp-title);font-size:1.45rem;line-height:1;cursor:pointer}
.profile-collectifs-list{display:grid;gap:12px}
.profile-collectif-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid var(--gp-border);border-radius:14px;background:rgba(255,250,240,.76);color:var(--gp-title);text-decoration:none;box-shadow:var(--gp-shadow-soft)}
.profile-collectif-card:hover{border-color:var(--gp-border-strong);background:rgba(255,250,240,.95)}
.profile-collectif-card img{width:64px;height:64px;object-fit:cover;border-radius:12px;border:1px solid var(--gp-border);background:rgba(244,234,215,.86)}
.profile-collectif-card span{display:grid;gap:4px;min-width:0}
.profile-collectif-card strong{overflow-wrap:anywhere}
.profile-collectif-card small,.profile-collectif-card em{color:var(--gp-muted);font-style:normal}
.profile-modal-open{overflow:hidden}
@media (max-width:760px){
  .profile-hero{align-items:flex-start;flex-direction:column}
  .profile-identity{width:100%;align-items:flex-start}
  .profile-avatar-circle{width:92px;height:92px}
  .profile-actions-row--top{max-width:none}
  .profile-actions-row{justify-content:flex-start}
  .profile-meta-grid,.profile-sections{grid-template-columns:1fr}
  .profile-meta-item--wide,.profile-section-box--main{grid-column:auto}
}
@media (max-width:460px){
  .profile-identity{flex-direction:column}
  .profile-avatar-circle{width:104px;height:104px}
  .profile-actions-row .bouton-form{width:100%;justify-content:center}
}

/* mes articles */
.my-articles-page{display:grid;gap:18px}
.my-articles-wrap{display:grid;gap:18px}
.my-article-card{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;align-items:center;padding:18px}
.my-article-thumb{width:190px;height:130px;object-fit:cover;border-radius:16px;border:1px solid var(--gp-border);box-shadow:var(--gp-shadow-soft)}
.my-article-title{margin:0 0 8px}
.my-article-meta{color:var(--gp-muted)}
.my-article-left,.my-article-right{min-width:0}
.my-article-left{display:block;width:190px;max-width:100%}
.my-article-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.my-article-actions form{margin:0}
.my-article-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* messages */
.messages-stack{display:grid;gap:12px}
.messages-wide{padding:14px}
.messages-titlebar{margin-bottom:10px}
.messages-titlebar h2{margin-bottom:2px}
.messages-titlebar p{color:var(--gp-muted);font-size:.92rem}
.messages-security-notice{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;border:2px solid #16833a;border-radius:12px;background:#eaf8ee;color:#103f20;box-shadow:0 3px 10px rgba(22,131,58,.12)}
.messages-security-notice__icon{flex:0 0 auto;font-size:1.65rem;line-height:1}
.messages-security-notice h2{margin:0 0 5px;color:#0b5c28;font-size:1.25rem}
.messages-security-notice strong{display:block;font-size:1.03rem;color:#0b5c28}
.messages-security-notice p{margin:3px 0 0;font-size:.92rem;line-height:1.4;color:#214d2d}
.collectif-document-download{display:inline-flex;align-items:center;gap:8px;max-width:100%;margin:6px 0;padding:10px 16px;border:2px solid #17120d;border-radius:10px;background:linear-gradient(#ffe66c,#f2c52f);color:#17120d!important;font-weight:800;text-decoration:none!important;overflow-wrap:anywhere;box-shadow:0 3px 8px rgba(0,0,0,.16)}
.collectif-document-download::before{content:"Télécharger";display:inline-block;padding-right:8px;border-right:1px solid rgba(23,18,13,.35);font-size:.82em;text-transform:uppercase;letter-spacing:.03em}
.collectif-document-download:hover{background:#17120d;color:#ffe66c!important;transform:translateY(-1px)}
.messages-users-topline{display:grid;grid-template-columns:minmax(170px,.75fr) minmax(230px,1fr) minmax(260px,1fr);gap:8px;align-items:end;margin-bottom:10px}
.messages-users-topline__title span{display:block;color:var(--gp-muted);font-size:.88rem}
.messages-conversation-select,.messages-user-search{display:flex;gap:6px;align-items:center;min-width:0}
.messages-conversation-select select,.messages-user-search input{width:100%;min-width:0;height:36px;padding:6px 10px;border:1px solid var(--gp-border);border-radius:12px;background:rgba(255,250,240,.9);color:var(--gp-text)}
.messages-open-btn,.messages-user-search .bouton1{min-height:36px;padding:7px 11px;font-size:.88rem;white-space:nowrap}
.messages-users-box,.messages-panel{border:1px solid var(--gp-border);border-radius:16px;background:rgba(244,234,215,.76);padding:10px}
.messages-contact-list--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px;max-height:170px;overflow:auto;padding-right:3px}
.messages-contact{display:flex;gap:7px;align-items:center;min-width:0;padding:7px 9px;border-radius:12px;text-decoration:none;border:1px solid var(--gp-border);background:rgba(229,224,216,.82);color:var(--gp-title)}
.messages-contact.is-active,.messages-contact:hover{background:rgba(156,111,61,.22);border-color:var(--gp-border-strong)}
.messages-contact__avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid var(--gp-border);flex:0 0 auto}
.messages-contact__name{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.messages-search-results{margin-top:10px;padding-top:10px;border-top:1px solid rgba(183,146,99,.7)}
.messages-search-results h3{font-size:1rem;margin-bottom:8px}
.messages-panel__head{margin-bottom:8px}
.messages-panel__person{display:flex;gap:8px;align-items:center}
.messages-thread{max-height:70vh;overflow:auto;display:grid;gap:10px;padding:10px;border:1px solid var(--gp-border);border-radius:14px;background:rgba(244,234,215,.96)}
.message-bubble{max-width:min(80ch,85%);padding:10px 12px;border-radius:16px;border:1px solid var(--gp-border);box-shadow:var(--gp-shadow-soft)}
.message-auto-link{font-weight:700;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere}
.message-bubble.is-me{justify-self:end;background:rgba(156,111,61,.18)}
.message-bubble.is-other{justify-self:start;background:rgba(231,215,187,.92)}
.message-bubble__meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:8px;font-size:.88rem;color:var(--gp-muted)}
.message-delete-btn{padding:6px 10px;border-radius:999px;border:1px solid var(--gp-border);background:transparent;color:var(--gp-title);cursor:pointer}
.message-attachments{display:grid;gap:8px;margin-top:10px}
.message-attachment{padding:10px 12px;border-radius:14px;background:rgba(244,234,215,.75);border:1px solid var(--gp-border)}
.message-attachment__link{text-decoration:none;font-weight:700}
.message-attachment__meta{font-size:.86rem;color:var(--gp-muted)}
.message-attachment__thumb,
.message-attachment__video{display:block;width:min(260px,100%);max-height:190px;object-fit:contain;border-radius:12px;border:1px solid var(--gp-border);background:rgba(255,250,240,.8);margin-bottom:8px}
.message-attachment__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;align-items:center}
.message-attachment__actions a,
.message-attachment__actions button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:6px 10px;border-radius:999px;border:1px solid var(--gp-border);background:rgba(255,250,240,.72);color:var(--gp-title);font-weight:700;text-decoration:none;cursor:pointer;font:inherit}
.message-read-state{white-space:nowrap;color:var(--gp-title);font-weight:700}
.messages-form{margin-top:14px}
.messages-form__main{display:grid;gap:12px}
.messages-form__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.messages-file-picker{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border-radius:14px;border:1px solid var(--gp-border-strong);background:rgba(156,111,61,.16);font-weight:700;cursor:pointer}
#message-attachment{position:absolute;left:-9999px}
.messages-file-name,.messages-form__hint{color:var(--gp-muted)}
.messages-form textarea{
  min-height:54px;
  resize:vertical;
}

/* back to top + footer */
.blog-footer{margin-top:20px;padding:18px 12px;background:var(--gp-footer);border-top:1px solid rgba(75,67,58,.12)}
.blog-footer__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;align-items:center}
.blog-footer__link{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.32);background-image:var(--gp-footer-btn);background-color:var(--gp-footer-btn-start);color:var(--gp-footer-text);text-decoration:none;font-weight:700;font-size:clamp(.85rem,1vw,var(--gp-footer-font-size));box-shadow:var(--gp-shadow-soft);transition:transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease}
.blog-footer__install{font-family:inherit;cursor:pointer}
.blog-footer__install-help{max-width:min(760px,calc(100% - 24px));margin:12px auto 0;color:var(--gp-footer-text);text-align:center;font-weight:700;line-height:1.35}
.pwa-install-dialog[hidden]{display:none!important}
.pwa-install-dialog{position:fixed;z-index:100100;inset:0;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.68)}
.pwa-install-dialog__panel{position:relative;width:min(520px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:26px;text-align:center;border:2px solid var(--gp-border-strong);border-radius:22px;background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));color:var(--gp-text);box-shadow:0 24px 70px rgba(0,0,0,.48)}
.pwa-install-dialog__close{position:absolute;top:10px;right:12px;width:40px;height:40px;border:1px solid var(--gp-border-strong);border-radius:50%;background:var(--gp-btn-start);color:var(--gp-btn-text);font:700 1.6rem/1 Georgia,serif;cursor:pointer}
.pwa-install-dialog__icon{display:block;width:128px;height:128px;margin:0 auto 14px;border-radius:28px;box-shadow:var(--gp-shadow)}
.pwa-install-dialog h2{margin:0 42px 18px;color:var(--gp-title)}
.pwa-install-dialog__instructions{display:grid;gap:12px;text-align:left}
.pwa-install-dialog__instructions p,.pwa-install-dialog__note{margin:0;padding:13px 15px;border:1px solid var(--gp-border);border-radius:14px;background:rgba(255,255,255,.18)}
.pwa-install-dialog__note{margin-top:14px;font-weight:700;text-align:center}
.pwa-install-dialog-open{overflow:hidden}
@media(max-width:520px){.pwa-install-dialog{padding:8px}.pwa-install-dialog__panel{max-height:calc(100vh - 16px);padding:22px 16px}.pwa-install-dialog__icon{width:104px;height:104px}.pwa-install-dialog h2{margin-inline:34px;font-size:1.35rem}}
.blog-footer__link:hover{background-image:var(--gp-footer-hover);background-color:var(--gp-footer-btn-end);color:var(--gp-footer-hover-text);transform:translateY(-1px)}
.blog-footer__sep{color:var(--gp-footer-text);opacity:.9;font-size:clamp(.85rem,1vw,var(--gp-footer-font-size))}
.gp-backtotop{position:fixed;right:18px;bottom:18px;width:48px;height:48px;border:0;border-radius:999px;background-image:var(--gp-btn);
  background-color:var(--gp-btn-start);color:var(--gp-btn-text);box-shadow:var(--gp-shadow);cursor:pointer;display:grid;place-items:center;z-index:30;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .22s ease,transform .22s ease,visibility .22s ease}
.gp-backtotop.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.gp-backtotop:hover{background:#000;color:#ffff00}
.gp-backtotop__icon{font-size:1.25rem;font-weight:700}

/* modèles d'article */
.gp-hero,.gp-section .gp-acc,.art-header,.art-body{background:linear-gradient(180deg,rgba(231,215,187,.96),rgba(239,227,207,.96));border:1px solid var(--gp-border);border-radius:24px;box-shadow:var(--gp-shadow)}
.gp-hero,.art-header,.art-body{padding:26px}
.gp-title-main,.art-title{font-size:clamp(1.18rem,1.45vw,1.48rem);text-align:center;line-height:1.1}
.gp-subtitle,.art-subtitle{text-align:center;color:var(--gp-muted)}
.gp-guide,.art-guide{margin:18px auto 0;padding:18px;border-radius:18px;border:1px solid var(--gp-border);background:rgba(244,234,215,.7)}
.gp-hero-img,.art-image{display:block;margin:20px auto 0;border-radius:18px;box-shadow:var(--gp-shadow-soft)}
.gp-video,.art-video{margin-top:20px;border-radius:18px;overflow:hidden;background:#000}
.gp-video iframe,.art-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.gp-acc{margin:16px 0;overflow:hidden}
.gp-sum{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:18px 20px;cursor:pointer;list-style:none}
.gp-sum::-webkit-details-marker{display:none}
.gp-sum__title{font-weight:700;color:var(--gp-title)}
.gp-sum__hint{display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:rgba(156,111,61,.18);border:1px solid var(--gp-border)}
.gp-content{padding:0 20px 20px;border-top:1px solid rgba(183,146,99,.65)}
.art-note,.gp-note{text-align:center;margin-top:18px}

/* responsive */

/* Thème dynamique */
.titre-articles,
.hero-blog-intro,
.formwrapper,
.gp-card,
.messages-wide,
.article-meta-box,
.article-community-box,
.article-posters,
.article-video-block,
.comments-section,
.gp-local-section,
.gp-local-card,
.article-rich-content,
.blocarticle,
.profile-card-extended,
.profile-section-box,
.auth-card,
.my-article-card,
.gp-local-titlebox,
.my-articles-head{
  background:linear-gradient(180deg,var(--gp-article-bg),var(--gp-article-bg));
  border-color:var(--gp-article-border);
  color:var(--gp-article-text);
  border-radius:var(--gp-radius, 24px);
}

.titre-articles h1,.titre-articles h2,.hero-blog-intro__title,.article-rich-header h1,.article-rich-subtitle,
.article-rich-content h1,.article-rich-content h2,.article-rich-content h3,.article-rich-content h4,
.blocarticle h1,.blocarticle h2,.blocarticle h3,.blocarticle h4,
.comments-section h2,.article-community-box__title,.article-meta-box h2,.gp-local-titlebox h1,.my-articles-head h1{
  color:var(--gp-article-title);
}

.card-article{
  background:linear-gradient(180deg,var(--gp-vignette-bg),var(--gp-vignette-bg));
  border-color:var(--gp-vignette-border);
  color:var(--gp-vignette-text);
  border-radius:var(--gp-radius, 24px);
}
.card-article h2,.card-article h3,.card-article__title a,.card-article__meta,.card-article__excerpt{color:var(--gp-vignette-text)}
.card-article__thumb-link,.card-article__thumb,.my-article-thumb{border-color:var(--gp-vignette-border)}
.card-article__thumb-link,.card-article__thumb{border-radius:var(--gp-radius-soft, 18px)}

.bouton1,.bouton-form,.header-mini-btn,.nav-auth-btn,.gp-btn,.gp-local-related__btn,.gp-local-link,.my-article-pill,.tag-pill,.article-edit-btn,.share-mini,.social-btn{
  border-color:var(--gp-nav-border, var(--gp-border-strong));
}

.blog-footer{background:var(--gp-footer)}
.blog-footer__link{color:var(--gp-footer-text);border-color:rgba(255,255,255,.32)}
.blog-footer__sep{color:var(--gp-footer-text)}


body.page-tags main.tags-page{padding-top:34px;padding-bottom:56px;align-content:start}
body.page-tags .tags-wrap{gap:28px}
body.page-tags .tags-head{width:min(560px,100%);margin:0 auto}
body.page-tags .blog-footer{margin-top:auto}

.flash-popup{
  position:fixed;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(31,26,20,.28);
  backdrop-filter:blur(2px);
  z-index:9999;
  animation:flashPopupFadeIn .22s ease-out;
}
.flash-popup__box{
  position:relative;
  width:min(92vw,720px);
  padding:22px 54px 22px 22px;
  border-radius:22px;
  border:1px solid var(--gp-border);
  background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));
  box-shadow:0 18px 46px rgba(31,26,20,.22);
  color:var(--gp-text);
  text-align:left;
  font-size:1.08rem;
  line-height:1.6;
}
.flash-popup--success .flash-popup__box{border-left:6px solid #6c8b4f}
.flash-popup--error .flash-popup__box{border-left:6px solid #a34a3a}
.flash-popup__content{font-weight:700}
.flash-popup__close{
  position:absolute;top:10px;right:12px;width:34px;height:34px;border:none;border-radius:999px;
  background:rgba(184,168,126,.16);color:var(--gp-text);font-size:24px;line-height:1;cursor:pointer;
}
.flash-popup__close:hover{background:rgba(184,168,126,.30)}
.flash-popup.is-hiding{animation:flashPopupFadeOut .22s ease-in forwards}
@keyframes flashPopupFadeIn{from{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}
@keyframes flashPopupFadeOut{from{opacity:1}to{opacity:0}}

/* Éditeur d’article : tags compacts */
.article-tag-picker{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:flex-start;
}

.article-tag-option{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0;
  padding:4px 8px;
  min-height:28px;
  border:1px solid rgba(183,146,99,.55);
  border-radius:999px;
  background:rgba(244,234,215,.92);
  font-size:.82rem;
  font-weight:400;
  line-height:1;
  box-shadow:none;
  cursor:pointer;
}

.article-tag-option input{
  width:13px;
  height:13px;
  margin:0;
  flex:0 0 auto;
  accent-color:#9c6f3d;
}

.article-tag-option span{
  display:inline-block;
  white-space:nowrap;
  line-height:1;
}


.article-rich-header h1,.article-rich-subtitle,.raw-article-heading{border-color:var(--gp-article-border)}
.article-construction-hero{
  display:flex;
  justify-content:center;
  align-items:center;
  margin:18px auto;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.article-construction-hero .titre-articles{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  margin:0;
  padding:12px 22px;
  border:1px solid var(--gp-border-strong);
  border-radius:18px;
  background:rgba(255,250,240,.82);
  box-shadow:var(--gp-shadow-soft);
  color:var(--gp-title);
  font-size:clamp(1.35rem,2vw,1.9rem);
  line-height:1.1;
  text-align:center;
}
.article-page > .blocarticle{
  background:linear-gradient(
    180deg,
    color-mix(in srgb, var(--gp-article-bg) 40%, transparent),
    color-mix(in srgb, var(--gp-article-bg) 40%, transparent)
  ) !important;
  border:1px solid color-mix(in srgb, var(--gp-article-border) 55%, transparent) !important;
  box-shadow:var(--gp-shadow) !important;
  padding:18px 12px !important;
}

.article-page > .blocarticle .article-rich-content,
.article-page > .blocarticle .article-rendered{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

.article-page > .blocarticle .article-reading-panel{
  background:linear-gradient(180deg,var(--gp-article-bg),var(--gp-article-bg)) !important;
  border:1px solid var(--gp-article-border) !important;
  box-shadow:var(--gp-shadow-soft) !important;
}
.article-rendered,.article-html-content,.raw-article-render,.article-meta-date{color:var(--gp-article-text)}
.article-rich-header h1,.article-rich-subtitle,.raw-article-heading,.article-rich-content h1,.article-rich-content h2,.article-rich-content h3,.article-rich-content h4{color:var(--gp-article-title)}
.article-rich-content p,.article-rich-content li,.raw-article-render li,.article-meta-date{font-family:var(--gp-article-text-font-family)}


.article-related-links{display:grid;gap:10px;padding:18px 20px;border:1px solid var(--gp-article-border);border-radius:22px;background:var(--gp-article-bg);box-shadow:var(--gp-shadow-soft)}
.article-related-links h2{margin:0 0 4px}
.article-related-links__list{display:flex;flex-wrap:wrap;gap:10px}
.article-related-links__list a{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:1px solid var(--gp-article-border);text-decoration:none;background:rgba(255,255,255,.35)}
.article-related-links__list a:hover{background:rgba(255,255,255,.58)}

.article-downloads-block{margin:22px 0;padding:18px;border:1px solid var(--gp-article-border, rgba(120,90,60,.25));border-radius:18px;background:linear-gradient(180deg,var(--gp-article-bg),var(--gp-article-bg));box-shadow:var(--gp-shadow-soft)}
.article-downloads-block__title{margin:0 0 12px;font-size:1.15rem}
.article-downloads-block__list{display:grid;gap:10px}
.article-downloads-block__item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--gp-article-border, rgba(120,90,60,.25));border-radius:14px;background:color-mix(in srgb, var(--gp-article-bg) 88%, white 12%);flex-wrap:wrap}
.article-downloads-block__name{font-weight:700;word-break:break-word}
.article-downloads-block__button{white-space:nowrap}

.article-author-card__text{display:grid;gap:2px;line-height:1.2}
.article-author-card__text strong,.article-author-card__text small{color:var(--gp-article-text)}


/* Ajustement final du carrousel article */
.article-carousel__viewport{
  position:relative;
  overflow:hidden;
  width:min(100%,700px);
  max-width:700px;
  height:450px;
  min-height:450px;
  padding:18px 56px;
}
.article-carousel__slide{
  width:100%;
  height:100%;
  justify-content:center;
  align-items:center;
}
.article-carousel__slide img{
  width:auto !important;
  height:auto !important;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.article-carousel__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  padding:0;
  border-radius:12px;
  border:1px solid var(--gp-article-border);
  background:linear-gradient(180deg,var(--gp-article-bg),color-mix(in srgb, var(--gp-article-bg) 82%, white 18%));
  color:var(--gp-article-title);
  box-shadow:var(--gp-shadow-soft);
}
.article-carousel__btn--prev{left:14px;}
.article-carousel__btn--next{right:14px;}
.article-carousel__btn:hover{
  background:var(--gp-btn-hover);
  color:var(--gp-btn-hover-text);
}

.article-image-zoomable{
  cursor:zoom-in;
}
.article-image-zoomable:focus-visible{
  outline:3px solid var(--gp-btn-end);
  outline-offset:4px;
}
.article-image-viewer{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  background:rgba(0,0,0,.92);
  color:#fff;
}
.article-image-viewer.is-open{
  display:grid;
  grid-template-rows:auto 1fr;
}
.article-image-viewer-open{
  overflow:hidden;
}
.article-image-viewer__toolbar{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  padding:12px;
  background:rgba(0,0,0,.55);
  flex-wrap:wrap;
}
.article-image-viewer__toolbar button{
  min-width:44px;
  min-height:44px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.45);
  border-radius:10px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:1rem;
  font-weight:700;
  cursor:pointer;
}
.article-image-viewer__toolbar button:hover,
.article-image-viewer__toolbar button:focus-visible{
  background:rgba(255,255,255,.24);
}
.article-image-viewer__stage{
  overflow:auto;
  padding:18px;
  text-align:center;
  overscroll-behavior:contain;
  cursor:grab;
  touch-action:none;
}
.article-image-viewer__stage.is-dragging{cursor:grabbing}
.article-image-viewer__stage img{
  display:block;
  max-width:none;
  max-height:none;
  width:auto;
  height:auto;
  margin:0 auto;
  transition:width .12s ease, height .12s ease;
  cursor:grab;
  touch-action:none;
  user-select:none;
  -webkit-user-drag:none;
  border-radius:8px;
  box-shadow:0 18px 60px rgba(0,0,0,.45);
}
.article-image-viewer__stage.is-dragging img{cursor:grabbing}
.article-image-viewer__nav-button{
  min-width:54px;
}
.article-image-viewer__nav-button:disabled{
  opacity:.38;
  cursor:not-allowed;
}
.article-image-viewer__side{
  position:fixed;
  top:50%;
  z-index:10001;
  width:56px;
  height:72px;
  border:1px solid rgba(255,255,255,.5);
  border-radius:14px;
  background:rgba(0,0,0,.48);
  color:#fff;
  font-size:3rem;
  line-height:1;
  cursor:pointer;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
}
.article-image-viewer__side--prev{left:14px}
.article-image-viewer__side--next{right:14px}
.article-image-viewer__side:hover,
.article-image-viewer__side:focus-visible{background:rgba(255,255,255,.22)}
.article-image-viewer__side:disabled{display:none}



/* Responsive consolidé */
@media (max-width:1400px){
  main.blog-home-page{width:min(70vw,calc(100% - 28px))}
  main.article-page{width:min(78vw,calc(100% - 28px))}
  main.gp-local-page,
  main.messages-page,
  main.my-articles-page,
  main.gp-page,
  main.tags-page{width:min(82vw,calc(100% - 28px))}
  .my-article-card{grid-template-columns:1fr}
  .my-article-left{width:100%}
  .my-article-thumb{width:100%;height:auto;max-height:280px}
}

@media (max-width:980px){
  :root{
    --gp-max:1200px;
    --gp-radius:24px;
    --gp-radius-soft:18px;
    --gp-vignette-width:100%;
    --gp-vignette-height:160px;
    --gp-vignette-gap:8px;
    --gp-vignette-padding:8px;
    --gp-card-article-height:auto;
  }
  .hero-blog-intro{display:block;width:100%;max-width:none}
  .card-article{
    grid-template-columns:1fr;
    row-gap:var(--gp-vignette-gap);
    height:auto;
    min-height:0;
    max-height:none;
    padding:var(--gp-vignette-padding);
    align-items:start;
  }
  .card-article__thumb-link{
    inline-size:100%;
    min-inline-size:0;
    max-inline-size:none;
    block-size:var(--gp-vignette-height);
    min-block-size:var(--gp-vignette-height);
    max-block-size:var(--gp-vignette-height);
  }
  .card-article__thumb{width:100%;height:100%}
  .card-article__content{height:auto;grid-template-rows:auto minmax(0,1fr) auto}
  .card-article__meta-row{gap:8px 10px;align-items:flex-end}
  .card-article__meta{min-width:0;flex:1 1 260px}
  .card-article__collectif{max-width:min(30ch,100%)}
  .card-article__reactions{margin-left:auto}
  .my-article-card{grid-template-columns:1fr}
  .my-article-thumb{width:100%;height:220px}
}

@media (max-width:900px){
  .article-carousel__viewport{width:100%;max-width:700px;height:400px;min-height:400px;padding:16px 52px}
  .article-carousel__btn--prev{left:10px}
  .article-carousel__btn--next{right:10px}
}

@media (max-width:900px){
  .messages-users-topline{grid-template-columns:1fr}
}

/* Tablettes tenues verticalement : largeur complète et éléments réorganisés. */
@media (orientation:portrait) and (min-width:761px) and (max-width:1024px){
  main,
  main.blog-home-page,
  main.article-page,
  main.gp-local-page,
  main.messages-page,
  main.my-articles-page,
  main.gp-page,
  main.tags-page{
    width:min(var(--gp-max),calc(100% - 24px));
  }
  .header-inline-wrap,
  .navbouton{
    width:calc(100% - 24px);
  }
  .header-inline-wrap{
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
  }
  .navbouton{
    justify-content:center;
    flex-wrap:wrap;
  }
  .formwrapper,
  .gp-card,
  .messages-wide,
  .blocarticle,
  .article-carousel,
  .article-video-block,
  .article-meta-box,
  .article-community-box,
  .comments-section,
  .profile-card-extended,
  .profile-section-box{
    max-width:100%;
  }
  .search-box.search-box--open,
  .search-box.search-box--filled,
  .search-box:focus-within{
    width:min(320px,100%);
    max-width:min(320px,100%);
  }
}

@media (max-width:760px){
  .bouton1,.bouton-form,.gp-btn,.gp-local-related__btn,.gp-local-link,.my-article-pill,.tag-pill,.article-edit-btn,.share-mini,.social-btn{font-size:clamp(.78rem,2.5vw,.92rem);padding:8px 12px;min-height:38px}
  main,main.blog-home-page,main.article-page,main.gp-local-page,main.messages-page,main.my-articles-page,main.gp-page,main.tags-page{width:min(var(--gp-max),calc(100% - 18px))}
  .formwrapper,.gp-card,.messages-wide,.blocarticle,.article-carousel,.article-video-block,.article-meta-box,.article-community-box,.comments-section,.profile-card-extended,.profile-section-box{padding:18px}
  .article-posters{padding:0}
  .article-reading-panel{padding:22px 16px}
  .navbouton,.header-inline-wrap{width:min(1400px,calc(100% - 18px))}
  .search-box{width:46px;min-width:46px;max-width:46px;margin-left:auto}
  .search-box.search-box--open,
  .search-box.search-box--filled,
  .search-box:focus-within{width:min(100%,280px);max-width:min(100%,280px);margin-left:0}
  .titre-articles,.hero-blog-intro{padding:12px 16px}
  .hero-blog-intro__title{font-size:clamp(1.24rem,5.4vw,1.56rem)}
  .card-article__title{font-size:clamp(1rem,4.1vw,1.18rem)}
  .card-article{height:auto;min-height:0;max-height:none}
  .card-article__thumb-link{block-size:135px;min-block-size:135px;max-block-size:135px}
  .card-article__thumb{width:100%;height:100%}
  .card-article__meta{flex:1 1 100%;width:100%}
  .card-article__collectif{max-width:100%}
  .card-article__tags{flex:1 1 auto}
  .card-article__reactions{margin-left:auto}
  .messages-thread{max-height:52vh}
  .message-bubble{max-width:100%}
  .article-carousel__viewport{width:100%;height:260px;min-height:260px;padding:14px 44px}
  .article-carousel__slide{min-height:150px}
  .article-carousel__btn{width:36px;height:36px;border-radius:10px}
  .article-carousel__btn--prev{left:8px}
  .article-carousel__btn--next{right:8px}
  .article-tag-picker{gap:5px}
  .article-tag-option{padding:4px 7px;min-height:26px;font-size:.78rem}
  .profile-quick-actions{justify-content:center;margin-bottom:12px}
  .profile-logout-btn{margin-left:0}
  .article-community-box__form{align-items:stretch}
  .article-community-box__form textarea{height:42px;min-height:42px}
  .comment-meta-row{align-items:flex-start}
}

/* Correctif structure public : accueil, tags, messages, mes articles, profil */
body.page-site-home main.site-home-page{
  width:min(760px, calc(100% - 28px));
  max-width:760px;
  margin:0 auto;
  display:grid;
  place-items:center;
  padding:22px 0 34px;
}
body.page-tags main.tags-page,
body.page-messages main.messages-page,
body.page-my-articles main.my-articles-page{
  width:min(1100px, calc(100% - 28px));
  max-width:1100px;
  margin:0 auto;
}
body.page-profile main,
body.page-profile-public main,
body.page-profile-edit main{
  width:min(980px, calc(100% - 28px));
  max-width:980px;
  margin:0 auto;
}
body.page-profile .formwrapper.profile-card-extended{width:100%;}
body.page-messages .messages-thread img,
body.page-messages .message-bubble img{max-width:100%;height:auto;border-radius:14px;}
@media (max-width:760px){
  body.page-site-home main.site-home-page,
  body.page-tags main.tags-page,
  body.page-messages main.messages-page,
  body.page-my-articles main.my-articles-page,
  body.page-profile main,
  body.page-profile-public main,
  body.page-profile-edit main{width:min(100%, calc(100% - 18px));}
}

/* Accueil administrable : carrousel promotionnel */
main.site-home-page{
  width:min(780px, calc(100% - 28px));
  padding:18px 0 30px;
}
.home-carousel-shell{
  width:min(712px, 100%);
  margin:0 auto;
  padding:6px;
  border:1px solid var(--home-carousel-border, var(--gp-border));
  border-radius:var(--home-carousel-radius, 24px);
  background:var(--home-carousel-bg, var(--gp-surface));
  box-shadow:var(--gp-shadow);
  display:grid;
  gap:6px;
  justify-items:center;
}
.home-carousel-title{
  margin:0;
  text-align:center;
  color:var(--gp-title);
  font-family:var(--gp-heading-font-family);
  font-size:calc(clamp(1.35rem, 2.4vw, 2.05rem) * var(--gp-heading-scale, 1));
}
.home-carousel{
  width:min(700px, 100%);
}
.home-carousel__viewport{
  position:relative;
  width:100%;
  aspect-ratio:16 / 9;
  height:auto;
  overflow:hidden;
  border-radius:calc(var(--home-carousel-radius, 24px) - 6px);
  background:rgba(0,0,0,.08);
}
.home-carousel__slide{
  position:absolute;
  inset:0;
  margin:0;
  opacity:0;
  visibility:hidden;
  transition:opacity .75s ease, visibility .75s ease;
  display:flex;
  align-items:center;
  justify-content:center;
}
.home-carousel__slide.is-active{
  opacity:1;
  visibility:visible;
  z-index:1;
}
.home-carousel__slide img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  border-radius:calc(var(--home-carousel-radius, 24px) - 10px);
  object-fit:fill;
}
.home-carousel__dots{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-top:6px;
}
.home-carousel__dot{
  width:12px;
  height:12px;
  padding:0;
  border:1px solid var(--home-carousel-border, var(--gp-border));
  border-radius:999px;
  background:rgba(255,255,255,.58);
  cursor:pointer;
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.home-carousel__dot:hover,
.home-carousel__dot:focus-visible{
  transform:scale(1.16);
  outline:none;
  box-shadow:0 0 0 3px rgba(0,0,0,.08);
}
.home-carousel__dot.is-active{
  background:var(--home-carousel-border, var(--gp-border));
  transform:scale(1.24);
}
.home-carousel__empty{
  width:min(700px, 100%);
  min-height:220px;
  display:grid;
  place-items:center;
  padding:24px;
  border:1px dashed var(--gp-border);
  border-radius:calc(var(--home-carousel-radius, 24px) - 6px);
  text-align:center;
  color:var(--gp-muted);
  background:rgba(255,255,255,.18);
}
.home-carousel__empty p{margin:0}
@media (max-width:760px){
  main.site-home-page{width:min(100%, calc(100% - 18px));padding:14px 0 24px}
  .home-carousel-shell{padding:5px;border-radius:18px}
  .home-carousel__viewport{aspect-ratio:16 / 9;height:auto;min-height:0;border-radius:14px}
}

/* Vidéothèque YouTube */
/* EntrElfes : annonces de troc et d'echange */
.entreelfes-page{width:min(1120px,calc(100% - 28px));margin:0 auto;padding:24px 0 48px}
.entreelfes-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.entreelfes-hero h1{margin:0}.entreelfes-hero p{margin:8px 0 0}
.entreelfes-search{margin:18px 0;padding:18px}.entreelfes-search form{display:grid;grid-template-columns:1.1fr .65fr 1.2fr auto;gap:12px;align-items:end}.entreelfes-search label,.entreelfes-form label{display:grid;gap:6px;font-weight:700}.entreelfes-search input,.entreelfes-search select,.entreelfes-form input,.entreelfes-form select,.entreelfes-form textarea{width:100%;padding:11px 12px;border:1px solid var(--gp-border);border-radius:12px;background:var(--gp-surface);color:var(--gp-text);font:inherit}.entreelfes-search-info{margin:13px 0 0}.entreelfes-alert{color:#8b2f24;font-weight:700}
.entreelfes-results__title{display:flex;align-items:center;justify-content:space-between;gap:12px}.entreelfes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entreelfes-card{overflow:hidden;border:1px solid var(--gp-border);border-radius:20px;background:var(--gp-surface);box-shadow:var(--gp-shadow)}.entreelfes-card__image{display:grid;place-items:center;aspect-ratio:4/3;background:rgba(0,0,0,.08);color:var(--gp-title);font-size:1.3rem;font-weight:700}.entreelfes-card__image img{width:100%;height:100%;object-fit:cover}.entreelfes-card__body{padding:16px}.entreelfes-card__body h3{margin:10px 0 7px}.entreelfes-card__body h3 a{color:var(--gp-title);text-decoration:none}.entreelfes-card__body p{margin:7px 0}.entreelfes-card__body time{display:block;margin-top:12px;color:var(--gp-muted);font-size:.9rem}.entreelfes-category{display:inline-flex;padding:5px 10px;border-radius:999px;background:rgba(111,139,74,.16);border:1px solid rgba(111,139,74,.5);font-size:.88rem;font-weight:700}.entreelfes-location{font-weight:700;color:var(--gp-title)}.entreelfes-empty{padding:24px;text-align:center}
.entreelfes-form-card,.entreelfes-detail{padding:24px}.entreelfes-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.entreelfes-form__full,.entreelfes-form__actions{grid-column:1/-1}.entreelfes-form__actions,.entreelfes-owner-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.entreelfes-edit-images__title{margin:0 0 4px}.entreelfes-edit-images__help{margin:0 0 12px}.entreelfes-edit-images{display:flex;gap:12px;flex-wrap:wrap}.entreelfes-edit-image{display:grid;gap:10px;width:160px;padding:10px;border:1px solid var(--gp-border);border-radius:14px;background:rgba(255,255,255,.2)}.entreelfes-edit-image__order{width:100%}.entreelfes-edit-image__remove{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;justify-content:start;gap:7px!important}.entreelfes-edit-image__remove input{width:auto}.entreelfes-detail__top,.entreelfes-author{display:flex;align-items:center;justify-content:space-between;gap:18px}.entreelfes-detail h1{margin:10px 0}.entreelfes-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0}.entreelfes-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}.entreelfes-description{margin:22px 0;padding:20px;border-radius:16px;background:rgba(255,255,255,.25);white-space:normal}.entreelfes-author{padding-top:18px;border-top:1px solid var(--gp-border)}.entreelfes-author__profile{color:var(--gp-title);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.entreelfes-author__profile:hover{color:var(--gp-link-hover)}.entreelfes-owner-actions{margin-top:16px}
.entreelfes-author__profile:hover{color:var(--gp-btn-hover-start)}
.entreelfes-card__image img{width:auto;height:auto;max-width:100%;max-height:350px;object-fit:contain}
.entreelfes-gallery a{display:flex;align-items:center;justify-content:center;min-width:0}
.entreelfes-gallery img{width:auto;height:auto;max-width:100%;max-height:350px;aspect-ratio:auto;object-fit:contain}
.entreelfes-edit-images img{display:block;width:auto;height:auto;max-width:140px;max-height:105px;margin:auto;object-fit:contain;border-radius:12px}
.nle-auth-popup[hidden]{display:none!important}.nle-auth-popup{position:fixed;z-index:100000;inset:0;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.62)}.nle-auth-popup__window{position:relative;width:min(620px,100%);height:min(720px,calc(100vh - 36px));overflow:hidden;border:2px solid var(--gp-border-strong,#000);border-radius:22px;background:var(--gp-surface,#fff);box-shadow:0 24px 70px rgba(0,0,0,.45)}.nle-auth-popup__frame{display:block;width:100%;height:100%;border:0;background:transparent}.nle-auth-popup__close{position:absolute;z-index:2;top:10px;right:12px;width:42px;height:42px;border:1px solid var(--gp-border-strong,#000);border-radius:50%;background:var(--gp-btn-start,#b9ff00);color:var(--gp-btn-text,#000);font:700 1.7rem/1 Georgia,serif;cursor:pointer}.nle-auth-popup-open{overflow:hidden}.auth-popup-trigger{display:inline-flex;margin-top:8px}
.profile-push-settings{grid-column:1/-1}.profile-push-settings__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.profile-push-settings__actions [data-push-status]{font-weight:700}.profile-push-settings__actions [data-push-status].is-error{color:#8b2f24}
@media(max-width:680px){.nle-auth-popup{padding:8px}.nle-auth-popup__window{height:calc(100vh - 16px);border-radius:16px}}
.entreelfes-detail__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);gap:28px;align-items:stretch}
.entreelfes-detail__layout--no-images{grid-template-columns:1fr}
.entreelfes-detail__content{min-width:0;display:flex;flex-direction:column}
.entreelfes-detail__top{align-items:flex-start}
.entreelfes-detail__top .bouton1{flex:0 0 auto}
.entreelfes-detail__content .entreelfes-description{flex:1;max-height:250px;margin-bottom:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;word-break:break-word}
.entreelfes-carousel{min-width:0;align-self:center}
.entreelfes-carousel__viewport{position:relative;display:grid;place-items:center;width:100%;height:390px;overflow:hidden;border:1px solid var(--gp-border);border-radius:18px;background:rgba(0,0,0,.08)}
.entreelfes-carousel__slide{display:none;width:100%;height:100%;align-items:center;justify-content:center;padding:18px;text-decoration:none}
.entreelfes-carousel__slide.is-active{display:flex}
.entreelfes-carousel__slide img{display:block;width:auto;height:auto;max-width:100%;max-height:350px;object-fit:contain;border-radius:14px}
.entreelfes-carousel__button{position:absolute;top:50%;z-index:2;width:42px;height:42px;display:grid;place-items:center;transform:translateY(-50%);border:1px solid var(--gp-border-strong);border-radius:50%;background:var(--gp-btn);color:var(--gp-btn-text);font-size:1.8rem;line-height:1;cursor:pointer;box-shadow:var(--gp-shadow-soft)}
.entreelfes-carousel__button:hover{background:var(--gp-btn-hover);color:var(--gp-btn-hover-text)}
.entreelfes-carousel__button--prev{left:12px}
.entreelfes-carousel__button--next{right:12px}
.entreelfes-carousel__dots{display:flex;justify-content:center;gap:8px;min-height:14px;margin-top:10px}
.entreelfes-carousel__dot{width:11px;height:11px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.28);cursor:pointer}
.entreelfes-carousel__dot.is-active{background:var(--gp-btn-end)}
.entreelfes-detail__footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding-top:18px;border-top:1px solid var(--gp-border)}
.entreelfes-detail__footer>span{min-width:0;white-space:nowrap}
.entreelfes-detail__actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto;white-space:nowrap}
.entreelfes-detail__actions form{display:inline-flex;margin:0}
@media(max-width:860px){.entreelfes-search form{grid-template-columns:1fr 1fr}.entreelfes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.entreelfes-detail__layout{grid-template-columns:1fr}.entreelfes-carousel{width:100%}.entreelfes-detail__footer{align-items:flex-start;flex-wrap:wrap}.entreelfes-detail__footer>span{white-space:normal}}
@media(max-width:620px){.entreelfes-page{width:min(100%,calc(100% - 18px));padding-top:14px}.entreelfes-hero,.entreelfes-detail__top,.entreelfes-author{align-items:stretch;flex-direction:column}.entreelfes-search form,.entreelfes-form{grid-template-columns:1fr}.entreelfes-grid,.entreelfes-gallery{grid-template-columns:1fr}.entreelfes-form__full,.entreelfes-form__actions{grid-column:auto}.entreelfes-carousel__viewport{height:300px}.entreelfes-carousel__slide{padding:12px 48px}.entreelfes-carousel__slide img{max-height:276px}.entreelfes-detail__actions{width:100%;justify-content:flex-start;flex-wrap:wrap;white-space:normal}}

.mediatek-page{
  width:min(1000px, calc(100% - 28px));
  margin:0 auto;
  padding:30px 0 48px;
}
.mediatek-hero{
  display:grid;
  justify-items:center;
  gap:clamp(18px, 2.8vw, 30px);
  padding:clamp(22px, 4vw, 34px);
  text-align:center;
  overflow:hidden;
}
.mediatek-title-image{
  width:min(920px, 100%);
  margin:0 auto;
}
.mediatek-title-image img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 10px 18px rgba(50,32,16,.16));
}
.mediatek-intro{
  max-width:760px;
  margin:0 auto;
  padding:12px 18px;
  border-top:1px solid rgba(183,146,99,.42);
  color:var(--gp-text);
  line-height:1.62;
}
.mediatek-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:clamp(18px, 2.8vw, 30px);
  width:min(920px, 100%);
  margin:0;
  align-items:stretch;
}
.mediatek-link{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:clamp(270px, 26vw, 360px);
  padding:clamp(12px, 1.6vw, 18px);
  border-radius:20px;
  overflow:hidden;
  background:rgba(239,227,207,.42);
  border:1px solid rgba(183,146,99,.82);
  box-shadow:0 12px 26px rgba(50,32,16,.18);
  text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.mediatek-link img{
  display:block;
  width:auto;
  height:100%;
  max-width:100%;
  max-height:100%;
  border-radius:12px;
  object-fit:contain;
  box-shadow:0 10px 22px rgba(50,32,16,.22);
}
.mediatek-link:hover{
  transform:translateY(-3px);
  border-color:var(--gp-border-strong);
  box-shadow:0 18px 34px rgba(50,32,16,.24);
}
.actutek-hero{
  display:grid;
  gap:12px;
  text-align:left;
}
.actutek-hero-row{
  display:grid;
  grid-template-columns:minmax(180px, 300px) minmax(0, 1fr);
  gap:22px;
  align-items:start;
}
.actutek-hero-row h1{
  margin:0;
  justify-self:start;
  font-size:clamp(2rem, 4vw, 3.15rem);
  line-height:1;
}
.actutek-navbar{
  display:block;
  min-width:0;
  padding-top:0;
  border-top:0;
}
.actutek-tags-nav{
  display:flex;
  flex:1 1 auto;
  width:auto;
  margin:0;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:8px;
  min-width:0;
  max-height:92px;
  overflow-x:hidden;
  overflow-y:auto;
  padding:2px 2px 8px;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.actutek-tags-nav .bouton1{
  flex:0 0 auto;
  min-height:38px;
  padding:8px 13px;
  white-space:nowrap;
}
.actutek-search{
  flex:0 0 46px;
  width:46px;
  min-width:46px;
  max-width:46px;
  margin:0;
}
.actutek-search.search-box--open,
.actutek-search.search-box--filled,
.actutek-search:focus-within{
  flex:0 0 310px;
  width:310px;
  max-width:310px;
}
.actutek-search input[type="search"]{
  max-width:230px;
}
@media (max-width:760px){
  .mediatek-page{
    width:min(100%, calc(100% - 16px));
    padding-top:14px;
  }
  .mediatek-hero{
    padding:18px 14px;
  }
  .mediatek-title-image{
    width:min(620px, 100%);
  }
  .mediatek-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    width:min(620px, 100%);
  }
  .mediatek-link{
    min-height:clamp(240px, 52vw, 330px);
  }
  .actutek-hero-row{
    grid-template-columns:1fr;
    gap:10px;
    text-align:center;
  }
  .actutek-hero-row h1{
    justify-self:center;
  }
  .actutek-navbar{
    display:block;
  }
  .actutek-tags-nav{
    justify-content:center;
  }
  .actutek-search{
    flex:0 0 46px;
    width:46px;
    max-width:46px;
  }
  .actutek-search.search-box--open,
  .actutek-search.search-box--filled,
  .actutek-search:focus-within{
    flex:1 1 260px;
    width:min(100%, 310px);
    max-width:100%;
  }
  .actutek-search input[type="search"]{
    max-width:100%;
  }
}
@media (max-width:460px){
  .mediatek-grid{
    grid-template-columns:1fr;
    width:min(320px, 100%);
  }
  .mediatek-link{
    min-height:clamp(260px, 78vw, 380px);
  }
  .mediatek-title-image{
    width:min(320px, 100%);
  }
}

/* Elfes & Co */
.collectifs-page,.collectif-page{
  --collectif-zone-gap:12px;
  width:min(1120px, calc(100% - 28px));
  margin:0 auto;
  padding:28px 0 46px;
}
.collectif-page{
  row-gap:var(--collectif-zone-gap);
}
.collectif-page .collectif-article .article-rich-content,
.collectif-page .blog-home-wrap{
  gap:var(--collectif-zone-gap);
}
.collectif-page .collectif-chapters,
.collectif-page .collectif-study-section{
  margin-top:0;
}
.collectif-page .article-posters,
.collectif-page .article-video-block{
  margin-top:0;
  margin-bottom:0;
}
.collectifs-hero,
.gp-card.collectifs-hero{
  text-align:center;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.collectifs-hero-line{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  align-items:center;
  justify-content:center;
}
.collectifs-hero-line .titre-articles{
  margin:0;
  text-decoration:none;
}
.collectifs-hero-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:center;
}
.collectifs-nav-label{
  color:var(--gp-title);
  font-weight:700;
}
.collectifs-category{
  display:grid;
  gap:14px;
}
.collectifs-category__head{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  align-items:center;
  justify-content:space-between;
}
.collectifs-category h2{
  margin:0;
}
.collectifs-count{
  display:inline-block;
  margin-left:6px;
  color:var(--gp-muted);
  font-size:.95rem;
  font-weight:700;
}
.collectifs-list-head .collectifs-count{
  display:inline-flex;
  align-items:center;
  margin:0;
  white-space:nowrap;
}
.collectifs-search{
  display:flex;
  flex-wrap:nowrap;
  gap:8px;
  align-items:center;
  margin:0;
}
.collectifs-search__label{color:var(--gp-title);font-weight:700;white-space:nowrap}
.collectifs-search input[type="search"],
.collectifs-search select{
  width:min(260px,40vw);
  min-height:38px;
  padding:8px 12px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,250,240,.82);
  color:var(--gp-text);
}
.collectifs-local-search-info{
  margin:0;
  color:var(--gp-title);
  font-weight:700;
}
.collectifs-row{
  display:flex;
  align-items:stretch;
  gap:14px;
  overflow-x:auto;
  padding:4px 4px 12px;
  scroll-snap-type:x proximity;
}
.collectif-card{
  display:flex;
  flex-direction:column;
  flex:0 0 clamp(210px, 26vw, 280px);
  scroll-snap-align:start;
  border:1px solid var(--gp-collectif-vignette-border, var(--gp-border));
  border-radius:18px;
  background:var(--gp-collectif-vignette-bg, rgba(231,215,187,.82));
  overflow:hidden;
  box-shadow:var(--gp-shadow-soft);
  min-height:326px;
  height:326px;
}
.collectif-card a{
  display:block;
  color:var(--gp-collectif-vignette-text, var(--gp-title));
  text-decoration:none;
  font-weight:700;
}
.collectif-card img{
  display:block;
  width:100%;
  height:130px;
  object-fit:cover;
  object-position:center top;
  background:rgba(244,234,215,.9);
}
.collectif-card > a > span,.collectif-card p{
  display:block;
  padding:0 12px;
}
.collectif-card > a > span{
  padding-top:10px;
  min-height:48px;
  line-height:1.25;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.collectif-card p{
  margin:0 0 12px;
  color:var(--gp-collectif-vignette-text, var(--gp-muted));
  font-size:.95rem;
  line-height:1.35;
  min-height:calc(1.35em * 4);
  max-height:calc(1.35em * 4);
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
}
.collectif-card__reactions{
  margin-top:auto;
  padding:0 12px 18px;
  justify-content:flex-start;
}
.collectif-card__reactions .card-reaction{
  display:inline-flex;
  width:auto;
}
.collectif-card__reactions .reaction-icon{
  padding:0;
}
.collectifs-create-wrap{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  text-align:center;
}
.collectifs-list-head{
  display:grid;
  gap:10px;
}
.collectifs-list-head .titre-articles{
  margin:0;
}
.collectifs-list-head p{
  margin:8px 0 0;
  color:var(--gp-title);
}
.collectifs-sort{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
  margin:0;
}
.collectifs-sort-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  justify-content:flex-end;
}
.actutek-sort-buttons{
  justify-content:flex-end;
}
.section-title-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px 18px;
  width:100%;
}
.section-title-actions .titre-articles,
.section-title-actions .hero-blog-intro__title{
  margin:0;
}
.section-title-actions--collectifs{
  display:grid;
  grid-template-columns:max-content max-content minmax(220px,1fr);
  align-items:center;
}
.section-title-actions--collectifs-region{
  grid-template-columns:max-content max-content minmax(230px, 340px) minmax(220px,1fr);
}
.collectifs-list-head .section-title-actions .collectifs-count{
  margin:0;
}
.collectifs-region-search{
  justify-content:flex-start;
}
.section-title-actions--collectifs .collectifs-sort-buttons{
  justify-content:flex-end;
}
.section-title-actions--actu{
  display:grid;
  grid-template-columns:auto minmax(220px,1fr);
  align-items:center;
}
@media (max-width:760px){
  .section-title-actions,
  .section-title-actions--collectifs,
  .section-title-actions--actu{
    grid-template-columns:1fr;
    justify-items:center;
    text-align:center;
  }
  .actutek-sort-buttons,
  .section-title-actions--collectifs .collectifs-sort-buttons{
    justify-content:center;
  }
}
.collectifs-sort-buttons .bouton1.is-active{
  outline:2px solid rgba(255,250,240,.95);
  box-shadow:0 0 0 3px rgba(91,58,30,.28);
}
.collectifs-hero-nav .bouton1.is-active{
  background:#000;
  background-image:none;
  color:#ffe866;
  outline:2px solid rgba(255,250,240,.95);
  box-shadow:0 0 0 3px rgba(91,58,30,.28);
}
.collectifs-choice-modal[hidden]{display:none}
.collectifs-choice-modal{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:18px}
.collectifs-choice-modal__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(20,14,8,.66);cursor:pointer}
.collectifs-choice-modal__panel{position:relative;z-index:1;width:min(520px,100%);padding:24px;border:2px solid var(--gp-border-strong);border-radius:20px;background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));box-shadow:0 22px 60px rgba(0,0,0,.4)}
.collectifs-choice-modal__panel--regional{width:min(820px,100%);max-height:min(86vh,760px);overflow:auto}
.collectifs-choice-modal__panel h2{margin:0 44px 18px 0;color:var(--gp-title)}
.collectifs-choice-modal__close{position:absolute;top:10px;right:12px;width:38px;height:38px;border:1px solid var(--gp-border-strong);border-radius:50%;background:var(--gp-btn-start);color:var(--gp-btn-text);font:700 1.5rem/1 Georgia,serif;cursor:pointer}
.collectifs-choice-form{display:grid;gap:10px}
.collectifs-choice-form label{color:var(--gp-title);font-weight:700}
.collectifs-choice-form input,.collectifs-choice-form select{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--gp-border-strong);border-radius:12px;background:rgba(255,255,255,.82);color:#2f1d11;font:inherit}
.collectifs-choice-form .bouton1{justify-self:end;margin-top:8px}
.collectifs-region-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.collectifs-region-buttons .bouton1{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;text-align:left;background:#fff;color:#000}
.collectifs-region-buttons .bouton1 span{min-width:0;overflow-wrap:anywhere}
.collectifs-region-buttons .bouton1 strong{display:grid;place-items:center;flex:0 0 auto;min-width:28px;height:28px;padding:0 7px;border-radius:999px;background:rgba(0,0,0,.18);font-size:.88rem}
.collectifs-region-buttons .bouton1.is-active{background:#000;background-image:none;color:#ffe866}
body.collectifs-choice-modal-open{overflow:hidden}
@media(max-width:720px){.collectifs-region-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:460px){.collectifs-region-buttons{grid-template-columns:1fr}}
.collectifs-sort label{
  font-weight:700;
  color:var(--gp-title);
}
.collectifs-sort select{
  min-height:38px;
  padding:8px 12px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,250,240,.9);
  color:var(--gp-text);
}
.collectifs-list-section{
  display:block;
}
.collectifs-list-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
  gap:14px;
}
.collectifs-list-grid .collectif-card{
  flex:initial;
  min-width:0;
  scroll-snap-align:initial;
}
.collectif-form form,.collectif-chat-form{
  display:grid;
  gap:14px;
}
.collectif-form label{
  display:grid;
  gap:6px;
  font-weight:700;
}
.collectif-form input,.collectif-form textarea,.collectif-form select,
.collectif-chat-form textarea,.collectif-member-row select{
  width:100%;
  border:1px solid var(--gp-border);
  border-radius:14px;
  padding:10px 12px;
  background:rgba(255,250,240,.94);
  color:var(--gp-text);
}
.collectif-chapter-field{
  display:grid;
  gap:10px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  padding:14px;
  background:rgba(244,234,215,.66);
}
.collectif-cover{
  display:block;
  width:auto;
  max-width:100%;
  max-height:430px;
  object-fit:contain;
  border-radius:18px;
  border:1px solid var(--gp-border);
  margin:0 auto 18px;
}
.collectif-top-card{
  --collectif-top-height:220px;
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(0,min(48%,560px));
  gap:22px;
  align-items:start;
  margin-bottom:18px;
  padding:20px;
  border:1px solid var(--gp-border);
  border-radius:18px;
  background:rgba(244,234,215,.74);
  box-shadow:var(--gp-shadow-soft);
}
.collectif-page .collectif-top-card{
  margin-bottom:0;
}
.collectif-top-info{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
  height:var(--collectif-top-height);
  padding-right:8px;
}
.collectif-top-scroll{
  display:grid;
  gap:12px;
  min-height:0;
  overflow:auto;
  padding-right:8px;
}
.collectif-top-scroll p{
  margin:0;
  color:var(--gp-title);
  overflow-wrap:anywhere;
}
.collectif-top-logo{
  justify-self:end;
  width:auto;
  max-width:100%;
  height:var(--collectif-top-height);
  display:grid;
  place-items:center;
  border:0;
  border-radius:26px;
  background:transparent;
  overflow:hidden;
}
.collectif-top-logo img{
  display:block;
  width:100%;
  max-width:100%;
  max-height:100%;
  height:100%;
  object-fit:cover;
  padding:0;
  border-radius:26px;
  border:0;
}
.collectif-top-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:center;
  margin-top:auto;
  flex:0 0 auto;
}
.collectif-admin-panel{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:center;
  text-align:center;
  margin:0 0 18px;
  padding:16px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(244,234,215,.74);
  box-shadow:var(--gp-shadow-soft);
}
.collectif-admin-panel__buttons,.collectif-member-line,.collectif-public-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:center;
}
.collectif-public-actions{
  margin:0 0 18px;
  padding:16px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(244,234,215,.74);
  box-shadow:var(--gp-shadow-soft);
}
.collectif-public-actions form{
  margin:0;
}
.collectif-member-badge{
  color:#000;
}
.collectif-member-error{
  flex:1 0 100%;
  text-align:center;
}
.collectif-members-panel{
  position:relative;
  width:min(520px, calc(100vw - 32px));
  max-height:min(70vh, 520px);
  overflow:auto;
  z-index:2;
  margin:0;
  padding:16px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(244,234,215,.74);
  box-shadow:var(--gp-shadow-soft);
  text-align:center;
}
.collectif-members-modal[hidden]{
  display:none;
}
.collectif-members-modal{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:18px;
}
.collectif-members-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(27,18,10,.42);
}
.collectif-members-close{
  position:absolute;
  top:8px;
  right:10px;
  width:34px;
  height:34px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,250,240,.9);
  color:#000;
  cursor:pointer;
  font-size:1.3rem;
  line-height:1;
}
body.collectif-modal-open{
  overflow:hidden;
}
.collectif-members-panel h2{
  margin:0 0 12px;
  color:var(--gp-title);
  font-size:1.18rem;
}
.collectif-members-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
}
.collectif-member-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:7px 12px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,250,240,.82);
  color:var(--gp-title);
  text-decoration:none;
  font-weight:700;
}
.collectif-member-chip:hover{
  background:rgba(255,250,240,.95);
}
.collectif-member-chip span{
  font-size:.78rem;
  color:#000;
  opacity:.72;
}
.collectif-member-line{
  margin:0 0 18px;
}
.collectif-logo-admin-preview{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  padding:12px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,250,240,.76);
}
.collectif-logo-admin-preview img{
  width:96px;
  height:96px;
  object-fit:contain;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,250,240,.95);
}
.collectif-category-pill,.collectif-member-badge{
  display:inline-flex;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid var(--gp-border);
  background:rgba(156,111,61,.16);
  font-weight:700;
}
.collectif-lead{
  font-size:1.1rem;
  color:var(--gp-title);
}
.collectif-content{
  margin:18px 0;
  line-height:1.72;
}
.collectif-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin:18px 0;
}
.collectif-actions form{
  margin:0;
}
.collectif-chapters{
  display:grid;
  gap:12px;
  margin-top:18px;
}
.collectif-chapter{
  padding:0;
  overflow:hidden;
}
.collectif-chapter summary{
  position:relative;
  cursor:pointer;
  padding:16px 18px;
  font-weight:700;
  color:var(--gp-title);
  list-style:none;
  background:rgba(156,111,61,.12);
}
.collectif-chapter summary::-webkit-details-marker{
  display:none;
}
.collectif-chapter summary::after{
  content:"+";
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  font-weight:700;
}
.collectif-chapter[open] summary::after{
  content:"-";
}
.collectif-chapter summary.collectif-chat-summary{
  padding-right:54px;
  padding-left:54px;
  text-align:center;
  font-size:clamp(1.32rem,2.2vw,1.85rem);
  font-weight:900;
  line-height:1.18;
}
.collectif-chapter > div{
  padding:16px 18px 20px;
}
.collectif-chat-thread{
  display:grid;
  gap:10px;
  max-height:70vh;
  overflow:auto;
  padding:10px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(244,234,215,.96);
}
.collectif-chat-message{
  padding:10px 12px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,250,240,.92);
}
.collectif-chat-message span{
  display:inline-block;
  margin-left:8px;
  color:var(--gp-muted);
  font-size:.88rem;
}
.collectif-chat-message p{
  margin:8px 0;
}
.collectif-editor-page .article-editor-shell{
  max-width:1180px;
}
.collectif-builder-tools{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:14px;
}
.collectif-page-preview{
  display:grid;
  gap:14px;
  margin-top:18px;
  padding:18px;
  border:1px solid var(--gp-border);
  border-radius:18px;
  background:rgba(255,250,240,.74);
}
.collectif-page-preview__head{
  display:grid;
  gap:6px;
  text-align:center;
}
.collectif-page-preview__head strong{
  font-size:1.25rem;
  color:var(--gp-title);
}
.collectif-page-preview__head span{
  color:var(--gp-muted);
}
.collectif-page-preview__content{
  padding:14px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,255,255,.58);
}
.collectif-page-preview__chapters{
  display:grid;
  gap:10px;
}
.collectif-preview-chat{
  border-style:dashed;
}
.collectif-cadre{
  padding:18px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,250,240,.72);
  box-shadow:var(--gp-shadow-soft);
}
.collectif-chapter-media-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.collectif-chapter-media-grid label{
  display:grid;
  gap:6px;
  font-weight:700;
}
.collectif-chapter-media-current{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  color:var(--gp-muted);
  font-size:.92rem;
}
.collectif-chapter-media-current p{
  margin:0;
  padding:7px 10px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,250,240,.72);
}
.collectif-remove-chapter,
.collectif-add-chapter-btn{
  width:max-content;
}
.collectif-chapter-carousel,
.collectif-chapter-posters,
.collectif-chapter-video{
  margin-bottom:16px;
}
.collectif-rich-header{
  margin-bottom:4px;
}
.collectif-chat-message__head,
.collectif-chat-message__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.collectif-chat-message__head span{
  margin-left:0;
}
.collectif-chat-author{
  font-weight:700;
  color:var(--gp-title);
  text-decoration:none;
}
.collectif-chat-author:hover{
  text-decoration:underline;
}
.collectif-chat-bubble-head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 10px;
  color:var(--gp-muted);
  font-size:.88rem;
}
.collectif-chat-bubble-head .collectif-chat-author{
  font-size:.95rem;
}
.collectif-chat-bubble-head .collectif-chat-message__actions{
  margin-top:0;
  margin-left:auto;
}
.message-bubble > p{
  margin:6px 0 0;
}
.collectif-chat-attachment{
  display:grid;
  gap:10px;
  margin-top:10px;
  padding:10px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(244,234,215,.72);
  width:min(320px,100%);
}
.collectif-chat-attachment img,
.collectif-chat-attachment__video{
  display:block;
  width:min(280px,100%);
  max-height:210px;
  object-fit:contain;
  border-radius:12px;
  border:1px solid var(--gp-border);
  background:rgba(255,250,240,.92);
}
.collectif-chat-attachment__name{
  font-weight:700;
  text-decoration:none;
  color:var(--gp-title);
  overflow-wrap:anywhere;
}
.collectif-chat-attachment__actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.collectif-chat-attachment__actions a,
.collectif-chat-attachment__actions button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid var(--gp-border);
  background:rgba(255,250,240,.72);
  color:var(--gp-title);
  font-weight:700;
  text-decoration:none;
  cursor:pointer;
  font:inherit;
}
.collectif-chat-message__actions{
  margin-top:8px;
}
.collectif-chat-message__actions form{
  margin:0;
}
.collectif-chat-delete{
  border:0;
  background:transparent;
  color:var(--gp-muted);
  text-decoration:underline;
  cursor:pointer;
  font:inherit;
  padding:0;
}
.collectif-chat-delete:hover{
  color:var(--gp-title);
}
.collectif-chat-delete-link{
  border:0;
  background:transparent;
  color:var(--gp-muted);
  cursor:pointer;
  font:inherit;
  padding:0;
  text-decoration:underline;
  text-underline-offset:2px;
}
.collectif-chat-delete-link:hover{
  color:var(--gp-title);
}
.collectif-chat-form textarea{
  min-height:54px;
  resize:vertical;
}
.collectif-chat-form input[type="file"]{
  width:100%;
  border:1px solid var(--gp-border);
  border-radius:14px;
  padding:10px 12px;
  background:rgba(255,250,240,.92);
}
.collectif-chat-form input[type="file"][data-file-name-target]{
  position:absolute;
  left:-9999px;
  width:auto;
  border:0;
  padding:0;
}
.collectif-social-box{
  margin-top:18px;
}
.collectif-page .collectif-social-box{
  margin-top:0;
}
.collectif-social-box .article-meta-line{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
}
.collectif-social-box .article-meta-left{
  min-width:0;
  flex:1 1 auto;
}
.collectif-social-actions{
  margin-left:auto;
  justify-content:flex-end;
  flex:0 1 auto;
}
.collectif-social-actions form{
  margin:0;
}
.collectif-social-box .article-meta-left form{
  margin:0;
}
.collectif-inline-form{
  margin:0;
}
.collectif-join-btn{
  background-image:var(--gp-btn);
  background-color:var(--gp-btn-start);
  color:var(--gp-btn-text);
  border-color:var(--gp-nav-border, var(--gp-border-strong));
}
.collectif-join-btn:hover{
  background-image:var(--gp-btn-hover);
  background-color:var(--gp-btn-end);
  color:var(--gp-btn-hover-text, var(--gp-btn-text));
}
.collectif-social-group strong{
  overflow-wrap:anywhere;
}
.collectif-social-logo{
  width:auto;
  min-width:0;
  max-width:120px;
  height:42px;
  object-fit:contain;
  flex:0 0 auto;
  border-radius:8px;
  background:rgba(255,250,240,.92);
}
@media (max-width:760px){
  .collectif-social-actions{
    justify-content:flex-start;
    margin-left:0;
    flex:1 1 100%;
  }
}
.collectif-comments-section form{
  margin:0;
}
.collectif-comments-list{
  display:grid;
  gap:12px;
}
.collectif-comment-head{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-bottom:8px;
}
.collectif-comment-head a{
  color:var(--gp-title);
  font-weight:700;
  text-decoration:none;
}
.collectif-comment-head a:hover{
  text-decoration:underline;
}
.collectif-comment-head span{
  color:var(--gp-muted);
  font-size:.9rem;
}
.collectif-comment-delete{
  margin-top:8px;
}
.collectif-study-section{
  display:grid;
  gap:14px;
  margin-top:18px;
  padding:18px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,250,240,.76);
  box-shadow:var(--gp-shadow-soft);
}
.collectif-study-section--workshop{
  background:rgba(244,234,215,.86);
  border-color:var(--gp-border-strong);
}
.collectif-study-section__head{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.collectif-study-section__head h2{
  margin:0;
  color:var(--gp-title);
}
.collectif-study-section__head p{
  margin:4px 0 0;
  color:var(--gp-muted);
}
.collectif-study-title-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 18px;
  border:1px solid var(--gp-border-strong);
  border-radius:14px;
  background:transparent;
  color:var(--gp-title);
  font-weight:800;
  line-height:1.1;
  cursor:default;
  user-select:none;
}
.collectif-study-visibility{
  color:var(--gp-muted);
  font-weight:700;
  margin-right:auto;
}
.collectif-study-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:12px;
}
.collectif-study-card{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,250,240,.94);
}
.collectif-study-card--draft{
  border-color:rgba(156,111,61,.78);
  background:rgba(255,248,232,.96);
}
.collectif-study-card--draft{
  grid-template-columns:112px minmax(0,1fr);
  align-items:start;
}
.collectif-study-card__thumb{
  display:block;
  width:112px;
  aspect-ratio:4/3;
  overflow:hidden;
  border:1px solid var(--gp-border);
  border-radius:12px;
  background:rgba(244,234,215,.86);
  box-shadow:var(--gp-shadow-soft);
}
.collectif-study-card__thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.collectif-study-card__body{
  min-width:0;
  display:grid;
  gap:10px;
}
.collectif-study-card__summary-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}
.collectif-study-card__summary-row p{
  min-width:0;
  flex:1 1 auto;
}
.collectif-study-card h3{
  margin:0;
  font-size:1.08rem;
  line-height:1.25;
}
.collectif-study-card h3 a{
  color:var(--gp-title);
  text-decoration:none;
}
.collectif-study-card h3 a:hover{
  text-decoration:underline;
}
.collectif-study-card p{
  margin:0;
  color:var(--gp-text);
}
.collectif-study-card__meta,
.collectif-study-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}
.collectif-study-card__actions{
  flex:0 0 auto;
  justify-content:flex-end;
}
.collectif-study-card__meta span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 9px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(244,234,215,.8);
  color:var(--gp-muted);
  font-size:.88rem;
  font-weight:700;
}
@media (max-width:560px){
  .collectif-study-card--draft{
    grid-template-columns:1fr;
  }
  .collectif-study-card__thumb{
    width:100%;
  }
  .collectif-study-card__summary-row{
    align-items:flex-start;
    flex-direction:column;
  }
  .collectif-study-card__actions{
    justify-content:flex-start;
  }
}
.social-btn.is-active{
  outline:2px solid var(--gp-border-strong);
  outline-offset:2px;
}
.reaction-icon{
  display:inline-block;
  font-size:1.15em;
  line-height:1;
}
.reaction-icon--like{
  color:#ff4fa3;
  font-size:1.75em;
  font-weight:900;
  width:1em;
}
.reaction-icon--dislike{
  filter:grayscale(1) brightness(0);
}
.share-mini.is-copied{
  transform:translateY(-1px);
  box-shadow:var(--gp-shadow);
}
.collectif-members-table{
  display:grid;
  gap:10px;
}
.collectif-member-row{
  display:grid;
  grid-template-columns:minmax(160px, 1fr) 150px 150px auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(244,234,215,.72);
}
@media (max-width:760px){
  .collectifs-page,.collectif-page{
    width:min(100%, calc(100% - 16px));
    padding-top:14px;
  }
  .collectifs-hero-line,
  .collectifs-category__head,
  .collectifs-list-head{
    justify-content:center;
    text-align:center;
  }
  .collectifs-hero-nav,
  .collectifs-sort-buttons{
    width:100%;
    justify-content:center;
  }
  .collectifs-category__head{
    align-items:flex-start;
  }
  .collectifs-row{
    gap:10px;
    padding:4px 2px 14px;
  }
  .collectif-card{
    flex-basis:min(250px, 82vw);
  }
  .collectifs-list-grid{
    grid-template-columns:1fr;
  }
  .collectifs-search{
    width:100%;
    flex-wrap:wrap;
  }
  .collectifs-search input[type="search"],
  .collectifs-search select{
    width:100%;
    min-width:0;
  }
  .collectifs-search__label{width:100%;text-align:left}
  .collectif-chapter-media-grid{
    grid-template-columns:1fr;
  }
  .collectif-top-card{
    grid-template-columns:1fr;
    --collectif-top-height:190px;
  }
  .collectif-top-logo{
    justify-self:start;
    width:auto;
    height:var(--collectif-top-height);
  }
  .collectif-member-row{
    grid-template-columns:1fr;
  }
}
.videotheque-page{
  width:min(1180px, calc(100% - 28px));
  margin:0 auto;
  padding:28px 0 46px;
}
.videotheque-shell{
  padding:clamp(16px, 3vw, 30px);
  border:1px solid var(--gp-border);
  border-radius:24px;
  background:var(--gp-surface);
  color:var(--gp-text);
  box-shadow:0 18px 40px rgba(50,32,16,.15);
}
.videotheque-header{
  max-width:860px;
  margin:0 auto 20px;
  text-align:center;
}
.videotheque-header-compact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  max-width:none;
  margin:0 0 14px;
  text-align:left;
}
.videotheque-kicker{
  margin:0 0 8px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0;
  color:var(--gp-title);
}
.videotheque-header h1{
  margin:0 0 10px;
  color:var(--gp-title);
}
.videotheque-header-compact h1{
  margin:0;
}
.videotheque-sort-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.videotheque-sort-actions .bouton1{
  margin:0;
}
.videotheque-sort-actions .bouton1.is-active{
  background:#ffe866;
  color:#4e2b14;
  border-color:#4e2b14;
  box-shadow:0 0 0 2px rgba(78,43,20,.22);
}
.videotheque-header p{
  margin:0;
}
.videotheque-channels{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:10px 0 14px;
}
.videotheque-channel{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:9px 15px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,255,255,.36);
  color:var(--gp-title);
  text-decoration:none;
  font-weight:700;
}
.videotheque-channel.is-active,
.videotheque-channel:hover{
  background:var(--gp-btn-start);
  color:var(--gp-btn-text);
}
.videotheque-channel.is-active{
  background:#ffe866;
  color:#4e2b14;
  border-color:#4e2b14;
  box-shadow:0 0 0 2px rgba(78,43,20,.22);
}
.videotheque-player-grid,
.videotheque-player-layout{
  display:grid;
  grid-template-columns:minmax(240px, 300px) minmax(0, 1fr);
  gap:16px;
  align-items:start;
}
.videotheque-player-zone{
  min-width:0;
}
.videotheque-player{
  width:100%;
  aspect-ratio:16 / 9;
  background:#111;
  border:1px solid var(--gp-border);
  border-radius:16px;
  overflow:hidden;
}
.videotheque-player iframe{
  width:100%;
  height:100%;
  border:0;
}
.videotheque-player-fallback{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  padding:20px;
  color:#fff;
  text-align:center;
  font-weight:700;
}
.videotheque-current{
  margin-top:14px;
  padding:14px 16px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,255,255,.28);
}
.videotheque-current h2{
  margin:0 0 8px;
  color:var(--gp-title);
}
.videotheque-current p{
  margin:0;
}
.videotheque-current-meta{
  margin:0 0 8px;
  color:var(--gp-muted);
  font-weight:700;
}
.videotheque-current-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  margin-top:12px;
}
.videotheque-current-actions .bouton1,
.videotheque-current-actions .media-popout-btn{
  margin-top:0;
}
.videotheque-thumbs,
.videotheque-side-list{
  display:grid;
  gap:10px;
  max-height:70vh;
  overflow:auto;
  padding-right:4px;
}
.videotheque-thumb{
  display:grid;
  grid-template-columns:112px minmax(0, 1fr);
  gap:10px;
  align-items:center;
  width:100%;
  padding:8px;
  border:1px solid var(--gp-border);
  border-radius:14px;
  background:rgba(255,255,255,.34);
  color:var(--gp-text);
  text-align:left;
  cursor:pointer;
}
.videotheque-thumb.is-active{
  background:var(--gp-btn-start);
  color:var(--gp-btn-text);
}
.videotheque-thumb img{
  width:112px;
  aspect-ratio:16 / 9;
  object-fit:cover;
  border-radius:10px;
}
.videotheque-thumb strong{
  display:block;
  line-height:1.2;
}
.videotheque-thumb small{
  display:block;
  margin-top:4px;
  opacity:.78;
}
.videotheque-empty{
  padding:24px;
  border:1px dashed var(--gp-border);
  border-radius:16px;
  text-align:center;
  background:rgba(255,255,255,.24);
}
.videotheque-notice,
.videotheque-error{
  margin:0 0 16px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--gp-border);
  background:rgba(255,255,255,.36);
  font-weight:700;
}
.videotheque-error{
  border-color:#9f2d2d;
  color:#8b1f1f;
}
.videotheque-add-form{
  margin:20px 0 0;
  padding:14px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,255,255,.28);
}
.videotheque-add-row-main > label{
  flex:0 0 auto;
  margin:0;
  font-weight:700;
  color:var(--gp-title);
  white-space:nowrap;
}
.videotheque-add-row{
  display:flex;
  gap:10px;
  align-items:center;
}
.videotheque-add-row + .videotheque-add-row{
  margin-top:10px;
}
.videotheque-add-row-main{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
}
.videotheque-add-row-playlists{
  display:block;
}
.videotheque-add-form input{
  flex:1 1 auto;
  min-width:0;
}
.videotheque-add-form fieldset{
  width:100%;
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin:0;
  padding:8px 10px;
  border:1px solid var(--gp-border);
  border-radius:12px;
  background:rgba(255,255,255,.22);
}
.videotheque-add-form legend{
  padding:0 6px;
  font-weight:700;
  color:var(--gp-title);
}
.videotheque-add-form fieldset label{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0;
  font-weight:400;
}
.videotheque-add-form fieldset input{
  flex:0 0 auto;
}
.videotheque-add-form--modal{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.videotheque-modal-fields{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}
.videotheque-modal-fields label{
  display:grid;
  gap:6px;
  margin:0;
  color:var(--gp-title);
  font-weight:700;
}
.videotheque-modal-fields label:only-child{
  grid-column:1 / -1;
}
.videotheque-modal-actions{
  margin-top:12px;
  text-align:right;
}
.videotheque-thumb-strip{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  overflow:auto;
  max-height:clamp(310px, 42vw, 620px);
  padding:4px 6px 4px 2px;
  overscroll-behavior:contain;
}
.videotheque-strip-card{
  position:relative;
  min-width:0;
}
.videotheque-strip-thumb{
  width:100%;
  padding:5px;
  border:1px solid var(--gp-border);
  border-radius:12px;
  background:rgba(255,255,255,.34);
  cursor:pointer;
}
.videotheque-strip-thumb.is-active{
  background:var(--gp-btn-start);
}
.videotheque-strip-thumb img{
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  object-fit:cover;
  border-radius:8px;
}
.videotheque-strip-card.is-blocked{
  opacity:.58;
}
.videotheque-card-tools{
  position:absolute;
  top:8px;
  right:8px;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:5px;
  max-width:calc(100% - 16px);
}
.videotheque-strip-card .videotheque-card-reactions{
  position:absolute;
  left:8px;
  bottom:8px;
  z-index:2;
  display:flex;
  align-items:center;
  gap:3px;
  padding:3px 5px;
  border-radius:999px;
  background:rgba(255,255,255,.88);
  box-shadow:0 2px 8px rgba(0,0,0,.18);
}
.videotheque-card-reactions .card-reaction{
  min-width:0;
  min-height:24px;
  padding:2px 4px;
  border:0;
  background:transparent;
  box-shadow:none;
  cursor:pointer;
}
.videotheque-card-reactions .card-reaction.is-active{
  background:#ffe866;
  color:#4e2b14;
  outline:1px solid #4e2b14;
  outline-offset:0;
}
.videotheque-current-video-actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.videotheque-current-video-actions[hidden]{display:none}
.videotheque-current-reactions{
  margin:0;
  padding:3px 6px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,255,255,.58);
}
.videotheque-current-reactions .card-reaction{
  min-width:0;
  min-height:28px;
  padding:2px 5px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.videotheque-current-reactions .card-reaction.is-active{
  background:#ffe866;
  color:#4e2b14;
  outline:2px solid #4e2b14;
  outline-offset:1px;
}
.videotheque-playlist-label{
  max-width:100%;
  padding:3px 7px;
  overflow:hidden;
  border-radius:8px;
  background:rgba(25,20,10,.82);
  color:#ffe866;
  font-size:.78rem;
  font-weight:700;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-shadow:0 1px 2px #000;
}
.videotheque-moderation-actions{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.videotheque-moderation-form{
  margin:0;
}
.videotheque-moderation-form button,
.videotheque-edit-button{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  padding:0;
  border:1px solid rgba(120,35,35,.65);
  border-radius:50%;
  background:rgba(255,255,255,.88);
  color:#7f2020;
  font-size:1rem;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.18);
  text-decoration:none;
}
.videotheque-moderation-form button:hover,
.videotheque-edit-button:hover{
  color:#fff;
  background:#8b1f1f;
}
.videotheque-current-playlist{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  max-width:100%;
  padding:6px 10px;
  overflow:hidden;
  border:1px solid rgba(255,232,102,.72);
  border-radius:8px;
  background:rgba(25,20,10,.82);
  color:#ffe866;
  font-size:.88rem;
  font-weight:700;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-shadow:0 1px 2px #000;
  cursor:default;
}
@media (max-width:900px){
  .videotheque-player-grid,
  .videotheque-player-layout{grid-template-columns:1fr}
  .videotheque-player-zone{order:1}
  .videotheque-thumb-strip{
    order:2;
    grid-template-columns:repeat(auto-fit, minmax(138px, 1fr));
    max-height:390px;
    padding:4px 2px 8px;
  }
  .videotheque-thumbs,
  .videotheque-side-list{max-height:none}
}
@media (max-width:560px){
  .videotheque-page{width:min(100%, calc(100% - 16px));padding-top:14px}
  .videotheque-shell{padding:12px;border-radius:18px}
  .videotheque-thumb{grid-template-columns:92px minmax(0, 1fr)}
  .videotheque-thumb img{width:92px}
  .videotheque-add-row-main{grid-template-columns:1fr}
  .videotheque-add-form fieldset{min-width:0}
  .videotheque-modal-fields{grid-template-columns:1fr}
  .videotheque-modal-actions{text-align:left}
  .videotheque-thumb-strip{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    max-height:330px;
  }
  .videotheque-header-compact{
    align-items:flex-start;
    flex-direction:column;
  }
  .videotheque-sort-actions{
    justify-content:flex-start;
  }
}

/* Musikotek */
.musikotek-page{
  width:min(1180px, calc(100% - 28px));
  margin:0 auto;
  padding:28px 0 46px;
}
.musikotek-shell{
  padding:clamp(16px, 3vw, 30px);
  border:1px solid var(--gp-border);
  border-radius:24px;
  background:var(--gp-surface);
  color:var(--gp-text);
  box-shadow:0 18px 40px rgba(50,32,16,.15);
}
.musikotek-header{
  max-width:880px;
  margin:0 auto 12px;
  text-align:center;
}
.musikotek-header-compact{
  max-width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  flex-wrap:wrap;
}
.musikotek-header h1{
  margin:0;
  color:var(--gp-title);
}
.musikotek-mode-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:12px;
  margin-top:0;
}
.musikotek-mode-btn{
  min-width:170px;
}
.musikotek-current-choice{
  width:fit-content;
  max-width:100%;
  margin:8px auto 18px;
  padding:9px 16px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,255,255,.34);
  color:var(--gp-title);
  font-weight:700;
  text-align:center;
}
.musikotek-info-box{
  margin:8px 0 20px;
  padding:16px 18px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,255,255,.28);
  text-align:center;
}
.musikotek-info-box h2{
  margin:0 0 8px;
  color:var(--gp-title);
  font-size:1.22rem;
}
.musikotek-info-box p{
  max-width:920px;
  margin:0 auto;
  line-height:1.6;
}
.musikotek-channels{
  display:flex;
  flex-wrap:nowrap;
  justify-content:flex-start;
  gap:8px;
  margin:12px 0 20px;
  padding:4px 2px 10px;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:thin;
  -webkit-overflow-scrolling:touch;
}
.musikotek-channel{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:7px 13px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,255,255,.36);
  color:var(--gp-title);
  text-decoration:none;
  font-weight:700;
  white-space:nowrap;
}
.musikotek-channel.is-active,
.musikotek-channel:hover{
  background:var(--gp-btn-start);
  color:var(--gp-btn-text);
}
.musikotek-player-layout{
  display:grid;
  grid-template-columns:minmax(260px, 340px) minmax(0, 1fr);
  gap:16px;
  align-items:start;
}
.musikotek-player-card{
  position:sticky;
  top:14px;
  padding:18px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,255,255,.30);
}
.musikotek-current-label{
  margin:0 0 8px;
  color:var(--gp-muted);
  font-weight:700;
}
.musikotek-player-card h2{
  margin:0 0 8px;
  color:var(--gp-title);
}
.musikotek-player-card p{
  margin:0 0 12px;
}
.musikotek-shared-style{
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  padding:5px 10px;
  border:1px solid var(--gp-border);
  border-radius:999px;
  background:rgba(255,255,255,.42);
  color:var(--gp-title);
  font-weight:700;
}
.musikotek-media-player{
  width:100%;
  aspect-ratio:16 / 9;
  border-radius:14px;
  overflow:hidden;
  background:#000;
}
.musikotek-media-player iframe,
.musikotek-media-player > div{
  display:block;
  width:100%;
  height:100%;
  border:0;
}
.musikotek-player-fallback{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  padding:16px;
  color:#fff;
  text-align:center;
  background:#111;
  text-decoration:none;
}
.musikotek-audio-player{
  display:block;
  width:100%;
  margin-top:12px;
}
.media-popout-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  max-width:100%;
  margin-top:10px;
}
.musikotek-track-list{
  display:grid;
  grid-auto-rows:minmax(94px, auto);
  align-content:start;
  gap:8px;
  max-height:360px;
  overflow-y:auto;
  padding-right:4px;
}
.musikotek-track-row{
  display:grid;
  grid-template-columns:minmax(0, 1.5fr) minmax(120px, .7fr) 88px;
  gap:10px;
  align-items:center;
  min-height:94px;
  padding:9px 10px;
  box-sizing:border-box;
  border:1px solid var(--gp-border);
  border-radius:12px;
  background:rgba(255,255,255,.34);
  cursor:pointer;
}
.musikotek-track-row.is-active{
  background:var(--gp-btn-start);
  color:var(--gp-btn-text);
}
.musikotek-track-row.is-blocked{
  opacity:.58;
}
.musikotek-track-main{
  min-width:0;
}
.musikotek-track-main[href]{
  color:inherit;
  text-decoration:none;
}
.musikotek-track-main strong,
.musikotek-track-main span{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.musikotek-track-main span,
.musikotek-track-playlist{
  opacity:.86;
}
.musikotek-track-playlist{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.95rem;
}
.musikotek-track-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:flex-end;
  gap:5px;
}
.musikotek-action-row{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
}
.musikotek-track-actions .card-reaction{
  min-width:54px;
  height:34px;
  padding:5px 9px;
}
.musikotek-sortbar{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 18px;
}
.musikotek-sortbar .bouton1{
  min-width:150px;
}
.musikotek-sortbar .bouton1.active,
.musikotek-mode-btn.active{
  outline:2px solid var(--gp-border-strong);
  outline-offset:3px;
}
.musikotek-discovery-list{
  display:grid;
  gap:12px;
}
.musikotek-discovery-card{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,255,255,.30);
}
.musikotek-discovery-card.is-blocked{
  opacity:.58;
}
.musikotek-discovery-card h2{
  margin:0 0 6px;
  color:var(--gp-title);
  font-size:1.18rem;
}
.musikotek-discovery-card p{
  margin:0 0 8px;
  line-height:1.5;
}
.musikotek-discovery-card .card-reactions{
  justify-content:flex-end;
}
.musikotek-edit-panel{
  margin-top:12px;
  padding:10px;
  border:1px solid var(--gp-border);
  border-radius:12px;
  background:rgba(255,255,255,.22);
}
.musikotek-edit-panel summary{
  cursor:pointer;
  color:var(--gp-title);
  font-weight:700;
}
.musikotek-edit-panel form{
  display:grid;
  gap:8px;
  margin-top:10px;
}
.musikotek-edit-panel label{
  display:grid;
  gap:5px;
  font-weight:700;
}
.musikotek-edit-panel input,
.musikotek-edit-panel textarea{
  width:100%;
}
.musikotek-discovery-actions{
  display:grid;
  gap:8px;
  justify-items:end;
}
.musikotek-moderation-actions{
  display:flex;
  justify-content:flex-end;
  gap:6px;
}
.musikotek-moderation-form{
  margin:0;
}
.musikotek-moderation-form button{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  padding:0;
  border:1px solid rgba(120,35,35,.65);
  border-radius:50%;
  background:rgba(255,255,255,.88);
  color:#7f2020;
  font-size:1rem;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 2px 8px rgba(0,0,0,.18);
}
.musikotek-moderation-form button:hover{
  color:#fff;
  background:#8b1f1f;
}
.musikotek-empty{
  padding:24px;
  border:1px dashed var(--gp-border);
  border-radius:16px;
  text-align:center;
  background:rgba(255,255,255,.24);
}
.musikotek-notice,
.musikotek-error{
  margin:0 0 16px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--gp-border);
  background:rgba(255,255,255,.36);
  font-weight:700;
}
.musikotek-error{
  border-color:#9f2d2d;
  color:#8b1f1f;
}
.musikotek-add-form{
  margin:20px 0 0;
  padding:14px;
  border:1px solid var(--gp-border);
  border-radius:16px;
  background:rgba(255,255,255,.28);
}
.musikotek-add-form h2{
  margin:0 0 10px;
  text-align:center;
  color:var(--gp-title);
  font-size:1.18rem;
}
.musikotek-add-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  align-items:end;
}
.musikotek-add-grid label{
  display:grid;
  gap:6px;
  margin:0;
  color:var(--gp-title);
  font-weight:700;
}
.musikotek-add-grid input,
.musikotek-add-grid select,
.musikotek-add-grid textarea{
  width:100%;
  min-width:0;
}
.musikotek-add-wide{
  grid-column:1 / -1;
}
.musikotek-upload-note{
  margin:10px 0 0;
  padding:9px 12px;
  border:1px dashed var(--gp-border);
  border-radius:12px;
  background:rgba(255,255,255,.24);
  color:var(--gp-title);
  font-weight:700;
  text-align:center;
}
.musikotek-add-actions{
  margin-top:12px;
  text-align:right;
}
.musikotek-add-form--modal{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.musikotek-add-grid--playlist{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}
.musikotek-modal[hidden]{
  display:none;
}
.musikotek-modal{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(20,14,8,.58);
}
.musikotek-modal-open{
  overflow:hidden;
}
.musikotek-modal__panel{
  width:min(820px,100%);
  max-height:min(78vh,680px);
  overflow:auto;
  padding:18px;
  border:1px solid var(--gp-border);
  border-radius:20px;
  background:var(--gp-surface);
  color:var(--gp-text);
  box-shadow:0 22px 60px rgba(0,0,0,.32);
}
.musikotek-modal__panel--small{
  width:min(620px,100%);
}
.musikotek-modal__panel--form{
  width:min(780px,100%);
}
.musikotek-modal__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.musikotek-modal__head h2{
  margin:0;
  color:var(--gp-title);
}
.musikotek-modal__close{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid var(--gp-border);
  border-radius:50%;
  background:rgba(255,255,255,.7);
  color:var(--gp-title);
  font-size:1.35rem;
  font-weight:700;
  cursor:pointer;
}
.musikotek-modal__grid{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.musikotek-modal__foot{
  margin-top:16px;
  text-align:center;
}
@media (max-width:900px){
  .musikotek-player-layout{grid-template-columns:1fr}
  .musikotek-player-card{position:static}
  .musikotek-add-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .musikotek-discovery-card{grid-template-columns:1fr}
  .musikotek-discovery-card .card-reactions{justify-content:flex-start}
  .musikotek-discovery-actions{justify-items:start}
  .musikotek-moderation-actions{justify-content:flex-start}
}
@media (max-width:560px){
  .musikotek-page{width:min(100%, calc(100% - 16px));padding-top:14px}
  .musikotek-shell{padding:12px;border-radius:18px}
  .musikotek-track-row{grid-template-columns:minmax(0, 1fr) 88px}
  .musikotek-track-playlist{grid-column:1 / -1}
  .musikotek-track-actions{grid-column:2;grid-row:1}
  .musikotek-add-grid{grid-template-columns:1fr}
  .musikotek-add-grid--playlist{grid-template-columns:1fr}
  .musikotek-add-actions{text-align:left}
  .mediatek-comments-actions{width:100%;justify-content:flex-start}
  .mediatek-comments-actions .bouton1{width:100%;min-width:0}
  .musikotek-mode-btn{width:100%;min-width:0}
  .musikotek-sortbar .bouton1{width:100%;min-width:0}
}

/* Page publique : fonctionnement des ELFES */
.home-functioning-cta{width:100%;display:flex;justify-content:center;margin:28px auto 12px}
.home-functioning-cta__button{
  width:min(700px,100%);
  min-height:84px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:18px 22px;
  border-radius:22px;
  border:2px solid rgba(80,107,54,.42);
  background:linear-gradient(135deg,rgba(255,236,171,.98),rgba(127,176,105,.92)),var(--gp-surface);
  color:#2b1b0b;
  text-align:center;
  text-decoration:none;
  box-shadow:0 18px 42px rgba(31,26,20,.22);
  transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.home-functioning-cta__button span{font-family:var(--gp-heading-font-family);font-size:calc(clamp(1.32rem,2.4vw,2.05rem) * var(--gp-heading-scale,1));font-weight:800;line-height:1.12}
.home-functioning-cta__button small{max-width:520px;color:#4b341d;font-weight:700;line-height:1.35}
.home-functioning-cta__button:hover{filter:brightness(1.04);transform:translateY(-2px);box-shadow:0 22px 52px rgba(31,26,20,.28)}
main.fonctionnement-page{
  width:min(1080px,calc(100% - 28px));
  max-width:1080px;
  margin:0 auto;
  padding:28px 0 48px;
  display:grid;
  gap:20px;
}
.fonctionnement-hero{padding:clamp(24px,4vw,42px);text-align:center;overflow:hidden}
.fonctionnement-eyebrow{
  display:inline-flex;
  margin:0 0 12px;
  padding:7px 13px;
  border-radius:999px;
  border:1px solid rgba(127,176,105,.48);
  background:rgba(127,176,105,.16);
  color:var(--gp-title);
  font-weight:800;
}
.fonctionnement-hero h1{margin:0;color:var(--gp-title);font-family:var(--gp-heading-font-family);font-size:calc(clamp(2rem,4.4vw,3.55rem) * var(--gp-heading-scale,1));line-height:1.05}
.fonctionnement-lead{max-width:860px;margin:16px auto 0;font-size:clamp(1.02rem,1.7vw,1.18rem);line-height:1.75}
.fonctionnement-pill-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:22px}
.fonctionnement-pill-row span{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 14px;
  border-radius:999px;
  border:1px solid var(--gp-border);
  background:rgba(255,250,240,.58);
  color:var(--gp-title);
  font-weight:800;
}
.fonctionnement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.fonctionnement-card,.fonctionnement-grid>article,.fonctionnement-panels>article{
  min-height:178px;
  padding:18px;
  border:1px solid var(--gp-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(244,234,215,.94),rgba(231,215,187,.94));
  box-shadow:var(--gp-shadow-soft);
  color:var(--gp-text);
}
.fonctionnement-card h2,.fonctionnement-grid>article h2,.fonctionnement-panels>article h2,.fonctionnement-section h2,.fonctionnement-columns h3{margin-top:0;color:var(--gp-title);font-family:var(--gp-heading-font-family);line-height:1.15}
.fonctionnement-card p,.fonctionnement-grid>article p,.fonctionnement-panels>article p,.fonctionnement-section p{margin-bottom:0;line-height:1.7}
.fonctionnement-section{padding:clamp(20px,3.6vw,32px)}
.fonctionnement-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}
.fonctionnement-flow div{display:grid;gap:10px;align-content:start;padding:16px;border-radius:16px;border:1px solid var(--gp-border);background:rgba(255,250,240,.54)}
.fonctionnement-flow strong{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;background:linear-gradient(135deg,#f3d37d,#7fb069);color:#241806;box-shadow:var(--gp-shadow-soft)}
.fonctionnement-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.fonctionnement-columns div{padding:16px;border-radius:16px;border:1px solid rgba(183,146,99,.72);background:rgba(255,250,240,.42)}
.fonctionnement-section--dark{text-align:center;border-color:rgba(127,176,105,.54)}
.fonctionnement-section--dark p{max-width:860px;margin-left:auto;margin-right:auto}
.fonctionnement-return{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  margin-top:20px;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid var(--gp-border-strong);
  background:var(--gp-btn);
  color:var(--gp-btn-text);
  text-decoration:none;
  font-weight:800;
  box-shadow:var(--gp-shadow-soft);
}
.fonctionnement-return:hover{background:var(--gp-btn-hover)}
@media (max-width:920px){
  .fonctionnement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fonctionnement-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .home-functioning-cta__button{min-height:78px;padding:16px}
  main.fonctionnement-page{width:min(100%,calc(100% - 18px));padding:18px 0 34px}
  .fonctionnement-grid,.fonctionnement-flow,.fonctionnement-columns{grid-template-columns:1fr}
  .fonctionnement-card,.fonctionnement-grid>article,.fonctionnement-panels>article{min-height:0}
}

main.collectif-tuto-page{
  width:min(1120px,calc(100% - 28px));
  display:grid;
  gap:16px;
  padding:28px 0 46px;
}
.collectif-tuto-hero{
  padding:clamp(24px,4vw,42px);
  text-align:center;
}
.collectif-tuto-hero h1{
  margin:0;
  color:var(--gp-title);
  font-family:var(--gp-heading-font-family);
  font-size:calc(clamp(1.85rem,4vw,3.15rem) * var(--gp-heading-scale,1));
  line-height:1.08;
}
.collectif-tuto-hero p{
  max-width:860px;
  margin:16px auto 0;
  line-height:1.72;
}
.collectif-tuto-actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.collectif-tuto-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.collectif-tuto-card,
.collectif-tuto-section{
  padding:clamp(18px,3vw,28px);
  border:1px solid var(--gp-border);
  border-radius:18px;
  background:linear-gradient(180deg,var(--gp-surface),var(--gp-surface-2));
  box-shadow:var(--gp-shadow);
}
.collectif-tuto-card h2,
.collectif-tuto-section h2,
.collectif-tuto-section h3{
  margin-top:0;
}
.collectif-tuto-card p,
.collectif-tuto-section p{
  line-height:1.7;
}
.collectif-tuto-card p:last-child,
.collectif-tuto-section p:last-child{
  margin-bottom:0;
}
.collectif-tuto-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.collectif-tuto-columns div,
.collectif-tuto-steps div{
  padding:15px;
  border:1px solid rgba(183,146,99,.72);
  border-radius:16px;
  background:rgba(255,250,240,.42);
}
.collectif-tuto-steps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.collectif-tuto-steps div{
  display:grid;
  gap:9px;
}
.collectif-tuto-steps strong{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,#f3d37d,#7fb069);
  color:#241806;
}
.collectif-tuto-note{
  margin-top:14px;
  padding:13px 15px;
  border-left:4px solid var(--gp-border-strong);
  border-radius:12px;
  background:rgba(255,250,240,.48);
  font-weight:700;
}
.collectif-tuto-list{
  margin:14px 0 0;
  padding-left:1.2rem;
}
.collectif-tuto-list li{
  margin:8px 0;
}
.collectif-tuto-section--final{
  text-align:center;
}
.collectif-tuto-section--final .collectif-tuto-list{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
  text-align:left;
}
@media (max-width:900px){
  .collectif-tuto-grid,
  .collectif-tuto-columns,
  .collectif-tuto-steps{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:760px){
  main.collectif-tuto-page{
    width:min(100%,calc(100% - 18px));
    padding:18px 0 34px;
  }
  .collectif-tuto-grid,
  .collectif-tuto-columns,
  .collectif-tuto-steps{
    grid-template-columns:1fr;
  }
}

/* PDF des articles */
@media print{
  @page{margin:12mm}
  html,body{
    background:#fff!important;
    color:#111!important;
  }
  body::before,
  body::after,
  header,
  nav,
  footer,
  .navbouton,
  .header-inline-wrap,
  .blog-footer,
  .article-nav-hero,
  .article-construction-hero,
  .article-meta-box,
  .article-community-box,
  .comments-section,
  .article-image-viewer,
  .article-carousel__btn,
  .article-carousel__dots,
  .article-video-block,
  .article-downloads-block__button,
  .gp-backtotop{
    display:none!important;
  }
  main.article-page{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
  }
  .article-page > .blocarticle,
  .article-page > .blocarticle.article-rendered,
  .article-rich-content,
  .article-reading-panel,
  .article-carousel,
  .article-posters,
  .article-downloads-block,
  .article-related-box{
    width:100%!important;
    max-width:none!important;
    margin:0 0 14px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#111!important;
  }
  .article-rich-header{
    display:block!important;
    margin:0 0 12px!important;
    text-align:left!important;
  }
  .article-rich-header h1,
  .article-rich-subtitle,
  .raw-article-heading{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    margin:0 0 8px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#111!important;
  }
  .article-rich-header h1{
    font-size:24pt!important;
    line-height:1.15!important;
  }
  .article-rich-subtitle{
    font-size:13pt!important;
    line-height:1.35!important;
  }
  .article-html-content,
  .article-html-content p,
  .raw-article-render,
  .raw-article-paragraph,
  .raw-article-intro,
  .article-rich-content li{
    color:#111!important;
    font-size:11pt!important;
    line-height:1.45!important;
  }
  .article-html-content details,
  .article-html-content .gp-acc{
    display:block!important;
    margin:0 0 12px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
    page-break-inside:avoid;
    break-inside:avoid;
  }
  .article-html-content details summary,
  .article-html-content .gp-sum{
    display:block!important;
    margin:0 0 6px!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:#fff!important;
    color:#111!important;
    list-style:none!important;
    cursor:default!important;
    font-size:14pt!important;
    line-height:1.25!important;
  }
  .article-html-content details summary::after,
  .article-html-content .gp-sum::after,
  .article-html-content .gp-sum__hint,
  .article-html-content details summary::-webkit-details-marker{
    display:none!important;
    content:none!important;
  }
  .article-html-content details > div,
  .article-html-content .gp-content{
    display:block!important;
    margin:0 0 10px!important;
    padding:0!important;
    border:0!important;
    background:#fff!important;
    color:#111!important;
  }
  .article-carousel__viewport{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    background:#fff!important;
  }
  .article-carousel__slide{
    display:block!important;
    position:static!important;
    opacity:1!important;
    transform:none!important;
    margin:0 0 10px!important;
    page-break-inside:avoid;
    break-inside:avoid;
  }
  .article-carousel__slide img,
  .article-poster__img,
  .article-html-content img{
    max-width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    page-break-inside:avoid;
    break-inside:avoid;
  }
  .article-posters{
    display:block!important;
  }
  .article-poster{
    margin:0 0 10px!important;
    page-break-inside:avoid;
    break-inside:avoid;
  }
  a{
    color:#111!important;
    text-decoration:none!important;
  }
}

/* Les surcharges smartphone sont repetées en fin de cascade afin de couvrir
   aussi les composants spécialisés déclarés plus bas dans cette feuille. */
@media screen and (max-width:640px){
  body{font-size:min(var(--gp-font-size),16px)}
  main,main.blog-home-page,main.article-page,main.gp-local-page,
  main.messages-page,main.my-articles-page,main.gp-page,main.tags-page,
  body.page-admin main,body.page-create-article main,body.page-edit-article main{
    width:calc(100% - 16px);padding-top:8px
  }
  .bouton1,.bouton-form,.header-mini-btn,.nav-auth-btn,.gp-btn,
  .gp-local-related__btn,.gp-local-link,.my-article-pill,.tag-pill,
  .article-edit-btn,.share-mini,.social-btn,
  input[type="submit"],input[type="button"]{
    width:auto;max-width:100%;min-width:0;min-height:32px;padding:6px 10px;
    border-radius:10px;gap:5px;font-size:.80rem;line-height:1.15;
    white-space:normal;text-align:center
  }
  .navbouton,.header-inline-wrap,.header-inline-tools,.form-actions,
  .profile-actions-row,.profile-actions,.gp-local-related__buttons,
  .my-article-actions{gap:6px}
  .navtitre{padding:8px 12px;border-radius:12px;font-size:1rem}
  .titre-articles,.hero-blog-intro,.formwrapper,.gp-card,.messages-wide,
  .gp-local-section,.gp-local-card,.profile-card-extended,.profile-section-box,
  .auth-card,.my-article-card,.gp-local-titlebox,.my-articles-head,.tags-head,
  .card-article,.article-meta-box,.article-community-box,.article-posters,
  .article-video-block,.comments-section,.article-rich-content,.blocarticle{
    border-radius:14px
  }
  .formwrapper,.auth-card,.gp-card,.messages-wide,.gp-local-section,
  .profile-card-extended,.profile-section-box,.my-articles-head,.tags-head,
  .article-meta-box,.article-community-box,.article-posters,.article-video-block,
  .comments-section,.article-rich-content,.blocarticle{padding:12px}
  input[type="text"],input[type="email"],input[type="password"],
  input[type="url"],input[type="search"],select,textarea{
    padding:9px 10px;border-radius:10px
  }
  .msg,.flash,.flash-success,.flash-error,.no-article,
  .messages-empty,.my-articles-empty{padding:10px;border-radius:10px}
}

/* Vidéotek : boutons et cadres réellement compacts sur smartphone. */
@media screen and (max-width:640px){
  .videotheque-page{width:calc(100% - 12px);padding:6px 0 24px}
  .videotheque-shell{padding:8px;border-radius:12px}
  .videotheque-header{margin-bottom:10px}
  .videotheque-header-compact{gap:7px;margin-bottom:9px}
  .videotheque-header h1{font-size:1.18rem}
  .videotheque-kicker,.videotheque-header p{font-size:.82rem}
  .videotheque-channels,.videotheque-sort-actions,
  .videotheque-current-actions,.videotheque-current-video-actions{
    gap:5px;margin-top:7px
  }
  .videotheque-page :where(button,.bouton1,.bouton-form,.gp-btn,
  .media-popout-btn,.videotheque-channel,.videotheque-edit-button){
    width:auto;max-width:100%;min-width:0;min-height:28px;height:auto;
    padding:4px 7px;border-radius:8px;font-size:.72rem;line-height:1.15;
    gap:4px;white-space:normal;text-align:center
  }
  .videotheque-channel{padding:4px 8px;border-radius:999px}
  .videotheque-moderation-form button,.videotheque-edit-button{
    width:24px;height:24px;min-height:24px;padding:0;border-radius:50%;font-size:.78rem
  }
  .videotheque-player{border-radius:10px}
  .videotheque-current,.videotheque-empty,.videotheque-notice,
  .videotheque-error,.videotheque-add-form{
    margin-top:8px;padding:8px;border-radius:10px
  }
  .videotheque-player-grid,.videotheque-player-layout,
  .videotheque-thumbs,.videotheque-side-list,.videotheque-thumb-strip{
    gap:6px
  }
  .videotheque-thumb{grid-template-columns:76px minmax(0,1fr);gap:7px;padding:5px;border-radius:9px}
  .videotheque-thumb img{width:76px;border-radius:7px}
  .videotheque-thumb strong{font-size:.78rem}
  .videotheque-thumb small{font-size:.68rem}
  .videotheque-strip-thumb{padding:3px;border-radius:8px}
  .videotheque-strip-thumb img{border-radius:6px}
  .videotheque-add-form fieldset{gap:5px 8px;padding:6px 8px;border-radius:9px}
  .videotheque-current-reactions{padding:2px 4px}
  .videotheque-card-reactions .card-reaction,
  .videotheque-current-reactions .card-reaction{
    min-height:22px;padding:2px 3px;font-size:.68rem
  }
  .videotheque-current-playlist,.videotheque-playlist-label{
    min-height:0;padding:3px 6px;border-radius:6px;font-size:.68rem
  }
}
