/* Player profiles share the site's quiet blue surfaces and flat pixel avatars. */
.player-heading { display: flex; align-items: center; gap: 22px; padding: 28px; background: #edf6fb; }
.player-heading .profile-avatar { flex: 0 0 88px; width: 88px; height: 88px; border: 4px solid white; border-radius: 12px; background: #dcecf5; box-shadow: 0 5px 16px #264c6110; overflow: hidden; }
.skin-head-host { display: block; width: 100%; height: 100%; }
.minecraft-head { display: block; width: 100%; height: 100%; object-fit: contain; image-rendering: pixelated; }
.skin-head-fallback { display: grid; place-items: center; height: 100%; width: 100%; background: #dbeaf3; color: #387c9c; font-weight: 800; }
.player-identity-copy { min-width: 0; flex: 1; }
.player-heading h1 { margin: 7px 0 9px; font: 800 clamp(20px, 2.4vw, 30px)/1.15 var(--display); letter-spacing: -.045em; overflow-wrap: anywhere; }
.player-heading .online-label { color: #647e8b; font-size: 11px; }
.player-mode { display: inline-flex; align-items: center; gap: 8px; width: fit-content; flex-shrink: 0; padding: 9px 13px; border: 1px solid #c9e2ef; border-radius: 9px; background: #ffffffad; color: #337894; font-size: 12px; font-weight: 700; }
.player-mode::before { content: ''; width: 7px; height: 7px; border-radius: 2px; background: #62a8c8; }
.profile-card { border-color: #dbe8ee; box-shadow: none; }
.network-app { --profile-columns: minmax(0, 1fr) 300px; }
.player-dashboard { display: grid; grid-template-columns: var(--profile-columns); gap: 18px; margin: 18px 0; align-items: start; }
.player-panel { padding: 24px; border-color: #dbe8ee; box-shadow: none; min-width: 0; }
.player-panel h2 { font: 800 18px/1.3 var(--display); letter-spacing: -.035em; margin: 0 0 22px; }
.player-vitals { grid-column: 1; }
.player-information { grid-column: 2; grid-row: 1 / span 2; }
.player-inventory { grid-column: 1; grid-row: 2; }
.player-experience { margin-bottom: 22px; }
.experience-label { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; margin-bottom: 10px; }
.experience-label strong { font-size: 13px; }
.experience-label span { color: #7b8c96; font-size: 10px; text-align: right; }
.experience-bar { display: block; width: 100%; height: 8px; appearance: none; border: 0; border-radius: 4px; overflow: hidden; background: #eaf1f5; }
.experience-bar::-webkit-progress-bar { background: #eaf1f5; }
.experience-bar::-webkit-progress-value { background: #62aeca; border-radius: 4px; }
.experience-bar::-moz-progress-bar { background: #62aeca; border-radius: 4px; }
.player-vital-row { display: flex; align-items: center; gap: 15px; margin-top: 14px; }
.vital-name { width: 65px; flex-shrink: 0; color: #71818d; font-size: 11px; }
.player-vital-row .heart-row, .player-vital-row .food-row { display: flex; gap: clamp(3px, .6vw, 7px); margin: 0; flex: 1; }
.player-vital-row .heart-cell, .player-vital-row .food-cell { width: 16px; height: 16px; flex: 0 1 16px; }
.player-vital-row strong { margin-left: auto; white-space: nowrap; font-size: 11px; font-weight: 600; color: #607580; }
.inventory-caption { display: block; color: #7b8c96; font-size: 10px; margin-bottom: 9px; }
.player-equipment { margin-bottom: 20px; }
.player-equipment-slots { display: grid; grid-template-columns: repeat(5, minmax(0, 42px)); gap: 5px; }
.player-slot-grid { display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 4px; }
.player-dashboard .item-slot { min-width: 0; min-height: 0; border: 1px solid #ccdee8; border-radius: 5px; background: #eef4f8; box-shadow: inset 0 1px 1px #ffffff; }
.player-dashboard .item-slot:focus-visible { outline: 2px solid #358fad; outline-offset: 2px; z-index: 2; }
.player-dashboard .item-slot:hover { background: #e0edf5; filter: none; }
.player-dashboard .item-slot canvas, .player-dashboard .item-slot img { position: absolute; }
.player-dashboard .item-count { font-size: 12px; text-shadow: 1px 1px #233a49, -1px 1px #233a49, 1px -1px #233a49, -1px -1px #233a49; }
.player-dashboard .item-slot[data-kind="shield"]::after { border-color: #88aaba; }
.hotbar-caption { margin-top: 17px; }
.player-hotbar .item-slot { border-color: #aacedd; background: #e5f1f7; }
.inventory-hint { margin-top: 16px; color: #84939b; font-size: 10px; line-height: 1.5; }
.player-location { border-bottom: 1px solid #e6eef2; padding: 16px 0; }
.player-location:first-of-type { padding-top: 0; }
.player-location summary { cursor: pointer; color: #395b6d; font-size: 12px; font-weight: 650; list-style: none; display: flex; justify-content: space-between; gap: 10px; }
.player-location summary::-webkit-details-marker { display: none; }
.player-location summary::after { content: '+'; font-size: 17px; line-height: 1; font-weight: 400; color: #7b9fb0; }
.player-location[open] summary::after { content: '−'; }
.player-location summary:focus-visible { outline: 2px solid #358fad; outline-offset: 5px; border-radius: 2px; }
.location-world { margin-top: 16px; color: #7b8c96; font-size: 11px; }
.player-coordinates { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 16px; }
.player-coordinates > div { min-width: 56px; flex: 1; padding: 9px; background: #f0f6fa; border-radius: 7px; }
.player-coordinates dt { font-size: 9px; color: #83a0b0; }
.player-coordinates dd { margin: 5px 0 0; font: 600 12px ui-monospace, monospace; color: #466678; }
.player-location .text-link { font-size: 10px; }
.player-muted { color: #71818d; font-size: 12px; line-height: 1.7; margin-top: 14px; }
.player-snapshot-note { color: #8b9aa3; font-size: 10px; line-height: 1.6; margin-top: 24px; }
.public-profile-hero { background: #edf6fb; border-color: #dbe8ee; color: var(--net-ink); box-shadow: none; }
.public-profile-identity h1 { white-space: normal; overflow-wrap: anywhere; font-size: clamp(20px,2.4vw,30px); }
.public-profile-identity p { color: #637a86; }
.public-avatar { border: 4px solid white; background: #dcecf5; border-radius: 12px; }
.public-status, .public-identity-meta { color: #647e8b; }
.public-status.online { color: #25814e; }
.public-identity-meta span { border-color: #cadfe9; color: #587482; background: #f8fcfe; }
.public-identity-meta b { color: #277891; }
.public-avatar i { border-color: #edf6fb; }
.public-avatar .minecraft-head { border-radius: 8px; }
.public-profile-hero .button.subtle { border-color: #cadfe9; background: #f8fcfe; color: #395b6d; }
.public-profile-hero .button.quiet { color: #637a86; }
.public-profile-hero .player-mode { margin-top: 12px; }
@media (max-width: 1120px) {
  .network-app { --profile-columns: minmax(0, 1fr) 260px; }
  .player-panel { padding: 20px; }
  .player-vital-row { gap: 7px; }
  .vital-name { width: 58px; }
}
@media (max-width: 900px) {
}
@media (max-width: 680px) {
  .player-dashboard { grid-template-columns: minmax(0,1fr); }
  .player-information, .player-vitals, .player-inventory { grid-column: auto; grid-row: auto; }
  .player-heading { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 14px; padding: 20px; }
  .player-heading > .player-mode { grid-column: 2; }
  .player-heading .profile-avatar { width: 64px; height: 64px; flex-basis: 64px; }
  .player-heading h1 { font-size: clamp(17px, 4vw, 25px); }
  .player-mode { font-size: 11px; }
  .player-panel h2 { font-size: 17px; }
  .player-vital-row .heart-cell, .player-vital-row .food-cell { width: 14px; height: 14px; }
  .player-dashboard .item-count { font-size: 10px; right: 2px; bottom: 1px; }
  .player-slot-grid { gap: 3px; }
  .public-profile-identity { gap: 14px; }
  .public-avatar { width: 64px; height: 64px; flex-basis: 64px; }
}
@media (max-width: 370px) {
  .player-panel { padding: 16px; }
  .player-vital-row { flex-wrap: wrap; }
  .player-vital-row .heart-row, .player-vital-row .food-row { gap: 3px; }
  .player-heading { padding: 16px; }
}

/* One pair of column widths for game state, wall and social cards. */
.profile-layout { display: grid; grid-template-columns: var(--profile-columns); gap: 18px; margin-top: 18px; align-items: start; }
.profile-layout .profile-main-column, .profile-layout .profile-side-column { min-width: 0; grid-template-columns: minmax(0, 1fr); gap: 18px; }
[data-own-dashboard] .player-dashboard { grid-template-columns: minmax(0, 1fr); margin: 0; gap: 18px; }
[data-own-dashboard] .player-panel { grid-column: auto; grid-row: auto; }
.profile-layout .wall-section, .profile-layout .compact-panel { padding: 24px; border-color: #dbe8ee; }
.profile-layout .section-heading h2, .profile-layout .section-heading h3 { font: 800 18px/1.3 var(--display); letter-spacing: -.035em; }
.profile-count { display: inline-grid; place-items: center; min-width: 24px; height: 24px; margin-left: 5px; padding: 0 6px; border-radius: 7px; background: #edf6fb; color: #537b90; font: 700 12px var(--body, sans-serif); vertical-align: middle; }
.profile-layout .avatar-grid > .rail-empty { grid-column: 1 / -1; }
.profile-layout .rail-empty { font-size: 12px; line-height: 1.6; }
@media (max-width: 1120px) {
  .profile-layout .wall-section, .profile-layout .compact-panel { padding: 20px; }
}
@media (max-width: 680px) {
  .profile-layout { display: flex; flex-direction: column; gap: 18px; }
  .profile-layout .profile-main-column, [data-own-dashboard], [data-own-dashboard] .player-dashboard { display: contents; }
  .profile-layout .player-vitals { order: 0; }
  .profile-layout .profile-side-column { order: 1; display: grid; }
  .profile-layout .player-inventory { order: 2; }
  .profile-layout .wall-section { order: 3; }
  .profile-layout .player-panel, .profile-layout .profile-side-column, .profile-layout .wall-section { width: 100%; }
}

/* Every route uses the same outer shell; the feed rail lives inside its page. */
html { scrollbar-gutter: stable; }
.network-app .network-layout { width: min(1380px, 100%); max-width: 1380px; grid-template-columns: 190px minmax(0, 1fr); }
.network-topbar-inner { width: min(1380px, 100%); grid-template-columns: 190px minmax(250px, 430px) 1fr; gap: 26px; }
.feed-layout { display: grid; grid-template-columns: var(--profile-columns); gap: 18px; align-items: start; }
.feed-main { min-width: 0; }
.feed-layout .network-rail { display: grid; }
.player-heading .player-rank, .public-profile-identity .player-rank { display: inline-flex; width: fit-content; align-items: center; padding: 5px 11px; margin-top: 7px; border: 1px solid #d0e4ee; border-radius: 999px; background: #ffffffa8; color: #52798c; font-size: 11px; font-weight: 650; line-height: 1.4; }
@media (max-width: 900px) {
  .network-app .network-layout { grid-template-columns: minmax(0, 1fr); }
  .network-topbar-inner { grid-template-columns: 1fr minmax(200px,330px) auto; }
}
@media (max-width: 680px) {
  .network-topbar-inner { grid-template-columns: 1fr auto; gap: 10px; }
  .feed-layout { grid-template-columns: minmax(0, 1fr); }
  .feed-layout .network-rail { display: none; }
}
/* Avatar wrappers must not inherit the post author's text spacing. */
:is(.sidebar-avatar, .mini-avatar, .person-avatar, .public-avatar, .profile-avatar) { flex-shrink: 0; line-height: 0; }
:is(.sidebar-avatar, .mini-avatar, .person-avatar) { border-radius: 12%; }
:is(.sidebar-avatar, .mini-avatar, .person-avatar, .public-avatar, .profile-avatar) .skin-head-host { display: block; width: 100%; height: 100%; margin: 0; border-radius: inherit; overflow: hidden; }
:is(.sidebar-avatar, .mini-avatar, .person-avatar, .public-avatar, .profile-avatar) > img { display: block; border-radius: inherit; }
.sidebar-user { align-items: center; }
