/* Shared CNPERP help & support pages */
body.help-page {
  background: #f0f4f8;
  padding-top: 72px;
  padding-bottom: 3rem;
}
.help-shell {
  max-width: 900px;
  margin: 0 auto;
  padding: 0 1rem;
}
.help-shell.wide { max-width: 1100px; }
.help-hero {
  background: linear-gradient(135deg, #0d1117 0%, #1e3a5f 100%);
  color: #fff;
  border-radius: 1rem;
  padding: 2rem;
  margin-bottom: 1.5rem;
}
.help-card {
  background: #fff;
  border-radius: 1rem;
  box-shadow: 0 4px 20px rgba(0,0,0,.06);
  padding: 1.5rem;
  margin-bottom: 1.25rem;
}
.help-card h2, .help-card h3 { color: #1e3a5f; }
.help-card h2 { font-size: 1.15rem; margin-bottom: 1rem; }
.contact-channel {
  border: 1px solid #dee2e6;
  border-radius: .75rem;
  padding: 1.25rem;
  height: 100%;
  transition: box-shadow .2s;
}
.contact-channel:hover { box-shadow: 0 4px 16px rgba(0,0,0,.08); }
.contact-channel .icon {
  width: 2.5rem; height: 2.5rem; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.25rem; margin-bottom: .75rem;
}
.icon-wa { background: #d1f4e0; color: #128c7e; }
.icon-mail { background: #e7f1ff; color: #0d6efd; }
.icon-phone { background: #fff3cd; color: #856404; }
.kbd-chip {
  display: inline-block; font-family: ui-monospace, monospace;
  font-size: .8rem; padding: .15rem .45rem; border-radius: .35rem;
  background: #e9ecef; border: 1px solid #ced4da; margin: .1rem;
}
.faq-item { border-bottom: 1px solid #eee; padding: .75rem 0; }
.faq-item:last-child { border-bottom: none; }
.doc-link {
  display: flex; align-items: center; gap: .75rem;
  padding: .75rem 1rem; border: 1px solid #dee2e6; border-radius: .5rem;
  text-decoration: none; color: inherit; margin-bottom: .5rem;
}
.doc-link:hover { background: #f8f9fa; border-color: #0d6efd; color: #0d6efd; }
