
/* R129 private visual overlay: scoped ONLY to .r129-detail after Social R127 48/audio QA.
   Never masks missing media or removes focus outline. */
body.r129-detail{background:#071117;color:#e9e2d8}
body.r129-detail .site-header{gap:clamp(10px,2.5vw,36px);align-items:center}
body.r129-detail .wordmark{display:inline-flex;align-items:center;gap:12px;letter-spacing:.17em}
body.r129-detail .r129-owner-symbol{display:block;object-fit:contain;flex:0 0 auto;width:36px;height:36px}
body.r129-detail .r13-layout{gap:clamp(20px,3vw,52px)}
body.r129-detail .r13-view{min-width:0}
body.r129-detail .r13-view h1{overflow-wrap:anywhere;hyphens:auto;line-height:1.14}
body.r129-detail .release-audio{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);align-items:start;gap:24px}
body.r129-detail .release-audio img{display:block;max-width:100%;height:auto;grid-row:span 2}
body.r129-detail .release-audio audio{width:100%;min-width:0;max-width:100%;align-self:end}
body.r129-detail .r13-player{min-width:0}
body.r129-detail .r13-player img{max-width:100%;height:auto}
body.r129-detail .site-footer{align-items:center;flex-wrap:wrap;gap:14px}
body.r129-detail :is(a,button,input,audio):focus-visible{outline:3px solid #ffe0a3;outline-offset:3px}
@media(max-width:880px){
 body.r129-detail .r13-layout{display:block}
 body.r129-detail .r13-player{margin:24px auto 0;max-width:480px}
 body.r129-detail .release-audio{grid-template-columns:minmax(0,200px) minmax(0,1fr)}
}
@media(max-width:560px){
 body.r129-detail .release-audio{display:block}
 body.r129-detail .release-audio img{max-width:min(100%,300px);height:auto;margin:0 0 14px}
 body.r129-detail .release-audio audio{display:block;margin:18px 0}
 body.r129-detail .wordmark{letter-spacing:.07em}
 body.r129-detail .r129-owner-symbol{width:29px;height:29px}
 body.r129-detail .r13-view h1{font-size:clamp(30px,9vw,43px)}
}
@media(prefers-reduced-motion:reduce){body.r129-detail *,body.r129-detail *:before,body.r129-detail *:after{scroll-behavior:auto}}
