/* Shared additions only: leave the existing page and album styles untouched. */
.dm-social { margin: 0 auto 18px; max-width: 920px; }
.dm-social-links { display: grid; grid-template-columns: repeat(6, 52px); align-items: center; justify-content: center; gap: 14px; width: max-content; max-width: 100%; margin: 0 auto; }
.dm-social-links a, .dm-social-links button, .dm-dialog a, .dm-dialog button {
  font: inherit; line-height: 1.5; cursor: pointer; text-decoration: none;
  border: 1px solid #d9c69f; border-radius: 8px; background: #fffdf9; color: #473829;
  padding: 9px 13px; display: inline-flex; align-items: center; justify-content: center;
}
.dm-social-links a:hover, .dm-social-links button:hover, .dm-dialog a:hover, .dm-dialog button:hover { background: #f4ebdd; }
.dm-social a:focus-visible, .dm-social button:focus-visible, .dm-dialog :focus-visible { outline: 3px solid #a9823a; outline-offset: 3px; }
.dm-dialog { box-sizing: border-box; width: min(440px, calc(100% - 32px)); max-height: calc(100dvh - 32px); overflow: auto; padding: 28px 24px; border: 1px solid #e6cf9b; border-radius: 20px; background: #fffdf9; color: #473829; text-align: center; font: 15px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; }
.dm-dialog::backdrop { background: rgba(46,36,32,.65); }
.dm-dialog h2 { font-size: 21px; margin: 12px 0; color: #2e2420; }
.dm-dialog p { margin: 12px 0; }
.dm-dialog .dm-close { display: flex; margin: 0 0 0 auto; font-size: 14px; padding: 6px 10px; }
.dm-dialog img { display: block; width: 240px; max-width: 100%; height: auto; margin: 16px auto; }
.dm-dialog .dm-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 16px; }
.dm-dialog .dm-share-url { box-sizing: border-box; width: 100%; border: 1px solid #d9c69f; border-radius: 8px; padding: 10px; font-family: inherit; font-size: 13px; line-height: 1.5; background: #faf5ec; color: #473829; }
.dm-dialog .dm-status { min-height: 1.75em; font-size: 13px; color: #66513e; }
.dm-language-link { font-size: 13px; }

/* Brand artwork stays crisp at every screen density; labels remain available to assistive tools. */
.dm-social-links .dm-social-icon { width: 52px; height: 52px; padding: 0; border: 0; border-radius: 12px; background: transparent; }
.dm-social-links .dm-social-icon:hover { background: transparent; opacity: .82; }
.dm-social-icon img { display: block; width: 100%; height: 100%; object-fit: contain; }
@media (max-width: 480px) {
  .dm-social-links { grid-template-columns: repeat(6, 44px); gap: 10px; }
  .dm-social-links .dm-social-icon { width: 44px; height: 44px; border-radius: 10px; }
}
@media (max-width: 380px) {
  .dm-social-links { grid-template-columns: repeat(3, 48px); gap: 14px; }
  .dm-social-links .dm-social-icon { width: 48px; height: 48px; }
}
