/* The social feed uses the same room, paper and score vocabulary as Reviews.
   Kept after the page's legacy rules; profile/game-detail feeds are unchanged. */
html body.feed-page main {
  width: 100%; max-width: var(--gg-content-width); box-sizing: border-box;
  margin-inline: auto; padding: 32px var(--gg-gutter) 48px;
}
.feed-page main > :is(.gg-phead, .social-subnav, .feed-container, .feed-empty) {
  max-width: 1040px; margin-inline: auto; box-sizing: border-box;
}
.feed-page main > .gg-phead { padding: 0 0 24px; }
.feed-page .gg-phead h1 { font-family: var(--gg-font-serif); font-weight: 600; }
.feed-page .social-subnav { width: 100%; justify-content: flex-start; gap: 8px; padding: 0 0 20px; margin-bottom: 24px; border-bottom: 1px solid var(--gg-room-line); }
.feed-page .social-subnav a {
  min-height: 44px; padding: 0 16px; box-sizing: border-box;
  border-radius: 6px; background: var(--gg-room-2); border-color: var(--gg-room-line);
  color: var(--gg-room-tx-2); font: 650 13px/1.3 var(--gg-font-case);
  transition: background-color 150ms ease, color 150ms ease, border-color 150ms ease;
}
.feed-page .social-subnav a.active { background: var(--gg-accent-soft); border-color: var(--gg-accent); color: var(--gg-accent-light); box-shadow: none; }
.feed-page .social-subnav a:hover { background: var(--gg-room-3); border-color: var(--gg-room-line-2); }
.feed-page .feed-container { gap: 20px; }
html body.feed-page .feed-item.gg-press {
  padding: 22px 24px 16px; border-radius: 3px;
  box-shadow: 0 2px 6px rgba(0,0,0,.12);
}
.feed-page .gg-press .feed-header {
  align-items: center; padding-bottom: 12px; margin-bottom: 16px;
  border-bottom: 1px solid var(--gg-rule);
}
.feed-page .feed-header-left, .feed-page .feed-header-meta { min-width: 0; }
.feed-page .feed-avatar { flex: none; }
.feed-page .feed-name-row { min-width: 0; }
.feed-page .gg-press .feed-username { max-width: 100%; overflow-wrap: anywhere; white-space: normal; font-size: 14px; }
.feed-page .gg-press .feed-time { letter-spacing: 0; text-transform: none; font-size: 12px; }
.feed-page .gg-press .feed-rp { font-weight: 500; letter-spacing: 0; }
.feed-page .gg-press .feed-content { gap: 12px; margin-bottom: 16px; }
.feed-page .gg-press .feed-game-title {
  font: 600 clamp(26px, 3vw, 34px)/1.15 var(--gg-font-serif);
  margin: 0; text-wrap: pretty; overflow-wrap: anywhere;
}
.feed-page .gg-press .feed-content > .gg-editorial-headline { margin: 0; }
.feed-page .gg-press .feed-content-row {
  display: grid; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.25fr);
  align-items: start; gap: 16px 20px;
}
.feed-page .gg-press .feed-cover { width: 100%; min-width: 0; }
.feed-page .gg-press .feed-cover .gg-photo { aspect-ratio: 2 / 1; border-radius: 2px; }
.feed-page .gg-press .feed-cover .cover-placeholder { aspect-ratio: 2 / 1; }
.feed-page .gg-press .feed-details { display: contents; }
.feed-page .gg-press .feed-cover { grid-column: 1; grid-row: 1 / 3; }
.feed-page .gg-press .feed-scores { grid-column: 2; grid-row: 1; }
.feed-page .gg-press .feed-attributes { grid-column: 2; grid-row: 2; }
.feed-page .gg-press .feed-body { grid-column: 1 / -1; }
.feed-page .gg-press .feed-scores {
  grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0;
  padding: 8px 0 12px; border-top: 0; gap: 0;
}
.feed-page .gg-press .feed-scores .score { min-width: 0; width: auto; padding: 0 5px; border-radius: 0; box-shadow: none; }
html body.feed-page .gg-press .feed-scores .score .label { font-size: 11px !important; letter-spacing: 0 !important; font-weight: 650; }
.feed-page .gg-press .feed-scores .score .gg-pscore { font-size: 28px; }
.feed-page .gg-press .feed-attributes { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 8px; margin: 0; }
.feed-page .gg-press .feed-attribute,
.feed-page .gg-press .feed-attribute + .feed-attribute { border: 0; padding: 0; min-width: 0; }
.feed-page .gg-press .feed-attribute .label { font-size: 11px; letter-spacing: .02em; overflow-wrap: anywhere; }
.feed-page .gg-press .feed-attribute .value { overflow-wrap: anywhere; font-size: 13px; font-weight: 500; }
.feed-page .gg-press .feed-body { font: 400 17px/1.55 var(--gg-font-serif); }
.feed-page .feed-body:empty { display: none; }
.feed-page .gg-press .feed-actions { gap: 12px; flex-wrap: wrap; margin: 0; padding-top: 10px; }
.feed-page .gg-press .vote-control { padding: 0 2px; border: 0; background: none; border-radius: 3px; gap: 2px; }
.feed-page .gg-press .vote-control:is(.is-upvoted, .is-downvoted) { background-image: none; }
.feed-page .gg-press .vote-btn { width: 44px; height: 44px; border-radius: 3px; }
.feed-page .gg-press .vote-btn:hover { background: var(--gg-paper-2); color: var(--gg-ink); }
.feed-page .gg-press .vote-control.is-downvoted :is(.vote-down, .vote-score) { color: var(--gg-press-accent); }
.feed-page .gg-press .share-btn { padding: 0 10px; border-color: transparent; border-radius: 3px; font: 600 12px var(--gg-font-case); }
.feed-page .gg-press .view-link { font: 650 12px/1.4 var(--gg-font-case); letter-spacing: 0; text-transform: none; }
.feed-page :is(.social-subnav a, .feed-game-link, .feed-username, .view-link, .share-btn, .vote-btn, .feed-read-more):focus-visible { outline: 2px solid var(--gg-accent); outline-offset: 3px; }
@media (max-width: 768px) {
  html body.feed-page main { padding-top: 24px; }
  .feed-page main > .gg-phead { padding-bottom: 20px; }
  .feed-page .social-subnav { gap: 6px; margin-bottom: 20px; }
  .feed-page .social-subnav a { padding-inline: 6px; font-size: 12px; }
  html body.feed-page .feed-item.gg-press { padding: 16px 14px 12px; }
  .feed-page .gg-press .feed-header { flex-wrap: wrap; gap: 8px; }
  .feed-page .feed-header-left { flex-basis: calc(100% - 84px); }
  .feed-page .gg-press .feed-time { margin-left: auto; font-size: 11px; }
  .feed-page .gg-press .feed-content-row { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .feed-page .gg-press :is(.feed-cover, .feed-scores, .feed-attributes, .feed-body) { grid-column: 1; grid-row: auto; }
  .feed-page .gg-press .feed-scores .score .gg-pscore { font-size: 26px; }
  .feed-page .gg-press .feed-attributes { gap: 12px 6px; }
  .feed-page .gg-press .feed-attribute { display: grid; grid-template-rows: 28px auto; gap: 4px; align-content: start; }
  .feed-page .gg-press .feed-attribute .label { font-size: 10px; letter-spacing: 0; }
  .feed-page .gg-press .feed-attribute .value { font-size: 12px; }
  .feed-page .gg-press .feed-attribute .scale-icons { gap: 2px; }
  .feed-page .gg-press .feed-attribute .scale-icons i { width: 10px; height: 12px; }
  .feed-page .gg-press .feed-body { font-size: 16px; }
  .feed-page .gg-press .feed-actions { gap: 6px; }
  .feed-page .gg-press .view-link { padding-inline: 4px; }
}
@media (max-width: 360px) {
  .feed-page .gg-press .feed-scores .score { padding-inline: 2px; }
  .feed-page .gg-press .feed-actions .view-link { margin-left: 0; flex-basis: 100%; justify-content: flex-end; }
}
