/* Additions on top of the original WordPress theme styles (theme.css). */

/* [caption] shortcodes are converted to <figure>; mirror the theme's .wp-caption rules. */
figure.wp-caption { margin-top: 5px; margin-bottom: 20px; }
figure.wp-caption.aligncenter { margin-left: auto; margin-right: auto; }
.wp-caption .wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Images inside posts never overflow the column. */
.entry-summary img { max-width: 100%; height: auto; }
.entry-summary table { max-width: 100%; }
.entry-summary pre { white-space: pre-wrap; }

/* [embed] video */
.wp-block-embed .embed-responsive { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.wp-block-embed .embed-responsive iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

/* Page titles are h1 (SEO) but keep the old blog's h2 look: h2.entry-title in theme.css,
   and the 30px Bootstrap h2 size for .st-page-title. */
h1.entry-title { margin: 0 0 15px; font-weight: 600; font-size: 24px; }
h1.st-page-title { font-size: 30px; }
.single .entry-title, .page .entry-title { margin-top: 0; }

.error-404 ul { padding-left: 20px; margin-top: 15px; }
.error-404 li { margin-bottom: 6px; }

/* Lightbox for links to full-size images (replaces the jQuery Lightbox WP plugin). */
.hb-lightbox {
    position: fixed; inset: 0; z-index: 10000;
    display: flex; align-items: center; justify-content: center;
    background: rgba(0, 0, 0, .85); cursor: zoom-out; padding: 20px;
}
.hb-lightbox img { max-width: 100%; max-height: 100%; box-shadow: 0 5px 30px rgba(0, 0, 0, .5); background: #fff; }

/* Breadcrumb above posts and archive pages. */
.hb-breadcrumb ol { list-style: none; margin: 0 0 15px; padding: 0; font-size: 13px; color: #777; }
.hb-breadcrumb li { display: inline; }
.hb-breadcrumb li + li::before { content: "\203A"; padding: 0 6px; color: #aaa; }
.hb-breadcrumb li[aria-current] { color: #555; }

.archive-description { margin: -5px 0 20px; color: #666; }

/* Related posts under a post. */
.hb-related { margin: 30px 0; }
.hb-related h2 { font-size: 20px; font-weight: 600; margin: 0 0 12px; }
.hb-related ul { padding-left: 20px; margin: 0; }
.hb-related li { margin-bottom: 6px; }
.hb-related time { color: #999; font-size: 12px; margin-left: 4px; }
