/* =========================================================
   STELLA WAY RC111 — ORIGINAL-ASSET POSTER LOCK
   FINAL OVERRIDE
   USER LOCKS:
   1) Original background asset stays visually intact.
   2) NO blur, NO dark/white veil, NO gradient film over result pages.
   3) One full-bleed image layer only for dynamic mood assets.
   4) Typography readability comes from placement + text shadow/stroke only.
   5) Screen and print/PDF use the same visual rule.
   ========================================================= */

/* ---------- RESULT / READER: ONE SHARP FULL-BLEED ASSET ---------- */
/* Global safety lock: even if a legacy/fallback scene is ever rendered, blur/film stays forbidden. */
body.reading .pictureStage .picturePage .posterBackdrop{filter:none!important;}
body.reading .pictureStage .picturePage .pageStars{background:none!important;background-image:none!important;box-shadow:none!important;opacity:0!important;}
body.reading .pictureStage .picturePage::after{content:none!important;display:none!important;background:none!important;box-shadow:none!important;}
@media print{
  .printPage .pBackdrop{filter:none!important;}
  .printPage .pFilm{display:none!important;background:none!important;background-image:none!important;box-shadow:none!important;opacity:0!important;}
}

body.reading .pictureStage .picturePage.dynamic-full,
body.reading .pictureStage .picturePage.compat.dynamic-full,
body.reading .pictureStage .picturePage.dynamic-full.ending{
  background:#071522!important;
}
body.reading .pictureStage .picturePage.dynamic-full .posterBackdrop,
body.reading .pictureStage .picturePage.compat.dynamic-full .posterBackdrop{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  z-index:0!important;
}
/* The approved mood asset is already a complete poster. Never duplicate it as a second art layer. */
body.reading .pictureStage .picturePage.dynamic-full .pageCharacter,
body.reading .pictureStage .picturePage.compat.dynamic-full .pageCharacter{
  display:none!important;
  opacity:0!important;
  filter:none!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}
/* Absolutely no text-side film / colour veil / blur substitute. */
body.reading .pictureStage .picturePage.dynamic-full .pageStars,
body.reading .pictureStage .picturePage.compat.dynamic-full .pageStars,
body.reading .pictureStage .picturePage.dynamic-full.mood-sad .pageStars,
body.reading .pictureStage .picturePage.dynamic-full.mood-tired .pageStars,
body.reading .pictureStage .picturePage.dynamic-full.mood-cold .pageStars,
body.reading .pictureStage .picturePage.dynamic-full.mood-anger .pageStars,
body.reading .pictureStage .picturePage.dynamic-full.mood-conflict .pageStars,
body.reading .pictureStage .picturePage.dynamic-full.mood-separation .pageStars{
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
  opacity:0!important;
}
body.reading .pictureStage .picturePage.dynamic-full::after,
body.reading .pictureStage .picturePage.compat.dynamic-full::after{
  content:none!important;
  display:none!important;
  background:none!important;
  box-shadow:none!important;
}
/* Keep only a very thin poster hairline; it does not cover the art. */
body.reading .pictureStage .picturePage.dynamic-full::before{
  border:1px solid rgba(245,208,141,.24)!important;
  box-shadow:none!important;
  background:none!important;
}

/* Copy stays directly on the image. No boxes. */
body.reading .pictureStage .picturePage.dynamic-full .pageMeta,
body.reading .pictureStage .picturePage.dynamic-full .chapterLine,
body.reading .pictureStage .picturePage.dynamic-full h3,
body.reading .pictureStage .picturePage.dynamic-full .bodyFlow,
body.reading .pictureStage .picturePage.dynamic-full .bodyFlowBottom,
body.reading .pictureStage .picturePage.dynamic-full .impactLine{
  background:none!important;
  box-shadow:none!important;
}
body.reading .pictureStage .picturePage.dynamic-full h3,
body.reading .pictureStage .picturePage.dynamic-full .impactLine{
  text-shadow:0 3px 1px rgba(0,0,0,.92),0 5px 14px rgba(0,0,0,.72),0 0 3px rgba(0,0,0,.90)!important;
  -webkit-text-stroke:.35px rgba(24,10,4,.58);
}
body.reading .pictureStage .picturePage.dynamic-full .bodyFlow,
body.reading .pictureStage .picturePage.dynamic-full .bodyFlowBottom{
  text-shadow:-1px -1px 0 rgba(0,0,0,.82),1px -1px 0 rgba(0,0,0,.82),-1px 1px 0 rgba(0,0,0,.82),1px 1px 0 rgba(0,0,0,.82),0 2px 3px rgba(0,0,0,.98),0 0 8px rgba(0,0,0,.88)!important;
  -webkit-text-stroke:.34px rgba(0,0,0,.72);
}
body.reading .pictureStage .picturePage.dynamic-full .pageMeta,
body.reading .pictureStage .picturePage.dynamic-full .chapterLine{
  text-shadow:-1px -1px 0 rgba(0,0,0,.72),1px 1px 0 rgba(0,0,0,.72),0 2px 5px rgba(0,0,0,.94)!important;
}
/* Long-copy continuation must remain in the same safe column, never spread across the face. */
body.reading .pictureStage .picturePage.dynamic-full.has-bottom .bodyFlowBottom{
  width:var(--poster-copy)!important;
  max-width:var(--poster-copy)!important;
}

/* ---------- PRINT / PDF: SAME ONE-IMAGE RULE ---------- */
@media print{
  .printPage.dynamic-full,
  .printPage.compat.dynamic-full,
  .printPage.compat.dynamic-full.ending{
    background:#071522!important;
  }
  .printPage.dynamic-full .pBackdrop,
  .printPage.compat.dynamic-full .pBackdrop{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:none!important;
    filter:none!important;
    opacity:1!important;
    z-index:0!important;
  }
  .printPage.dynamic-full .pArt,
  .printPage.compat.dynamic-full .pArt{
    display:none!important;
    opacity:0!important;
    filter:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
  .printPage.dynamic-full .pFilm,
  .printPage.compat.dynamic-full .pFilm{
    display:none!important;
    background:none!important;
    background-image:none!important;
    box-shadow:none!important;
    opacity:0!important;
  }
  .printPage.dynamic-full::before{
    border:.25mm solid rgba(245,208,141,.24)!important;
    box-shadow:none!important;
    background:none!important;
  }
  .printPage.dynamic-full h2,
  .printPage.dynamic-full .pImpact{
    text-shadow:0 .7mm .2mm rgba(0,0,0,.94),0 1.2mm 2.4mm rgba(0,0,0,.72),0 0 .6mm #000!important;
    -webkit-text-stroke:.09mm rgba(24,10,4,.55);
  }
  .printPage.dynamic-full .pBody,
  .printPage.dynamic-full .pBodyBottom{
    text-shadow:0 .45mm .35mm rgba(0,0,0,.98),0 0 1.25mm rgba(0,0,0,.88)!important;
  }
  .printPage.dynamic-full.has-bottom .pBodyBottom{
    width:var(--p-copy)!important;
    max-width:var(--p-copy)!important;
  }
}

/* =========================================================
   INPUT EXPERIENCE — APPROVED DIRECTION
   Personal = approved concept #2 (navy / gold / silver guide)
   Compatibility = approved concept #3 (rose-gold couple)
   No full-screen veil. Only individual controls carry light translucency.
   ========================================================= */
body.profileMode,
body.partnerMode{background:#071522!important;}
body.profileMode .shell,
body.partnerMode .shell{background:transparent!important;}
body.profileMode .topBrand,
body.partnerMode .topBrand{
  color:#f3d18d!important;
  background:rgba(5,14,27,.34)!important;
  border-bottom:1px solid rgba(238,201,132,.20)!important;
  backdrop-filter:none!important;
}
body.profileMode .topBrand b,
body.profileMode .topBrand span,
body.partnerMode .topBrand b,
body.partnerMode .topBrand span{color:#f3d18d!important;}

#profileScreen.heroScreen{
  background-color:#071522!important;
  background-image:url('/assets/mood/personal-05.jpg')!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center top!important;
  color:#fffaf1!important;
  padding-bottom:54px!important;
}
#profileScreen .heroArt{
  height:300px!important;
  margin:0 -26px 6px!important;
  background:none!important;
  overflow:visible!important;
}
#profileScreen .heroArt::after,
#profileScreen .goldStars{display:none!important;}
#profileScreen .heroArt>img{display:none!important;}
#profileScreen .heroCopy{
  left:30px!important;
  top:54px!important;
  max-width:58%!important;
  color:#fffaf1!important;
}
#profileScreen .heroCopy .eyebrow{color:#f1cf88!important;text-shadow:0 2px 5px rgba(0,0,0,.72)!important;}
#profileScreen .heroCopy h1{
  color:#f5d28e!important;
  font-size:39px!important;
  font-weight:800!important;
  text-shadow:0 3px 1px rgba(0,0,0,.88),0 5px 15px rgba(0,0,0,.62)!important;
}
#profileScreen .heroCopy p{color:#fffaf1!important;text-shadow:0 2px 5px rgba(0,0,0,.90)!important;font-weight:650!important;}
#profileScreen .formPaper{
  background:transparent!important;
  border:0!important;
  padding:14px 0 0!important;
}
#profileScreen .sectionTitle{color:#f1cf88!important;text-shadow:0 2px 5px rgba(0,0,0,.78)!important;}
#profileScreen .sectionTitle:before,#profileScreen .sectionTitle:after{background:rgba(241,207,136,.44)!important;}
#profileScreen .field label{color:#f4d89f!important;text-shadow:0 2px 4px rgba(0,0,0,.74)!important;}
#profileScreen .hint{color:rgba(255,249,239,.76)!important;text-shadow:0 1px 3px rgba(0,0,0,.7)!important;}
#profileScreen .textInput,#profileScreen .selectInput,#profileScreen .digitInput,
#profileScreen .seg span,#profileScreen .tinyCheck{
  color:#fffaf1!important;
  border:1px solid rgba(240,203,133,.68)!important;
  background:rgba(5,15,29,.52)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)!important;
  backdrop-filter:none!important;
}
#profileScreen input::placeholder{color:rgba(255,250,242,.48)!important;}
#profileScreen .seg input:checked+span,#profileScreen .tinyCheck.on{
  color:#ffe6ad!important;
  border-color:#f0c875!important;
  background:rgba(105,72,30,.54)!important;
}
#profileScreen .primaryGold{
  border:1px solid rgba(255,224,158,.84)!important;
  background:rgba(208,160,76,.88)!important;
  color:#24180b!important;
  box-shadow:0 9px 24px rgba(0,0,0,.28)!important;
}
#profileScreen .ghostBtn{background:rgba(6,17,31,.48)!important;color:#fff4df!important;border-color:rgba(240,203,133,.45)!important;}
#profileScreen .statusLine{color:#ffe0a1!important;text-shadow:0 2px 4px rgba(0,0,0,.8)!important;}

#partnerScreen{
  background-color:#3c1725!important;
  background-image:url('/assets/mood/compat-01.jpg')!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  background-position:center top!important;
  color:#fff8f5!important;
  padding-bottom:54px!important;
}
#partnerScreen .compatHead{padding:38px 0 22px!important;text-align:left!important;max-width:620px!important;}
#partnerScreen .pairStars{color:#f5d39a!important;text-shadow:0 2px 5px rgba(0,0,0,.78)!important;}
#partnerScreen .compatHead h2{
  color:#f5d39a!important;
  font-size:35px!important;
  font-weight:800!important;
  text-shadow:0 3px 1px rgba(0,0,0,.88),0 5px 14px rgba(0,0,0,.64)!important;
}
#partnerScreen .compatHead p{color:#fff8f5!important;font-weight:650!important;text-shadow:0 2px 5px rgba(0,0,0,.88)!important;}
#partnerScreen .compatPaper{border:0!important;padding-top:14px!important;background:transparent!important;}
#partnerScreen .sectionTitle{color:#f5d39a!important;text-shadow:0 2px 5px rgba(0,0,0,.8)!important;}
#partnerScreen .sectionTitle:before,#partnerScreen .sectionTitle:after{background:rgba(245,211,154,.46)!important;}
#partnerScreen .field label{color:#ffe0bf!important;text-shadow:0 2px 4px rgba(0,0,0,.78)!important;}
#partnerScreen .hint{color:rgba(255,244,239,.77)!important;text-shadow:0 1px 3px rgba(0,0,0,.76)!important;}
#partnerScreen .textInput,#partnerScreen .selectInput,#partnerScreen .digitInput,
#partnerScreen .seg span,#partnerScreen .tinyCheck{
  color:#fff8f5!important;
  border:1px solid rgba(245,199,169,.66)!important;
  background:rgba(70,24,39,.48)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.028)!important;
  backdrop-filter:none!important;
}
#partnerScreen input::placeholder{color:rgba(255,245,240,.48)!important;}
#partnerScreen .seg input:checked+span,#partnerScreen .tinyCheck.on{
  color:#fff0df!important;
  border-color:#f4c8ab!important;
  background:rgba(164,76,98,.60)!important;
}
#partnerScreen .primaryRose{
  border:1px solid rgba(255,214,189,.84)!important;
  background:rgba(202,112,132,.88)!important;
  color:#35121e!important;
  box-shadow:0 9px 24px rgba(0,0,0,.28)!important;
}
#partnerScreen .ghostBtn{background:rgba(64,20,34,.48)!important;color:#fff2eb!important;border-color:rgba(245,199,169,.48)!important;}
#partnerScreen .errorLine{color:#ffe2d2!important;text-shadow:0 2px 4px rgba(0,0,0,.8)!important;}

@media(max-width:560px){
  #profileScreen .heroCopy{max-width:72%!important;left:20px!important;top:42px!important;}
  #profileScreen .heroCopy h1{font-size:31px!important;}
  #partnerScreen .compatHead h2{font-size:30px!important;}
}

/* =========================================================
   RC113 — APPROVED MOBILE READABILITY RESTORE
   ONLY typography/readability is changed here.
   Background assets remain 100% untouched: no blur, veil, mask or film.
   ========================================================= */
body.reading .pictureStage .picturePage.dynamic-full h3{
  font-size:52px!important;
  line-height:1.26!important;
  color:#f4d08b!important;
  -webkit-text-stroke:.72px rgba(22,9,4,.78)!important;
  paint-order:stroke fill!important;
  text-shadow:0 3px 1px rgba(0,0,0,.94),0 5px 15px rgba(0,0,0,.76),0 0 4px rgba(0,0,0,.92)!important;
}
body.reading .pictureStage .picturePage.dynamic-full .bodyFlow{
  font-size:20.2px!important;
  line-height:1.84!important;
  font-weight:700!important;
  color:#fffdf8!important;
  -webkit-text-stroke:.58px rgba(0,0,0,.78)!important;
  paint-order:stroke fill!important;
  text-shadow:-1px -1px 0 rgba(0,0,0,.82),1px -1px 0 rgba(0,0,0,.82),-1px 1px 0 rgba(0,0,0,.82),1px 1px 0 rgba(0,0,0,.82),0 2px 4px rgba(0,0,0,.98),0 0 9px rgba(0,0,0,.90)!important;
}
body.reading .pictureStage .picturePage.dynamic-full .bodyFlowBottom{
  font-size:17.8px!important;
  line-height:1.64!important;
  font-weight:700!important;
  color:#fffdf8!important;
  -webkit-text-stroke:.55px rgba(0,0,0,.78)!important;
  paint-order:stroke fill!important;
  text-shadow:-1px -1px 0 rgba(0,0,0,.82),1px -1px 0 rgba(0,0,0,.82),-1px 1px 0 rgba(0,0,0,.82),1px 1px 0 rgba(0,0,0,.82),0 2px 4px rgba(0,0,0,.98),0 0 9px rgba(0,0,0,.90)!important;
}
body.reading .pictureStage .picturePage.dynamic-full .impactLine{
  font-size:38px!important;
  line-height:1.40!important;
  color:#f3d18d!important;
  -webkit-text-stroke:.78px rgba(24,10,4,.80)!important;
  paint-order:stroke fill!important;
  text-shadow:0 3px 1px rgba(0,0,0,.94),0 5px 16px rgba(0,0,0,.78),0 0 4px rgba(0,0,0,.94)!important;
}
body.reading .pictureStage .picturePage.dynamic-full .pageMeta,
body.reading .pictureStage .picturePage.dynamic-full .chapterLine{
  color:#f6dda8!important;
  font-weight:800!important;
  -webkit-text-stroke:.28px rgba(0,0,0,.70)!important;
  paint-order:stroke fill!important;
  text-shadow:0 2px 4px rgba(0,0,0,.96),0 0 7px rgba(0,0,0,.82)!important;
}
/* Long pages may tighten, but never return to the old tiny mobile copy. */
body.reading .pictureStage .picturePage.dynamic-full.dense h3{font-size:47px!important}
body.reading .pictureStage .picturePage.dynamic-full.dense .bodyFlow{font-size:18.6px!important;line-height:1.72!important}
body.reading .pictureStage .picturePage.dynamic-full.dense .impactLine{font-size:34px!important}
body.reading .pictureStage .picturePage.dynamic-full.compact h3{font-size:43px!important}
body.reading .pictureStage .picturePage.dynamic-full.compact .bodyFlow{font-size:17.1px!important;line-height:1.64!important}
body.reading .pictureStage .picturePage.dynamic-full.compact .impactLine{font-size:31px!important}
body.reading .pictureStage .picturePage.dynamic-full.fit-tight .bodyFlow,
body.reading .pictureStage .picturePage.dynamic-full.fit-tight .bodyFlowBottom{font-size:16.2px!important;line-height:1.58!important}
body.reading .pictureStage .picturePage.dynamic-full.fit-tight .impactLine{font-size:29px!important}
body.reading .pictureStage .picturePage.dynamic-full.fit-ultra .bodyFlow,
body.reading .pictureStage .picturePage.dynamic-full.fit-ultra .bodyFlowBottom{font-size:15.2px!important;line-height:1.52!important}
body.reading .pictureStage .picturePage.dynamic-full.fit-ultra .impactLine{font-size:27px!important}
body.reading .pictureStage .picturePage.dynamic-full.has-bottom .bodyFlowBottom{font-size:16.8px!important;line-height:1.58!important}
body.reading .pictureStage .picturePage.dynamic-full.has-bottom.fit-tight .bodyFlowBottom{font-size:15.7px!important;line-height:1.54!important}
body.reading .pictureStage .picturePage.dynamic-full.has-bottom.fit-ultra .bodyFlowBottom{font-size:15px!important;line-height:1.50!important}

@media print{
  .printPage.dynamic-full h2{
    font-size:30.5pt!important;line-height:1.26!important;color:#f4d08b!important;
    -webkit-text-stroke:.16mm rgba(22,9,4,.76)!important;paint-order:stroke fill!important;
  }
  .printPage.dynamic-full .pBody{
    font-size:11.7pt!important;line-height:1.78!important;font-weight:700!important;color:#fffdf8!important;
    -webkit-text-stroke:.10mm rgba(0,0,0,.72)!important;paint-order:stroke fill!important;
    text-shadow:0 .5mm .4mm rgba(0,0,0,.98),0 0 1.4mm rgba(0,0,0,.90)!important;
  }
  .printPage.dynamic-full .pBodyBottom{
    font-size:10.5pt!important;line-height:1.62!important;font-weight:700!important;color:#fffdf8!important;
    -webkit-text-stroke:.09mm rgba(0,0,0,.72)!important;paint-order:stroke fill!important;
    text-shadow:0 .5mm .4mm rgba(0,0,0,.98),0 0 1.4mm rgba(0,0,0,.90)!important;
  }
  .printPage.dynamic-full .pImpact{
    font-size:23pt!important;line-height:1.38!important;color:#f3d18d!important;
    -webkit-text-stroke:.17mm rgba(24,10,4,.78)!important;paint-order:stroke fill!important;
  }
  .printPage.dynamic-full.dense h2{font-size:27.5pt!important}
  .printPage.dynamic-full.dense .pBody{font-size:10.7pt!important;line-height:1.68!important}
  .printPage.dynamic-full.dense .pImpact{font-size:20.5pt!important}
  .printPage.dynamic-full.compact h2{font-size:25pt!important}
  .printPage.dynamic-full.compact .pBody{font-size:9.8pt!important;line-height:1.60!important}
  .printPage.dynamic-full.compact .pImpact{font-size:18.5pt!important}
}


/* =========================================================
   RC114 - QUESTION HERO REFRESH + PDF BLUE-FALLBACK REMOVAL
   Existing mood assets only; no new generated artwork.
   ========================================================= */
.questionHero{height:305px!important;background:#fff!important;}
.questionHero img{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;
  object-fit:cover!important;object-position:center 30%!important;transform:none!important;filter:none!important;opacity:1!important;
}
.questionHero[data-step="2"] img{object-position:center 28%!important;}
.questionHero[data-step="3"] img{object-position:center 34%!important;}
.questionHero:after{height:92px!important;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 100%)!important;}
.questionHero .questionMark{color:#f1cf8a!important;font-weight:800!important;text-shadow:0 1px 2px rgba(0,0,0,.82),0 0 7px rgba(0,0,0,.70)!important;}
@media(max-width:620px){
  .questionHero{height:265px!important;}
  .questionHero img{width:100%!important;height:100%!important;right:auto!important;top:auto!important;}
}

/* PDF must never expose the old navy/blue fallback canvas.
   The actual poster remains the full-bleed pBackdrop image; if printing ever delays, fallback is white, not blue. */
@media print{
  html,body,#printArea{background:#fff!important;}
  .printPage.dynamic-full,
  .printPage.compat.dynamic-full,
  .printPage.compat.dynamic-full.ending{
    background:#fff!important;
    background-color:#fff!important;
    background-image:none!important;
  }
  .printPage.dynamic-full .pBackdrop,
  .printPage.compat.dynamic-full .pBackdrop{
    display:block!important;visibility:visible!important;
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
    object-fit:cover!important;object-position:center center!important;
    transform:none!important;filter:none!important;opacity:1!important;z-index:0!important;
    -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
  }
}
