/**
 * SleepBaby Site Reliability & Sync - public compatibility layer.
 * This file repairs the existing theme shell; it does not restyle article copy.
 */
:root {
  --sbsrs-admin-offset: 0px;
  --sbsrs-header-offset: 70px;
}
body.admin-bar { --sbsrs-admin-offset: 32px; }
@media (max-width: 782px) {
  body.admin-bar { --sbsrs-admin-offset: 46px; }
}

/* The old Article Design System used body classes that deliberately hid the
   native WordPress title, featured image, comments, and footer. Native mode
   restores those theme-owned pieces while retaining the rich article body. */
body.sbsrs-native-post .sbds-editorial-hero {
  display: none !important;
}
body.sbsrs-native-post .sb-article-title,
body.sbsrs-native-post .sb-article-dek,
body.sbsrs-native-post .entry-header > .entry-title,
body.sbsrs-native-post .post-header > .post-title,
body.sbsrs-native-post .single-post-header .entry-title,
body.sbsrs-native-post .single-post__header .entry-title,
body.sbsrs-native-post .single-featured-image-header,
body.sbsrs-native-post .post-thumbnail,
body.sbsrs-native-post .featured-image,
body.sbsrs-native-post .single-post__featured-image {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
}
body.sbsrs-native-post.sleepbaby-designed-article #comments,
body.sbsrs-native-post #comments,
body.sbsrs-native-post.sleepbaby-designed-article .comments-area,
body.sbsrs-native-post .comments-area,
body.sbsrs-native-post.sleepbaby-designed-article .comment-area,
body.sbsrs-native-post .comment-area,
body.sbsrs-native-post.sleepbaby-designed-article .sb-conversation-section,
body.sbsrs-native-post .sb-conversation-section,
body.sbsrs-native-post.sleepbaby-designed-article .sb-night-shift-conversation,
body.sbsrs-native-post .sb-night-shift-conversation,
body.sbsrs-native-post .sb-related-posts,
body.sbsrs-native-post .related-posts,
body.sbsrs-native-post .related-articles,
body.sbsrs-native-post .recent-posts,
body.sbsrs-native-post .post-navigation,
body.sbsrs-native-post nav.navigation.post-navigation,
body.sbsrs-native-post footer.site-footer,
body.sbsrs-native-post #colophon {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

/* Header controls must open where the reader already is. The theme may hide
   its sticky header while scrolling; an open panel always wins that contest. */
body.sbsrs-panel-open [data-site-header],
body.sbsrs-panel-open .sb-site-header,
body.sbsrs-panel-open header.site-header,
body.sbsrs-panel-open #masthead,
[data-site-header].sbsrs-panel-active,
.sb-site-header.sbsrs-panel-active,
header.site-header.sbsrs-panel-active,
#masthead.sbsrs-panel-active {
  position: fixed !important;
  z-index: 2147483000 !important;
  top: var(--sbsrs-admin-offset) !important;
  right: 0 !important;
  left: 0 !important;
  width: 100% !important;
  transform: translate3d(0, 0, 0) !important;
  translate: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}
body.sbsrs-panel-open [data-site-header].is-hidden,
body.sbsrs-panel-open .sb-site-header.is-hidden,
body.sbsrs-panel-open header.site-header.is-hidden,
body.sbsrs-panel-open #masthead.is-hidden {
  transform: translate3d(0, 0, 0) !important;
}

body.sbsrs-panel-open [data-search-panel],
body.sbsrs-panel-open [data-mobile-panel],
body.sbsrs-panel-open .sb-search-panel,
body.sbsrs-panel-open .sb-search-overlay,
body.sbsrs-panel-open .site-search-panel,
body.sbsrs-panel-open #site-search,
body.sbsrs-panel-open .search-overlay,
body.sbsrs-panel-open .sb-mobile-panel,
body.sbsrs-panel-open .sb-menu-panel,
body.sbsrs-panel-open .mobile-menu-panel,
body.sbsrs-panel-open #mobile-menu,
body.sbsrs-panel-open .menu-drawer {
  position: fixed !important;
  z-index: 2147482999 !important;
  top: calc(var(--sbsrs-admin-offset) + var(--sbsrs-header-offset)) !important;
  right: 0 !important;
  left: 0 !important;
  width: 100vw !important;
  max-width: none !important;
  margin: 0 !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  pointer-events: auto !important;
  box-shadow: 0 24px 54px rgba(48, 31, 59, .18) !important;
}
body.sbsrs-panel-open [data-search-panel],
body.sbsrs-panel-open .sb-search-panel,
body.sbsrs-panel-open .sb-search-overlay,
body.sbsrs-panel-open .site-search-panel,
body.sbsrs-panel-open #site-search,
body.sbsrs-panel-open .search-overlay {
  max-height: min(360px, calc(100dvh - var(--sbsrs-admin-offset) - var(--sbsrs-header-offset))) !important;
}
body.sbsrs-panel-open [data-mobile-panel],
body.sbsrs-panel-open .sb-mobile-panel,
body.sbsrs-panel-open .sb-menu-panel,
body.sbsrs-panel-open .mobile-menu-panel,
body.sbsrs-panel-open #mobile-menu,
body.sbsrs-panel-open .menu-drawer {
  max-height: calc(100dvh - var(--sbsrs-admin-offset) - var(--sbsrs-header-offset)) !important;
}
body.sbsrs-panel-open::after {
  content: "";
  position: fixed;
  z-index: 2147482998;
  inset: calc(var(--sbsrs-admin-offset) + var(--sbsrs-header-offset)) 0 0;
  background: rgba(43, 31, 49, .16);
  pointer-events: none;
}

/* Real search forms keep the theme design, with a small defensive minimum so
   inputs/buttons remain usable on phones and tablets. */
.sb-search-form input[type="search"],
[data-search-panel] input[type="search"],
[data-mobile-panel] input[type="search"] {
  min-width: 0;
}
.sb-search-form button,
[data-search-panel] button,
[data-mobile-panel] button {
  touch-action: manipulation;
}

/* Designed article bodies keep their appearance while below-fold sections no
   longer participate in the initial paint/layout path. */
body.sbsrs-native-post .sbds-article {
  min-width: 0;
  max-width: 100%;
}
body.sbsrs-native-post .sbds-article > section:nth-of-type(n+3),
body.sbsrs-native-post .sbds-article > figure:nth-of-type(n+2),
body.sbsrs-native-post .sbds-article .sleepbaby-native-visual:nth-of-type(n+2) {
  content-visibility: auto;
  contain-intrinsic-size: auto 720px;
}
body.sbsrs-native-post .sbds-article img {
  max-width: 100%;
}

@media (max-width: 760px) {
  :root { --sbsrs-header-offset: 64px; }
  body.sbsrs-panel-open [data-search-panel],
  body.sbsrs-panel-open [data-mobile-panel],
  body.sbsrs-panel-open .sb-search-panel,
  body.sbsrs-panel-open .sb-search-overlay,
  body.sbsrs-panel-open .site-search-panel,
  body.sbsrs-panel-open #site-search,
  body.sbsrs-panel-open .search-overlay,
  body.sbsrs-panel-open .sb-mobile-panel,
  body.sbsrs-panel-open .sb-menu-panel,
  body.sbsrs-panel-open .mobile-menu-panel,
  body.sbsrs-panel-open #mobile-menu,
  body.sbsrs-panel-open .menu-drawer {
    border-radius: 0 0 22px 22px !important;
  }
  body.sbsrs-panel-open::after { background: rgba(43, 31, 49, .22); }
}

@media (prefers-reduced-motion: reduce) {
  body.sbsrs-panel-open [data-site-header],
  [data-search-panel],
  [data-mobile-panel] {
    transition: none !important;
    animation: none !important;
  }
}


/* v3.1 native-shell parity: taxonomy/byline/guide controls remain theme-owned,
   visible and clickable on Rewrite OS posts just as on legacy posts. */
body.sbsrs-native-post .sb-category-link,
body.sbsrs-native-post .post-categories a,
body.sbsrs-native-post .cat-links a,
body.sbsrs-native-post [rel="category tag"],
body.sbsrs-native-post .sb-article-meta a,
body.sbsrs-native-post .sb-guide-nav,
body.sbsrs-native-post .sb-article-toc,
body.sbsrs-native-post [data-article-guide] {
  visibility:visible !important;opacity:1 !important;pointer-events:auto !important;
}
body.sbsrs-native-post .post-categories a,
body.sbsrs-native-post .cat-links a,
body.sbsrs-native-post [rel="category tag"] { text-decoration-thickness:1px;text-underline-offset:3px; }


/* v3.2 broad theme-panel compatibility. */
body.sbsrs-panel-open .sb-search-panel,
body.sbsrs-panel-open .sb-search-overlay,
body.sbsrs-panel-open .sb-mobile-panel,
body.sbsrs-panel-open .sb-menu-panel,
body.sbsrs-panel-open .mobile-menu-panel,
body.sbsrs-panel-open .search-overlay {
  position:fixed !important;z-index:2147482999 !important;
  top:calc(var(--sbsrs-admin-offset) + var(--sbsrs-header-offset)) !important;
  right:0 !important;left:0 !important;width:100vw !important;max-width:none !important;
  margin:0 !important;transform:none !important;visibility:visible !important;opacity:1 !important;
  overflow-x:hidden !important;overflow-y:auto !important;pointer-events:auto !important;
  max-height:calc(100dvh - var(--sbsrs-admin-offset) - var(--sbsrs-header-offset)) !important;
}
