.nh-architecture { margin: 1.6rem 0; }
.nh-architecture-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; }
.nh-architecture-panel { min-width: 0; padding: 16px 10px; border: 1px solid var(--border, #ddd); border-radius: 10px; background: var(--entry, #fff); }
.nh-architecture-record { grid-column: 1 / -1; }
.nh-architecture-panel h4 { margin: 0 0 14px; padding: 0 6px; font-size: 13px; font-weight: 600; letter-spacing: .04em; color: var(--secondary); }
.nh-architecture-panel a { display: block; box-shadow: none; }
.nh-architecture-panel img { display: block; max-width: 100%; width: auto; height: auto; margin: 0 auto; border-radius: 0; }
.nh-architecture-panel .nh-diagram-dark { display: none; }
body.dark .nh-architecture-panel .nh-diagram-light { display: none; }
body.dark .nh-architecture-panel .nh-diagram-dark { display: block; }
.post-content .nh-architecture figcaption { margin-top: 12px; font-size: 13px; font-weight: 400; line-height: 1.6; color: var(--secondary); }
@media (max-width: 600px) {
  .nh-architecture-grid { grid-template-columns: minmax(0, 1fr); }
  .nh-architecture-play { grid-row: auto; }
  .nh-architecture-panel { padding: 16px 12px; }
}
