/* Editorial Single views. Deliberately scoped away from embedded games and players. */
#page[data-vp-single="blog"] .vp-single-author-profile {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  min-width: 0;
}
#page[data-vp-single="blog"] .vp-single-author-avatar {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 104px;
  height: auto;
  min-width: 0;
  border: 0;
  border-radius: 0;
  font-size: 12px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
#page[data-vp-single="blog"] .vp-single-author-avatar::before { display: none; }
#page[data-vp-single="blog"] .vp-single-author-avatar > img {
  display: block;
  width: 80px !important;
  height: 80px !important;
  margin: 0 0 8px;
  border: 2px solid #d5a031 !important;
  object-fit: cover;
}
#page[data-vp-single="blog"] .vp-single-author-avatar.border-blue > img { border-color: #5475e5 !important; }
#page[data-vp-single="blog"] .vp-single-author-avatar.border-red > img { border-color: #e8667f !important; }
#page[data-vp-single="blog"] .vp-single-author-details { min-width: 0; }
#page[data-vp-single="blog"] .vp-single-eyebrow {
  margin: 0 0 4px;
  color: #717987;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.5;
}
#page[data-vp-single="blog"] .vp-single-author-name {
  margin: 0 0 6px;
  color: #293344;
  font-size: 17px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
#page[data-vp-single="blog"] .vp-single-author-bio {
  margin: 0;
  color: #576173;
  font-size: 13px;
  line-height: 1.75;
  white-space: pre-line;
  overflow-wrap: anywhere;
}
#page[data-vp-single="blog"] .vp-single-article-heading {
  display: block;
  float: none;
  width: auto;
  margin: 0;
  padding: 18px 20px 12px;
}
#page[data-vp-single="blog"] .vp-single-article-heading .vp-single-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 12px;
  margin-bottom: 7px;
  color: #717987;
  font-size: 12px;
}
#page[data-vp-single="blog"] .vp-single-article-heading .vp-single-meta a { color: #576173; }
#page[data-vp-single="blog"] .vp-single-article-heading .media-title {
  margin: 0;
  color: #263244;
  font-size: clamp(21px, 2.5vw, 29px) !important;
  line-height: 1.5 !important;
  font-weight: 750 !important;
  overflow-wrap: anywhere;
}
#page[data-vp-single="blog"] .vp-single-editorial-body { padding: 0 20px 20px; }
#page[data-vp-single="blog"] #honbun.vp-single-reading { overflow-wrap: anywhere; }
#page[data-vp-single="blog"] #honbun.vp-single-reading > :is(p, ul, ol, blockquote, h2, h3, h4) {
  padding-inline: 0;
  margin-inline: 0;
}
#page[data-vp-single="blog"] #honbun.vp-single-reading > p { margin-block: 0 1em; line-height: 1.85; }
#page[data-vp-single="blog"] #honbun.vp-single-reading > :is(h2, h3, h4) { margin-block: 1.3em .55em; }
/* Only images authored as ordinary article blocks, never arbitrary descendant media. */
#page[data-vp-single="blog"] #honbun.vp-single-reading > img,
#page[data-vp-single="blog"] #honbun.vp-single-reading > p > img,
#page[data-vp-single="blog"] #honbun.vp-single-reading > p > a > img,
#page[data-vp-single="blog"] #honbun.vp-single-reading > figure.wp-block-image > img,
#page[data-vp-single="blog"] #honbun.vp-single-reading > figure.wp-block-image > a > img {
  max-width: 100%;
  height: auto;
}
#page[data-vp-single="blog"] .vp-single-recent { padding: 16px 20px 20px !important; }
#page[data-vp-single="blog"] .vp-single-recent > .bonus-posts-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px !important;
}
/* Related cards use the same geometry and metadata as audio/product grids. */
#page[data-vp-single="blog"] .tab-timeline-comments {
  appearance: none;
  margin: 0;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.1);
  border-radius: 0;
  background: transparent;
  font-family: inherit;
  line-height: 1.4;
}
#page[data-vp-single="blog"] .tab-timeline-comments[aria-selected="true"] { background: rgba(255,255,255,.15); color: #fff; }
#page[data-vp-single="blog"] .voicepa-comment-children { margin-left: 16px; padding-left: 10px; }
#page[data-vp-single="blog"] .voicepa-comment-children .voicepa-comment-children { margin-left: 6px; padding-left: 8px; }

/* SNS details use a narrow avatar rail and the full remaining reading width. */
#page[data-vp-single="microblog"] .vp-microblog-detail {
  padding: 0;
  margin: 0;
  background: #fff;
  color: #334155;
  border: 1px solid #e6e9ee;
  border-radius: 14px;
}
#page[data-vp-single="microblog"] .vp-microblog-detail-body { padding: 0 16px 12px; }
#page[data-vp-single="microblog"] .vp-single-thread-heading {
  display: flex;
  align-items: center;
  gap: 16px;
  float: none;
  width: auto;
  padding: 13px 0;
  margin: 0 0 16px;
  border-bottom: 1px solid #edf0f4;
}
#page[data-vp-single="microblog"] .vp-single-thread-heading h1 { margin: 0; color: #283548; font-size: 17px; line-height: 1.5; }
#page[data-vp-single="microblog"] .vp-single-back-link { color: #66748a; font-size: 12px; text-decoration: none; }
#page[data-vp-single="microblog"] .microblog-post { margin: 0; }
#page[data-vp-single="microblog"] .microblog-header {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 4px 10px;
  align-items: start;
  position: relative;
  width: 100% !important;
  float: none !important;
  margin: 0 !important;
}
#page[data-vp-single="microblog"] .vp-single-thread-avatar {
  grid-column: 1;
  grid-row: 1 / span 3;
  float: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
#page[data-vp-single="microblog"] .microblog-avatar { display: block; width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
#page[data-vp-single="microblog"] :is(.vp-single-thread-author, .vp-single-thread-main, .vp-single-thread-actions) { grid-column: 2; min-width: 0; float: none; }
#page[data-vp-single="microblog"] .microblog-user-info { display: flex; flex-wrap: wrap; gap: 2px 6px; align-items: baseline; }
#page[data-vp-single="microblog"] .microblog-user-info > div { float: none; min-width: 0; }
#page[data-vp-single="microblog"] .microblog-username { font-size: 14px; font-weight: 700; color: #293548; overflow-wrap: anywhere; }
#page[data-vp-single="microblog"] .microblog-at-username { font-size: 12px; color: #758096; overflow-wrap: anywhere; }
#page[data-vp-single="microblog"] .microblog-content { width: 100%; max-width: 100%; min-width: 0; float: none; }
#page[data-vp-single="microblog"] .vp-single-reading { font-size: 14px; line-height: 1.8; overflow-wrap: anywhere; }
#page[data-vp-single="microblog"] .vp-single-reading > p { margin: 0 0 .75em; padding: 0; }
#page[data-vp-single="microblog"] .vp-single-reading > :last-child { margin-bottom: 0; }
#page[data-vp-single="microblog"] .actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 3px 8px;
  margin: 8px 0 0 !important;
  color: #758096;
  font-size: 12px;
  line-height: 1.5;
}
#page[data-vp-single="microblog"] .actions > div { display: inline-flex; align-items: center; float: none !important; margin: 0 !important; }
#page[data-vp-single="microblog"] .actions > div[style="clear:both"] { display: none; }
#page[data-vp-single="microblog"] .actions :is(.reply-toggle, .toggle-reply, .bookmark-icon),
#page[data-vp-single="microblog"] :is(.show-profile, .delete-microblog-post) {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  min-width: 32px;
  padding: 5px 6px;
  margin: 0;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: #65748b;
  font: inherit;
  font-size: 12px;
  line-height: 1.4;
  cursor: pointer;
}
#page[data-vp-single="microblog"] .actions button:hover,
#page[data-vp-single="microblog"] .show-profile:hover { background: #f2f5fa; color: #315f86; }
#page[data-vp-single="microblog"] .delete-microblog-post:hover { color: #bd3451; background: #fff0f3; }
#page[data-vp-single="microblog"] .actions button img { width: 20px; height: 20px; margin: 0 !important; }
#page[data-vp-single="microblog"] .actions .microblog-date { color: #758096; font-size: 11px; }
#page[data-vp-single="microblog"] .vp-single-replies { padding: 16px 0 0; margin-top: 14px; border-top: 1px solid #e8ecf1; }
#page[data-vp-single="microblog"] .vp-single-replies .vp-single-section-title { display: flex; align-items: center; gap: 8px; }
#page[data-vp-single="microblog"] .vp-single-replies .vp-single-section-title > span { color: #7b8495; font-size: 12px; font-weight: 500; }
#page[data-vp-single="microblog"] .vp-single-reply { padding: 14px 0; border-bottom: 1px solid #edf0f4; }
#page[data-vp-single="microblog"] .vp-single-reply:last-child { border-bottom: 0; }
#page[data-vp-single="microblog"] .highlight { background: #fffbea; box-shadow: inset 3px 0 #e9c455; border-radius: 8px; }
#page[data-vp-single="microblog"] .link-card { margin: 10px 0; border: 1px solid #e6eaf0; border-radius: 10px; overflow: hidden; }
#page[data-vp-single="microblog"] .link-card > a { display: flex; align-items: center; color: #334155; text-decoration: none; }
#page[data-vp-single="microblog"] .link-card > a > img { flex: 0 0 88px; width: 88px; height: 78px; object-fit: cover; }
#page[data-vp-single="microblog"] .link-card-content { flex: 1; min-width: 0; padding: 10px; }
#page[data-vp-single="microblog"] .link-card-title { color: #334155; font-size: 13px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
#page[data-vp-single="microblog"] .link-card-bottom-text { margin-top: 4px; color: #758096; font-size: 11px; }
@media (max-width: 900px) {
  #page[data-vp-single="blog"] .vp-single-recent > .bonus-posts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.logged-in #page[data-vp-single="microblog"] { margin-top: 82px; }
}
@media (max-width: 480px) {
  #page[data-vp-single="blog"] .vp-single-author-profile { grid-template-columns: 82px minmax(0, 1fr); gap: 10px; }
  #page[data-vp-single="blog"] .vp-single-author-avatar { width: 82px; font-size: 11px; }
  #page[data-vp-single="blog"] .vp-single-author-avatar > img { width: 66px !important; height: 66px !important; }
  #page[data-vp-single="blog"] .vp-single-article-heading { padding: 14px 14px 10px; }
  #page[data-vp-single="blog"] .vp-single-editorial-body { padding: 0 14px 16px; }
  #page[data-vp-single="blog"] .vp-single-recent { padding: 14px !important; }
  #page[data-vp-single="microblog"] .vp-microblog-detail-body { padding-inline: 10px; }
  #page[data-vp-single="microblog"] .microblog-header { grid-template-columns: 46px minmax(0, 1fr); gap: 4px 8px; }
  #page[data-vp-single="microblog"] .microblog-avatar { width: 40px; height: 40px; }
  #page[data-vp-single="microblog"] .link-card > a > img { flex-basis: 68px; width: 68px; height: 68px; }
}
