/* Restore the outer frame from the original portfolio. */
html { background: #171716; }
body {
  width: calc(100% - 64px);
  max-width: 1360px;
  min-height: calc(100vh - 56px);
  margin: 28px auto;
  border: 6px solid #50504e;
  border-radius: 16px;
  box-shadow: 0 0 70px rgba(0, 0, 0, .35);
}
.header { border-radius: 10px 10px 0 0; }
.footer { border-radius: 0 0 10px 10px; }
@media (max-width: 760px) {
  body {
    width: calc(100% - 24px);
    min-height: calc(100vh - 24px);
    margin: 12px auto;
    border-width: 3px;
    border-radius: 12px;
  }
  .header { border-radius: 9px 9px 0 0; }
  .footer { border-radius: 0 0 9px 9px; }
}

/* Keep the whole portrait visible at its original proportions. */
.profile { width: 100%; max-width: 350px; justify-self: center; }
.portrait { height: auto; aspect-ratio: 784 / 1209; }
.portrait img { display: block; width: 100%; height: auto; }
.profile-top { gap: 16px; }
.profile-top > :last-child { flex-shrink: 0; }
.hero-grid > *, .video-card { min-width: 0; }
.video-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.featured-media { position: relative; }
/* Cover the paused picture while leaving the native control bar accessible. */
.featured-play-surface { position: absolute; inset: 0 0 54px; width: 100%; padding: 0; border: 0; background: transparent; cursor: pointer; }
.featured-play-surface:focus-visible { outline: 3px solid var(--orange); outline-offset: -3px; }
.featured-player { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; background: #000; border-bottom: 1px solid var(--line); }
.featured-player:focus-visible { outline: 3px solid var(--orange); outline-offset: -3px; }
.video-body h3, .video-body p { overflow-wrap: anywhere; }
.video-body p { white-space: pre-wrap; }
.video-body .video-error { color: #ffa99a; }
#featured-status { color: var(--muted); font-size: 14px; }
[hidden] { display: none !important; }
@media (max-width: 1000px) and (min-width: 761px) { .video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) { .video-grid { grid-template-columns: 1fr; } }
