/* Community 5.9.1 — Guest visual parity, contrast ownership and approved hero media */

/*
 * 5.9.1 owns every guest foreground after all inherited Community/theme layers.
 * WebKit text fill is bound to currentColor so Chrome cannot display a different
 * foreground from the CSS color declared for the component.
 */
html body.nsc591-guest-document .nsc590-guest-app,
html body.nsc591-guest-document .nsc590-guest-main{
  --nsc591-ink:#10231b;
  --nsc591-body:#263a32;
  --nsc591-muted:#405249;
  --nsc591-link:#005a36;
  --nsc591-link-hover:#00442a;
  --nsc591-primary:#005a36;
  --nsc591-primary-hover:#00442a;
  --nsc591-border:#b7c8bf;
  --nsc591-surface:#ffffff;
  --nsc591-surface-alt:#edf5f1;
  --nsc591-canvas:#f7faf8;
  color:var(--nsc591-body)!important;
  -webkit-text-fill-color:currentColor!important;
}
html body.nsc591-guest-document .nsc590-guest-app *{
  -webkit-text-fill-color:currentColor!important;
}
html body.nsc591-guest-document .nsc590-guest-app h1,
html body.nsc591-guest-document .nsc590-guest-app h2,
html body.nsc591-guest-document .nsc590-guest-app h3,
html body.nsc591-guest-document .nsc590-guest-app h4,
html body.nsc591-guest-document .nsc590-guest-app h5,
html body.nsc591-guest-document .nsc590-guest-app h6,
html body.nsc591-guest-document .nsc590-guest-app strong,
html body.nsc591-guest-document .nsc590-guest-app b{
  color:var(--nsc591-ink)!important;
}
html body.nsc591-guest-document .nsc590-guest-app p,
html body.nsc591-guest-document .nsc590-guest-app li,
html body.nsc591-guest-document .nsc590-guest-app dd,
html body.nsc591-guest-document .nsc590-guest-app dt,
html body.nsc591-guest-document .nsc590-guest-app label{
  color:var(--nsc591-body)!important;
}
html body.nsc591-guest-document .nsc590-guest-app small,
html body.nsc591-guest-document .nsc590-guest-app .nsc5-muted,
html body.nsc591-guest-document .nsc590-guest-app .nsc590-thread-stats,
html body.nsc591-guest-document .nsc590-guest-app .nsc590-answer-public-meta{
  color:var(--nsc591-muted)!important;
}
html body.nsc591-guest-document .nsc590-guest-app a:not(.nsc590-join):not(.nsc590-secondary):not(.is-join){
  color:var(--nsc591-link)!important;
}
html body.nsc591-guest-document .nsc590-guest-app a:not(.nsc590-join):not(.nsc590-secondary):not(.is-join):hover{
  color:var(--nsc591-link-hover)!important;
}

/* Header ownership */
html body.nsc591-guest-document .nsc590-guest-header{
  background:rgba(255,255,255,.985)!important;
  border-color:#c8d5ce!important;
}
html body.nsc591-guest-document .nsc590-guest-brand strong,
html body.nsc591-guest-document .nsc590-guest-primary a,
html body.nsc591-guest-document .nsc590-sign-in,
html body.nsc591-guest-document .nsc590-mobile-menu summary,
html body.nsc591-guest-document .nsc590-mobile-menu a:not(.is-join){
  color:var(--nsc591-ink)!important;
}
html body.nsc591-guest-document .nsc590-guest-brand small{
  color:var(--nsc591-muted)!important;
}
html body.nsc591-guest-document .nsc590-guest-search,
html body.nsc591-guest-document .nsc590-mobile-menu>div{
  background:#fff!important;
  border-color:#aebfb6!important;
}
html body.nsc591-guest-document .nsc590-guest-search input,
html body.nsc591-guest-document .nsc590-guest-search input::placeholder{
  color:#263a32!important;
  opacity:1!important;
}

/* Buttons are explicit so generic link rules never repaint their labels. */
html body.nsc591-guest-document .nsc590-join,
html body.nsc591-guest-document a.nsc590-join,
html body.nsc591-guest-document .nsc590-mobile-menu a.is-join,
html body.nsc591-guest-document .nsc590-guest-mobile-nav a.is-join{
  background:var(--nsc591-primary)!important;
  border-color:var(--nsc591-primary)!important;
  color:#fff!important;
}
html body.nsc591-guest-document .nsc590-join:hover,
html body.nsc591-guest-document a.nsc590-join:hover{
  background:var(--nsc591-primary-hover)!important;
  border-color:var(--nsc591-primary-hover)!important;
  color:#fff!important;
}
html body.nsc591-guest-document .nsc590-secondary,
html body.nsc591-guest-document a.nsc590-secondary{
  background:#fff!important;
  border-color:#8fa69a!important;
  color:#123b2b!important;
}
html body.nsc591-guest-document .nsc590-secondary:hover,
html body.nsc591-guest-document a.nsc590-secondary:hover{
  background:#e5f2eb!important;
  border-color:#005a36!important;
  color:#063f2c!important;
}

/* Approved production hero visual from the signed-off 5.9 mockup. */
html body.nsc591-guest-document .nsc590-hero{
  align-items:center!important;
}
html body.nsc591-guest-document .nsc590-kicker{
  color:#005a36!important;
}
html body.nsc591-guest-document .nsc590-hero h1{
  color:#0b1e16!important;
}
html body.nsc591-guest-document .nsc590-hero-copy>p{
  color:#263a32!important;
}
html body.nsc591-guest-document .nsc590-benefits li{
  background:#fff!important;
  border-color:#c6d4cc!important;
  color:#20372d!important;
}
html body.nsc591-guest-document .nsc591-hero-media{
  position:relative;
  min-width:0;
  margin:0;
  overflow:hidden;
  border:1px solid #b9cbbf;
  border-radius:22px;
  background:#dfece5;
  box-shadow:0 18px 48px rgba(8,45,30,.12);
}
html body.nsc591-guest-document .nsc591-hero-media img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:990/414;
  object-fit:cover;
}
html body.nsc591-guest-document .nsc591-hero-media figcaption{
  position:absolute;
  right:14px;
  bottom:14px;
  max-width:72%;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:rgba(8,34,24,.88)!important;
  color:#fff!important;
  font-size:.72rem;
  font-weight:800;
  line-height:1.25;
  backdrop-filter:blur(6px);
}

/* Public cards/content surfaces */
html body.nsc591-guest-document .nsc590-thread-card,
html body.nsc591-guest-document .nsc590-answer-grid article,
html body.nsc591-guest-document .nsc590-home-rail>section,
html body.nsc591-guest-document .nsc590-compact-list,
html body.nsc591-guest-document .nsc590-guest-ask>div:first-child,
html body.nsc591-guest-document .nsc590-auth-card,
html body.nsc591-guest-document .nsc590-participation-gate,
html body.nsc591-guest-document .nsc590-circle-join-gate,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-search-hero,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-circle-card,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-thread-card,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-knowledge-card,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-discovery-card,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-thread-detail,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-answer,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-empty{
  background:#fff!important;
  border-color:#c6d3cc!important;
  color:var(--nsc591-body)!important;
}
html body.nsc591-guest-document .nsc590-thread-card h3,
html body.nsc591-guest-document .nsc590-thread-card h3 a,
html body.nsc591-guest-document .nsc590-answer-grid h3,
html body.nsc591-guest-document .nsc590-answer-grid h3 a,
html body.nsc591-guest-document .nsc590-section-head h2,
html body.nsc591-guest-document .nsc590-home-rail h2,
html body.nsc591-guest-document .nsc590-home-rail li strong,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-thread-detail h1,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-thread-detail h2,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-thread-detail h3{
  color:var(--nsc591-ink)!important;
}
html body.nsc591-guest-document .nsc590-answer-grid p,
html body.nsc591-guest-document .nsc590-home-rail p,
html body.nsc591-guest-document .nsc590-home-rail li small,
html body.nsc591-guest-document .nsc590-thread-stats,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-thread-body,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-answer-body{
  color:var(--nsc591-body)!important;
}
html body.nsc591-guest-document .nsc590-thread-card-meta span,
html body.nsc591-guest-document .nsc590-top-answer,
html body.nsc591-guest-document .nsc590-section-head>div>span,
html body.nsc591-guest-document .nsc590-guest-main .nsc5-eyebrow{
  color:#005a36!important;
}

/* Forms/search controls */
html body.nsc591-guest-document .nsc590-guest-main input,
html body.nsc591-guest-document .nsc590-guest-main textarea,
html body.nsc591-guest-document .nsc590-guest-main select,
html body.nsc591-guest-document .nsc590-guest-main option{
  background:#fff!important;
  border-color:#8fa69a!important;
  color:#10231b!important;
}
html body.nsc591-guest-document .nsc590-guest-main input::placeholder,
html body.nsc591-guest-document .nsc590-guest-main textarea::placeholder{
  color:#405249!important;
  opacity:1!important;
}

/* Guest footer foreground cannot inherit the light page ink. */
html body.nsc591-guest-document .nsc590-guest-footer{
  background:#063f2c!important;
  color:#eef8f2!important;
}
html body.nsc591-guest-document .nsc590-guest-footer strong{
  color:#fff!important;
}
html body.nsc591-guest-document .nsc590-guest-footer span,
html body.nsc591-guest-document .nsc590-guest-footer p,
html body.nsc591-guest-document .nsc590-footer-bottom{
  color:#d9ebe1!important;
}
html body.nsc591-guest-document .nsc590-guest-footer a{
  color:#f0fff7!important;
}
html body.nsc591-guest-document .nsc590-guest-footer a:hover{
  color:#fff!important;
}

/* Mobile guest bar */
html body.nsc591-guest-document .nsc590-guest-mobile-nav{
  background:rgba(255,255,255,.985)!important;
  border-color:#aebfb6!important;
}
html body.nsc591-guest-document .nsc590-guest-mobile-nav a:not(.is-join){
  color:#173c2c!important;
}
html body.nsc591-guest-document .nsc590-guest-mobile-nav a.is-active:not(.is-join){
  background:#e5f2eb!important;
  color:#063f2c!important;
}

/* Dark guest mode: keep a public-site feel while owning every foreground. */
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-app,
body.dark-mode.nsc591-guest-document .nsc590-guest-app,
body.nsc-dark-mode.nsc591-guest-document .nsc590-guest-app{
  --nsc591-ink:#f5fbf7;
  --nsc591-body:#dfe9e3;
  --nsc591-muted:#c2d1c8;
  --nsc591-link:#9bf1c3;
  --nsc591-link-hover:#d0ffe6;
  --nsc591-surface:#111f18;
  --nsc591-surface-alt:#172820;
  --nsc591-canvas:#0c1612;
  background:#0c1612!important;
  color:#dfe9e3!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-header,
body.dark-mode.nsc591-guest-document .nsc590-guest-header,
body.nsc-dark-mode.nsc591-guest-document .nsc590-guest-header{
  background:rgba(12,24,18,.985)!important;
  border-color:#50675b!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-brand strong,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-primary a,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-sign-in,
body.dark-mode.nsc591-guest-document .nsc590-guest-brand strong,
body.dark-mode.nsc591-guest-document .nsc590-guest-primary a,
body.dark-mode.nsc591-guest-document .nsc590-sign-in{
  color:#f5fbf7!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-brand small,
body.dark-mode.nsc591-guest-document .nsc590-guest-brand small{
  color:#c2d1c8!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-search,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-mobile-menu>div,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-thread-card,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-answer-grid article,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-home-rail>section,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-compact-list,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-main .nsc5-search-hero,
body.dark-mode.nsc591-guest-document .nsc590-guest-search,
body.dark-mode.nsc591-guest-document .nsc590-thread-card,
body.dark-mode.nsc591-guest-document .nsc590-answer-grid article,
body.dark-mode.nsc591-guest-document .nsc590-home-rail>section,
body.dark-mode.nsc591-guest-document .nsc590-compact-list{
  background:#111f18!important;
  border-color:#536b5f!important;
  color:#dfe9e3!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-search input,
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-search input::placeholder,
body.dark-mode.nsc591-guest-document .nsc590-guest-search input,
body.dark-mode.nsc591-guest-document .nsc590-guest-search input::placeholder{
  color:#e5eee9!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc591-hero-media,
body.dark-mode.nsc591-guest-document .nsc591-hero-media{
  border-color:#6f887b!important;
  background:#13251c!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-secondary,
body.dark-mode.nsc591-guest-document .nsc590-secondary{
  background:#14241c!important;
  border-color:#789184!important;
  color:#f3faf6!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-benefits li,
body.dark-mode.nsc591-guest-document .nsc590-benefits li{
  background:#111f18!important;
  border-color:#536b5f!important;
  color:#e1ebe5!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-mobile-nav,
body.dark-mode.nsc591-guest-document .nsc590-guest-mobile-nav{
  background:rgba(14,28,21,.985)!important;
  border-color:#536b5f!important;
}
html[data-theme="dark"] body.nsc591-guest-document .nsc590-guest-mobile-nav a:not(.is-join),
body.dark-mode.nsc591-guest-document .nsc590-guest-mobile-nav a:not(.is-join){
  color:#eff8f3!important;
}

@media(max-width:760px){
  html body.nsc591-guest-document .nsc591-hero-media{display:none}
}

@media(forced-colors:active){
  html body.nsc591-guest-document .nsc591-hero-media,
  html body.nsc591-guest-document .nsc590-thread-card,
  html body.nsc591-guest-document .nsc590-answer-grid article,
  html body.nsc591-guest-document .nsc590-home-rail>section{border:2px solid CanvasText!important}
}
