/* ============================================================================
   WP-COMPAT.CSS · WordPress-specific helpers layered on top of Signal & Slate.
   Keeps the original design files untouched while covering core WP classes.
   ========================================================================== */

/* Admin bar offset for the fixed header */
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }

/* Core alignment + caption classes (required for theme review / editor) */
.alignleft  { float: left;  margin: 0.5rem 1.5rem 1rem 0; }
.alignright { float: right; margin: 0.5rem 0 1rem 1.5rem; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignwide, .alignfull { max-width: none; }
.wp-caption { max-width: 100%; }
.wp-caption-text,
figcaption {
  font-size: var(--fs-xs);
  color: var(--color-faint);
  text-align: center;
  margin-top: var(--space-2);
}

/* Screen-reader text (WP standard) */
.screen-reader-text {
  border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);
  height: 1px; width: 1px; margin: -1px; overflow: hidden;
  padding: 0; position: absolute; word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: var(--bg-surface); color: var(--text);
  clip: auto !important; clip-path: none;
  display: block; height: auto; width: auto;
  left: 5px; top: 5px; padding: 1rem 1.5rem; z-index: 100000;
  border-radius: var(--radius-btn); box-shadow: var(--shadow-md);
}

/* Post content media */
.prose img, .prose video { max-width: 100%; height: auto; border-radius: var(--radius-media); }
.prose .wp-block-embed iframe { max-width: 100%; }

/* Sticky post marker (kept invisible, class required by WP) */
.sticky { display: block; }
.bypostauthor { display: block; }

/* Real cover images inside the placeholder frames */
.work-cover img, .post-cover img, .post-featured .cover img,
.article-cover img, .portrait-ph img, .hero-portrait img, .about-portrait img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
.hero-portrait > img, .about-portrait > img {
  border-radius: var(--radius-card); box-shadow: var(--shadow-lg);
}
.article-cover img { border-radius: var(--radius-media); }
.cert-image-ph img { width: 100%; height: auto; border-radius: var(--radius-media); }
.logo-tile img { max-width: 100%; max-height: 100%; object-fit: contain; }

/* Pagination (blog archives) */
.mr-pagination {
  display: flex; flex-wrap: wrap; gap: var(--space-2);
  justify-content: center; margin-top: var(--space-6);
}
.mr-pagination .page-numbers {
  font-family: var(--font-mono); font-size: var(--fs-xs);
  padding: 0.55rem 0.95rem; border: 1px solid var(--border);
  border-radius: var(--radius-btn); color: var(--text-muted);
  text-decoration: none; transition: all var(--dur-fast) var(--ease);
}
.mr-pagination .page-numbers.current,
.mr-pagination .page-numbers:hover {
  background: var(--brand); border-color: var(--brand); color: #fff;
}

/* Search form */
.mr-search-form { display: flex; gap: var(--space-2); max-width: 480px; }
.mr-search-form input[type="search"] {
  flex: 1; padding: 0.7rem 1rem; font: inherit; color: var(--text);
  background: var(--bg-surface); border: 1px solid var(--border);
  border-radius: var(--radius-btn);
}
.mr-search-form input[type="search"]:focus { outline: 2px solid var(--accent); outline-offset: 1px; }
