/* Community layer — Giscus (GitHub Discussions) + privacy-first indicator
   Matches Kiwi Dialectic dark cream palette. */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;500;600;700&display=swap');

.kd-community{
  --kc-bg:#0a0a0a;
  --kc-panel:#12100c;
  --kc-fg:#f4ecd8;
  --kc-muted:#9c8c5c;
  --kc-line:#2a2418;
  --kc-koura:#e8a83a;
  --kc-red:#d7261e;
  background:var(--kc-bg);
  color:var(--kc-fg);
  border-top:1px solid var(--kc-line);
  padding:56px 22px 48px;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  font-size:15px;
  line-height:1.6;
}
.kd-community .kc-inner{max-width:820px;margin:0 auto}

.kd-community .kc-head{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 20px;
  padding-bottom:14px;margin-bottom:22px;border-bottom:1px solid var(--kc-line);
}
.kd-community .kc-title{
  font-family:'Bebas Neue','Oswald',sans-serif;letter-spacing:.16em;
  font-size:28px;margin:0;color:var(--kc-fg);
}
.kd-community .kc-title span{color:var(--kc-koura)}

.kd-community .kc-live{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--kc-muted);
}
.kd-community .kc-live .kc-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--kc-koura);
  box-shadow:0 0 0 0 rgba(232,168,58,.55);
  animation:kc-pulse 2.4s cubic-bezier(.4,0,.6,1) infinite;
}
@keyframes kc-pulse{
  0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(232,168,58,.55)}
  50%{transform:scale(1.15);box-shadow:0 0 0 6px rgba(232,168,58,0)}
}
@media (prefers-reduced-motion:reduce){
  .kd-community .kc-live .kc-dot{animation:none}
}

.kd-community .kc-lede{
  color:var(--kc-fg);opacity:.88;margin:0 0 8px;max-width:64ch;
}
.kd-community .kc-meta{
  color:var(--kc-muted);font-size:13px;margin:0 0 24px;max-width:64ch;
}
.kd-community .kc-lede a,
.kd-community .kc-meta a,
.kd-community .kc-fallback a{color:var(--kc-koura);text-decoration:none;border-bottom:1px solid rgba(232,168,58,.35)}
.kd-community .kc-lede a:hover,
.kd-community .kc-meta a:hover,
.kd-community .kc-fallback a:hover{color:var(--kc-red);border-bottom-color:var(--kc-red)}

/* Giscus mount — the widget itself is an iframe, so outer styling
   controls only the panel frame around it. */
#kd-comments{
  background:var(--kc-panel);
  border:1px solid var(--kc-line);
  border-radius:6px;
  padding:18px 16px;
  min-height:120px;
}
#kd-comments .giscus,
#kd-comments .giscus-frame{
  width:100%;
  border:0;
  color-scheme:dark;
}

.kd-community .kc-loading{
  color:var(--kc-muted);font-size:14px;font-style:italic;
}
.kd-community .kc-fallback{
  display:none;color:var(--kc-muted);font-size:14px;margin-top:12px;
}
.kd-community.is-broken #kd-comments{display:none}
.kd-community.is-broken .kc-fallback{display:block}
.kd-community.is-broken .kc-lede,
.kd-community.is-broken .kc-meta{display:none}

@media (max-width:520px){
  .kd-community{padding:44px 16px 36px}
  .kd-community .kc-title{font-size:22px}
  #kd-comments{padding:16px 14px}
}
