/* Estilos base para contenido de artículos */
.blog-article .post-content { font-size: 1.05rem; line-height: 1.75; }
.blog-article .post-content table { width:100%; border-collapse: collapse; margin:2rem 0; }
.blog-article .post-content th, .blog-article .post-content td { border:1px solid var(--discord-border); padding:0.75rem 1rem; }
.blog-article .post-content th { background: var(--discord-dark); color: var(--discord-text-light); text-align:left; }
.blog-article .post-content tr:nth-child(even){ background: var(--discord-darkest); }
.blog-article .post-content code { background: var(--discord-darkest); padding:0.25rem 0.45rem; border-radius:4px; font-size:0.9rem; }
.blog-article .post-content pre code { background:none; padding:0; }
.blog-article .post-content pre { background: var(--discord-darkest); padding:1.25rem 1.5rem; border-radius:8px; overflow:auto; }
.blog-article .post-content figure { margin:2rem 0; text-align:center; }
.blog-article .post-content figure img { max-width:100%; border-radius:8px; box-shadow:0 4px 12px rgba(0,0,0,0.4); }
.blog-article .post-content figure figcaption { margin-top:0.5rem; font-size:0.85rem; color: var(--discord-text-muted); }
.blog-article .post-content blockquote { border-left:4px solid var(--discord-blurple); background:rgba(88,101,242,0.08); padding:1.25rem 1.5rem; border-radius:0 8px 8px 0; font-style:italic; }
.blog-article .post-content hr { border:0; border-top:1px solid var(--discord-border); margin:3rem 0; }
.blog-article .post-content ul, .blog-article .post-content ol { padding-left:1.4rem; margin-bottom:1.5rem; }
.blog-article .post-content li { margin-bottom:0.4rem; }
.blog-article .post-content h1, .blog-article .post-content h2, .blog-article .post-content h3, .blog-article .post-content h4 { scroll-margin-top:100px; }
/* Responsive media embeds */
.blog-article .post-content .embed-responsive { position:relative; width:100%; padding-bottom:56.25%; margin:2rem 0; }
.blog-article .post-content .embed-responsive iframe,
.blog-article .post-content .embed-responsive video { position:absolute; top:0; left:0; width:100%; height:100%; border:0; border-radius:8px; box-shadow:0 4px 12px rgba(0,0,0,0.4); }
/* Direct iframe/video without wrapper */
.blog-article .post-content iframe:not([width]),
.blog-article .post-content video:not([width]) { max-width:100%; width:100%; aspect-ratio:16/9; border:0; }
@media (max-width: 768px){
  .blog-article .post-content { padding:1.5rem !important; }
  .blog-article .post-content table, .blog-article .post-content pre { font-size:0.9rem; }
}
