/* ============================================================
 * ESSIKNETWORK — Widget Sidebar (blocs réutilisables).
 * Variables : essik-design-tokens.css. Dark mode auto.
 * ============================================================ */
.essik-sidebar { display: flex; flex-direction: column; gap: 1.25rem; }
.essik-sb-block {
  background: var(--essik-bg-muted);
  border: 1px solid var(--essik-border);
  border-radius: var(--essik-radius);
  padding: 1.25rem;
}
.essik-sb-title { margin: 0 0 .9rem; font-size: 1rem; font-weight: 800; color: var(--essik-text-strong); }
.essik-sb-block a { color: #334155; text-decoration: none; }
.essik-sb-block a:hover { color: var(--essik-primary); }
html[data-theme="dark"] .essik-sb-block a { color: var(--essik-muted); }
html[data-theme="dark"] .essik-sb-block a:hover { color: var(--essik-primary); }
/* Recherche */
.essik-sb-search form { display: flex; gap: .5rem; }
.essik-sb-search input {
  flex: 1; min-width: 0; padding: .6rem .8rem;
  border: 1px solid var(--essik-border); border-radius: var(--essik-radius-sm);
  background: var(--essik-bg); color: var(--essik-text); font-size: .82rem; font-family: inherit;
}
.essik-sb-search input:focus { outline: none; border-color: var(--essik-primary); box-shadow: 0 0 0 3px var(--essik-primary-glow); }
.essik-sb-search button {
  flex: none; display: inline-flex; align-items: center; justify-content: center;
  width: 2.5rem; border: 0; border-radius: var(--essik-radius-sm);
  background: var(--essik-primary); color: #fff; cursor: pointer;
}
.essik-sb-search button:hover { background: var(--essik-primary-hover); }
/* Listes */
.essik-sb-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .45rem; font-size: .85rem; }
.essik-sb-list a { display: flex; justify-content: space-between; align-items: center; font-weight: 600; }
.essik-sb-count { font-size: .72rem; color: var(--essik-faint); }
/* Récents */
.essik-sb-posts { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .8rem; }
.essik-sb-posts a { display: flex; gap: .7rem; align-items: center; }
.essik-sb-thumb { flex: none; width: 3rem; height: 3rem; border-radius: .6rem; overflow: hidden; background: var(--essik-border); }
.essik-sb-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.essik-sb-post-t { display: flex; flex-direction: column; gap: .15rem; font-size: .82rem; font-weight: 700; line-height: 1.35; }
.essik-sb-post-t time { font-size: .7rem; font-weight: 600; color: var(--essik-faint); }
/* Tags */
.essik-sb-cloud { display: flex; flex-wrap: wrap; gap: .45rem; }
.essik-sb-cloud a {
  font-size: .72rem; font-weight: 700; padding: .3rem .7rem; border-radius: var(--essik-radius-pill);
  background: var(--essik-bg); border: 1px solid var(--essik-border);
}
.essik-sb-cloud a:hover { border-color: var(--essik-primary); color: var(--essik-primary); }
/* CTA */
.essik-sb-cta { background: var(--essik-dark); border-color: var(--essik-dark); color: #fff; text-align: center; }
.essik-sb-cta-t { margin: 0 0 .4rem; font-size: 1rem; font-weight: 800; color: #fff; }
.essik-sb-cta-x { margin: 0 0 1rem; font-size: .8rem; color: #CBD5E1; }
.essik-sb-btn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 100%; padding: .7rem 1rem; border-radius: .7rem;
  background: var(--essik-primary); color: #fff !important;
  font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em;
}
.essik-sb-btn:hover { background: var(--essik-primary-hover); color: #fff !important; }
/* Contact / social */
.essik-sb-contact p { margin: 0 0 .4rem; font-size: .85rem; font-weight: 600; }
.essik-sb-socials { display: flex; gap: .5rem; }
.essik-sb-socials a {
  display: inline-flex; align-items: center; justify-content: center;
  width: 2.25rem; height: 2.25rem; border-radius: .6rem;
  background: var(--essik-bg); border: 1px solid var(--essik-border);
  font-size: .72rem; font-weight: 800; text-transform: uppercase;
}
.essik-sb-socials a:hover { border-color: var(--essik-primary); color: var(--essik-primary); }
