
/* ══════════════════════════════════════════════════════
   AMBI241 FORUM LUXE — Overrides injectés
   (surcharge les styles forum sans casser le reste)
══════════════════════════════════════════════════════ */

/* ── Hero section sociale ── */
.soc-hero {
  padding: 1.1rem 1rem 0.85rem;
  background: linear-gradient(135deg, rgba(255,45,155,0.07) 0%, rgba(138,43,226,0.05) 50%, transparent 100%);
  border-bottom: 1px solid rgba(255,45,155,0.14);
  position: relative;
  overflow: hidden;
}
.soc-hero::before {
  content:'';
  position:absolute; top:-1px; left:0; right:0; height:1px;
  background: linear-gradient(90deg, transparent, rgba(255,45,155,0.6), transparent);
}
.soc-hero-title {
  font-family:'Syne',sans-serif; font-size:1.3rem; font-weight:900;
  display:flex; align-items:center; gap:0.5rem;
}
.soc-hero-sub { font-size:0.71rem; color:var(--muted); margin-top:0.25rem; font-style:italic; }

/* Stats hero */
.soc-hero-stats { display:flex; gap:1.2rem; margin-top:0.7rem; justify-content:center; }
.soc-hero-stat { text-align:center; }
.soc-hero-stat-num {
  font-family:'Syne',sans-serif; font-size:1.15rem; font-weight:800;
  color:var(--pink); display:block; line-height:1.1;
}
.soc-hero-stat-lbl { font-size:0.58rem; color:var(--muted); text-transform:uppercase; letter-spacing:0.07em; }

/* ── Barre de recherche ── */
.soc-search-bar {
  margin: 0.75rem 1rem;
  background: rgba(255,255,255,0.035);
  border: 1.5px solid rgba(255,45,155,0.18);
  border-radius: 14px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.soc-search-bar:focus-within {
  border-color: rgba(255,45,155,0.5);
  box-shadow: 0 0 0 3px rgba(255,45,155,0.07);
}

/* ── Onglets sociaux ── */
.soc-tabs { background: rgba(255,255,255,0.02); border-bottom: 1px solid rgba(255,255,255,0.06); }
.soc-tab { font-size:0.72rem; font-weight:700; padding: 0.62rem 0.85rem; transition: color 0.2s, border-color 0.2s; }
.soc-tab.active { color: var(--pink); border-bottom-color: var(--pink); text-shadow: 0 0 12px rgba(255,45,155,0.4); }

/* ── Barre de composition forum ── */
#forumComposeBar {
  background: rgba(255,255,255,0.035) !important;
  border: 1.5px solid rgba(255,45,155,0.22) !important;
  border-radius: 18px !important;
  padding: 0.75rem 1rem !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  position: relative; overflow: visible;
}
#forumComposeBar::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(90deg, transparent, rgba(255,45,155,0.03));
  pointer-events:none;
  z-index:0;
}
#forumComposeBar > * {
  position: relative;
  z-index: 1;
}
#forumComposeBar:hover {
  border-color: rgba(255,45,155,0.4) !important;
  box-shadow: 0 2px 16px rgba(255,45,155,0.06) !important;
}

/* ── Cards forum ── */
.forum-card {
  background: rgba(255,255,255,0.028);
  border: 1.5px solid rgba(255,255,255,0.07);
  border-radius: 18px;
  padding: 1rem;
  margin-bottom: 0.9rem;
  transition: border-color 0.2s, box-shadow 0.2s;
  position: relative; overflow: hidden;
}
.forum-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background: linear-gradient(90deg, transparent, rgba(255,45,155,0.15), transparent);
  pointer-events:none;
}
.forum-card:hover {
  border-color: rgba(255,45,155,0.28);
  box-shadow: 0 4px 24px rgba(255,45,155,0.06);
}
.forum-card.new-post { animation: forumCardIn 0.35s cubic-bezier(0.16,1,0.3,1); }
@keyframes forumCardIn { from{opacity:0;transform:translateY(-10px)} to{opacity:1;transform:translateY(0)} }

/* Avatar card */
.forum-card-avatar {
  width:40px; height:40px; border-radius:50%;
  background: linear-gradient(135deg, var(--pink), var(--purple));
  border: 1.5px solid rgba(255,45,155,0.35);
  box-shadow: 0 0 10px rgba(255,45,155,0.2);
  font-size:0.92rem;
}

/* Texte */
.forum-card-author { font-size:0.83rem; font-weight:800; }
.forum-card-time   { font-size:0.63rem; }
.forum-card-text   { font-size:0.84rem; line-height:1.65; }

/* Grilles média */
.forum-card-media-grid { border-radius:14px; }
.forum-card-img.tall  { height:230px; }
.forum-card-img.short { height:130px; }

/* ── Actions forum ── */
.forum-action-btn { border-radius:11px; padding:0.45rem 0.3rem; font-size:0.72rem; transition:all 0.18s; }
.forum-action-btn:hover { border-color:rgba(255,45,155,0.25); color:var(--text); background:rgba(255,45,155,0.05); }
.forum-action-btn.liked { color:var(--pink); border-color:rgba(255,45,155,0.35); background:rgba(255,45,155,0.09); box-shadow:0 0 8px rgba(255,45,155,0.15); }

/* ── Section commentaires ── */
.forum-comments-section {
  border-top: 1px solid rgba(255,255,255,0.05);
  padding-top: 0.65rem;
  margin-top: 0.55rem;
  background: rgba(0,0,0,0.12);
  border-radius: 0 0 14px 14px;
  margin: 0.55rem -1rem -1rem;
  padding: 0.65rem 1rem 0.8rem;
}
.forum-comment-bubble { background:rgba(255,255,255,0.035); border:1px solid rgba(255,255,255,0.07); border-radius:12px 12px 12px 3px; }
.forum-comment-author { color:var(--cyan); }
.forum-comment-input { background:rgba(255,255,255,0.04); border:1.5px solid rgba(255,255,255,0.09); border-radius:12px; transition:border-color 0.2s; }
.forum-comment-input:focus { border-color:rgba(255,45,155,0.4); }
.forum-comment-send { background:linear-gradient(135deg,var(--pink),var(--purple)); border-radius:11px; transition:opacity 0.2s; }
.forum-comment-send:hover { opacity:0.85; }

/* ── Modal publier ── */
.forum-modal-sheet { background:var(--surface); border-top:1px solid rgba(255,45,155,0.2); border-radius:24px 24px 0 0; position:relative; overflow:hidden; }
.forum-modal-sheet::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,rgba(255,45,155,0.6),transparent); }
.forum-type-chip { border-radius:20px; transition:all 0.2s; }
.forum-type-chip.active { background:rgba(255,45,155,0.15); border-color:rgba(255,45,155,0.5); color:var(--pink); box-shadow:0 0 10px rgba(255,45,155,0.12); }
.forum-submit-btn { background:linear-gradient(135deg,var(--pink),var(--purple)); border-radius:14px; font-family:'Syne',sans-serif; font-weight:800; font-size:0.9rem; letter-spacing:0.03em; transition:opacity 0.2s, transform 0.15s; position:relative; overflow:hidden; }
.forum-submit-btn::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,0.15),transparent); pointer-events:none; }
.forum-submit-btn:hover:not(:disabled) { opacity:0.9; transform:translateY(-1px); }
.forum-submit-btn:active:not(:disabled) { transform:scale(0.98); }
.forum-submit-btn:disabled { opacity:0.4; cursor:not-allowed; }
.forum-media-btn:hover { border-color:rgba(255,45,155,0.4); color:var(--pink); background:rgba(255,45,155,0.07); }

/* ── Filtres chips ── */
.forum-fchip { border-radius:20px; font-size:0.71rem; transition:all 0.2s; }
.forum-fchip.active { background:rgba(255,45,155,0.14); border-color:rgba(255,45,155,0.45); color:var(--pink); box-shadow:0 0 8px rgba(255,45,155,0.1); }

/* ── Badge LIVE animé ── */
.forum-live-badge { display:inline-flex; align-items:center; gap:0.3rem; background:rgba(255,45,155,0.15); border:1px solid rgba(255,45,155,0.35); border-radius:6px; padding:0.18rem 0.5rem; font-size:0.58rem; font-weight:800; color:var(--pink); letter-spacing:0.04em; }
.forum-live-dot { width:6px; height:6px; border-radius:50%; background:var(--pink); animation:fLivePulse 1.4s ease-in-out infinite; }
@keyframes fLivePulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.35;transform:scale(0.65)} }

/* ── Overlays media ── */
.fm-overlay-more { font-size:1.5rem; font-weight:900; text-shadow:0 2px 8px rgba(0,0,0,0.6); }
.fm-vid-badge { width:28px; height:28px; background:rgba(0,0,0,0.72); border-radius:50%; font-size:0.72rem; box-shadow:0 0 8px rgba(0,0,0,0.5); }

/* ── Dots quotidien ── */
.forum-daily-dot { border-radius:4px; transition:background 0.3s; }
.forum-daily-dot.used { background:var(--amber); box-shadow:0 0 6px rgba(255,160,0,0.35); }
.forum-daily-dot.vid.used { background:var(--cyan); box-shadow:0 0 6px rgba(0,229,255,0.3); }

/* ── Bouton Voir plus ── */
#forumLoadMore { margin:0.3rem auto 0.5rem; background:rgba(255,45,155,0.07); border:1.5px solid rgba(255,45,155,0.22); border-radius:14px; color:var(--pink); font-size:0.75rem; font-weight:700; padding:0.55rem 1.3rem; cursor:pointer; transition:all 0.2s; }
#forumLoadMore:hover { background:rgba(255,45,155,0.14); border-color:rgba(255,45,155,0.4); }

/* ── Preview média dans modal ── */
#forumPubMediaPreview > div { border-radius:12px !important; overflow:hidden; box-shadow:0 2px 12px rgba(0,0,0,0.3); }
