/*
 * Tamiyouz Blog · V42 Premium Reading Pass
 * Article pages only. Navy/gold identity. CSS only: no scripts, fonts or network assets.
 * Keeps Elementor containers, sticky navigation, reading progress and animations.
 */
body.single-post {
  --tyz42-paper:#122e43;
  --tyz42-paper-strong:#0c2437;
  --tyz42-reading:#eaf3fc;
  --tyz42-heading:#f6d9a3;
  --tyz42-heading-sub:#f4ebdb;
  --tyz42-gold:#ebc783;
  --tyz42-muted:#ceddea;
  --tyz42-stroke:rgba(239,197,131,.34);
}
body.single-post #page_content .content.single_con {
  color:var(--tyz42-reading)!important;
  background:linear-gradient(155deg,#14344a,#0b2538 72%,#0a2033)!important;
  border:1px solid var(--tyz42-stroke)!important;
  border-radius:clamp(16px,2vw,26px)!important;
  padding:clamp(20px,2.7vw,39px)!important;
  box-shadow:0 15px 42px rgba(1,12,25,.20)!important;
  box-sizing:border-box!important;
  min-width:0!important;
}
body.single-post #page_content .content.single_con > .xtra-post-title {
  max-width:100%!important;
  color:#fff7e9!important;
  font:850 clamp(1.85rem,2.55vw,2.65rem)/1.6 Almarai,system-ui,sans-serif!important;
  letter-spacing:0!important;
  text-wrap:pretty;
  overflow-wrap:break-word;
  margin:0 0 12px!important;
}
body.single-post .content.single_con > .xtra-post-title-date,
body.single-post .content.single_con > .xtra-post-title-date a,
body.single-post .content.single_con .tyz-p3-reading-time {
  color:#e1cfac!important;
}
body.single-post .content.single_con .cz_post_content,
body.single-post .content.single_con .cz_post_content .elementor-widget-container {
  min-width:0;
  max-width:100%;
  overflow-wrap:break-word;
}
body.single-post .content.single_con .cz_post_content :is(p,li):not(.tyz-seo-answer),
body.single-post .content.single_con .elementor-widget-text-editor :is(p,li):not(.tyz-seo-answer) {
  font-family:Almarai,system-ui,sans-serif!important;
  font-size:clamp(16px,1.16vw,18px)!important;
  font-weight:500!important;
  line-height:1.97!important;
  letter-spacing:0!important;
  color:var(--tyz42-reading)!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  text-align:start;
}
body.single-post .content.single_con .cz_post_content :is(p,ul,ol) {
  margin-block-start:0;
  margin-block-end:1.3em!important;
}
body.single-post .content.single_con .cz_post_content :is(ul,ol) {
  padding-inline-start:1.55em!important;
  padding-inline-end:0!important;
  max-width:100%;
}
body.single-post .content.single_con .cz_post_content li {
  padding-inline-start:.15em!important;
  margin-block-end:.45em!important;
}
body.single-post .content.single_con .cz_post_content li::marker { color:#f3ce8b!important; }
/*
 * Historical Elementor content contains hard-coded #000, #333, #0000ff and
 * green text spans, unreadable against navy. Normalize only ordinary prose
 * and list inline text, not heading decorations, links, icon widgets or buttons.
 */
body.single-post .content.single_con .cz_post_content :is(p,li) span[style*="color:" i]:not([style*="background" i]),
body.single-post .content.single_con .cz_post_content :is(p,li) font[color]:not([style*="background" i]) {
  color:var(--tyz42-reading)!important;
}
body.single-post .content.single_con .cz_post_content :is(p,li) :is(span,font)[style*="font-size:" i] {
  font-size:inherit!important;
  line-height:inherit!important;
}
body.single-post .content.single_con .cz_post_content :is(p,li) :is(span,font)[style*="font-family:" i] {
  font-family:inherit!important;
}
body.single-post .content.single_con .cz_post_content :is(p,li) a,
body.single-post .content.single_con .cz_post_content :is(p,li) a:link,
body.single-post .content.single_con .cz_post_content :is(p,li) a:visited {
  color:#f6d597!important;
  text-decoration:underline!important;
  text-decoration-color:rgba(246,213,151,.64)!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:.22em!important;
  overflow-wrap:anywhere;
}
body.single-post .content.single_con .cz_post_content :is(p,li) a :is(span,font)[style*="color:" i] {
  color:inherit!important;
}
body.single-post .content.single_con .cz_post_content :is(p,li) a:hover,
body.single-post .content.single_con .cz_post_content :is(p,li) a:focus-visible {
  color:#ffeac1!important;
  text-decoration-color:currentColor!important;
}
body.single-post .content.single_con .cz_post_content :is(h2,h3,h4,h5,h6),
body.single-post .content.single_con .cz_post_content .elementor-widget-heading :is(h2,h3,h4,h5,h6) {
  font-family:Almarai,system-ui,sans-serif!important;
  line-height:1.65!important;
  letter-spacing:0!important;
  text-wrap:pretty;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  scroll-margin-top:118px;
}
body.single-post .content.single_con .cz_post_content :is(h2,.elementor-widget-heading h2):not(.elementor-toc__header-title) {
  display:block;
  color:var(--tyz42-heading)!important;
  font-size:clamp(23px,1.95vw,30px)!important;
  font-weight:850!important;
  line-height:1.6!important;
  margin:clamp(28px,3vw,41px) 0 18px!important;
  padding:11px 16px!important;
  border:0!important;
  border-inline-start:3px solid var(--tyz42-gold)!important;
  border-radius:8px!important;
  background:linear-gradient(90deg,rgba(222,173,99,.04),rgba(225,176,101,.12) 70%,rgba(225,176,101,.05))!important;
  box-shadow:none!important;
}
body.single-post .content.single_con .cz_post_content :is(h3,.elementor-widget-heading h3) {
  color:var(--tyz42-heading-sub)!important;
  font-size:clamp(19px,1.55vw,23px)!important;
  font-weight:800!important;
  line-height:1.65!important;
  margin:24px 0 12px!important;
  padding:0 10px 0 0!important;
  border:0!important;
  border-inline-start:2px solid rgba(236,194,126,.55)!important;
  background:none!important;
}
body.single-post .content.single_con .cz_post_content :is(h4,.elementor-widget-heading h4) {
  color:#ecd2a3!important;
  font-size:clamp(17px,1.25vw,19px)!important;
  font-weight:800!important;
  margin:20px 0 9px!important;
}
body.single-post .content.single_con .cz_post_content :is(h5,h6) {
  color:#e4eefa!important;
  font-size:clamp(16px,1.15vw,18px)!important;
  font-weight:750!important;
}
body.single-post .content.single_con .cz_post_content :is(h2,h3,h4,h5,h6) :is(span,font)[style*="color:" i] {
  color:inherit!important;
}
body.single-post .content.single_con .cz_post_content :is(h2,h3,h4) :is(span,font)[style*="font-size:" i]{
  font-size:inherit!important;
}
/* Keep AI answer-first introductions legible on their warm surface.
   This rule deliberately overrides dark article paragraph colors. */
body.single-post .content.single_con .cz_post_content p.tyz-seo-answer {
  color:#16354a!important;
  background:linear-gradient(140deg,#fffdf8,#f8edda)!important;
  border:1px solid rgba(160,117,51,.32)!important;
  border-inline-start:4px solid #bb8734!important;
  border-radius:11px!important;
  padding:clamp(14px,1.65vw,20px) clamp(16px,2.05vw,24px)!important;
  margin:0 0 clamp(20px,2.5vw,27px)!important;
  box-shadow:none!important;
  font:650 clamp(16px,1.12vw,17.5px)/1.9 Almarai,system-ui,sans-serif!important;
  text-align:start!important;
  max-width:100%!important;
  width:100%;
  box-sizing:border-box;
}
body.single-post .content.single_con .cz_post_content p.tyz-seo-answer :is(span,strong,em) {color:inherit!important;}
body.single-post .content.single_con .cz_post_content blockquote{
  margin:clamp(20px,3vw,31px) 0!important;
  padding:clamp(15px,2vw,23px)!important;
  border:1px solid rgba(233,190,117,.43)!important;
  border-inline-start:4px solid #edca87!important;
  background:rgba(237,192,116,.12)!important;
  border-radius:13px!important;
  color:#fff1d4!important;
}
body.single-post .content.single_con .cz_post_content blockquote :is(p,span,li){
  color:#fff1d4!important;
  font-size:clamp(16px,1.16vw,18px)!important;
}
body.single-post .content.single_con .cz_post_content :is(figure,.wp-caption) {
  max-width:100%!important;
  margin:clamp(16px,2vw,26px) auto!important;
}
body.single-post .content.single_con .cz_post_content :is(img,video,iframe,embed,object) {
  max-width:100%!important;
}
body.single-post .content.single_con .cz_post_content img:not(.emoji) {
  height:auto;
  border-radius:clamp(9px,1vw,15px);
}
body.single-post .content.single_con .cz_post_content :is(figcaption,.wp-caption-text) {
  color:var(--tyz42-muted)!important;
  font:550 13px/1.8 Almarai,system-ui,sans-serif!important;
  text-align:center;
}
/* Do not affect Google Maps or forms: only standard embedded videos. */
body.single-post .content.single_con .cz_post_content iframe:is([src*="youtube.com/embed"],[src*="youtube-nocookie.com/embed"],[src*="player.vimeo.com/video"]){
  aspect-ratio:16 / 9;
  width:100%!important;
  height:auto!important;
}
/* Table contrast, horizontal scroll without forcing whole-page overflow. */
body.single-post .content.single_con .cz_post_content table{
  max-width:100%!important;
  border:1px solid rgba(226,192,131,.37)!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:10px!important;
  background:#102b42!important;
}
body.single-post .content.single_con .cz_post_content table :is(th,td){
  padding:11px 13px!important;
  border-color:rgba(226,192,131,.26)!important;
  color:#eaf2fb!important;
  background:#102b42!important;
  font-size:clamp(14px,1.1vw,16px)!important;
  line-height:1.8!important;
  text-align:start;
  vertical-align:top;
}
body.single-post .content.single_con .cz_post_content table th{
  font-weight:800!important;
  color:#f6d9a5!important;
  background:#1a3a51!important;
}
body.single-post .content.single_con .cz_post_content table tr:nth-child(even) td {
  background:#153349!important;
}
body.single-post .content.single_con .cz_post_content table :is(th,td) :is(p,span)[style*="color:" i] {
  color:inherit!important;
}
body.single-post .content.single_con .cz_post_content pre{
  max-width:100%!important;
  overflow-x:auto!important;
  direction:ltr;
  background:#081c2d;
  color:#eaf2fc;
  border:1px solid rgba(225,193,142,.27);
  padding:14px!important;
  border-radius:10px;
  white-space:pre!important;
  font-size:14px;
  line-height:1.7;
}
body.single-post .content.single_con .cz_post_content :not(pre) > code {
  padding:.08em .34em;
  border-radius:4px;
  background:rgba(236,198,136,.15);
  color:#ffdfb0;
  direction:ltr;
  unicode-bidi:isolate;
}
body.single-post .content.single_con .cz_post_content :is(a,button,summary):focus-visible {
  outline:2px solid #ffe1a8!important;
  outline-offset:3px!important;
}
/* Tables of contents are navigation, not article typography. */
body.single-post .content.single_con :is(.tyz-p3-toc,.elementor-widget-table-of-contents) {
  border-color:rgba(235,196,126,.43)!important;
}
body.single-post .content.single_con .tyz-p3-toc a,
body.single-post .content.single_con .elementor-toc__list-item a{
  color:#eef4fb!important;
  text-decoration:none!important;
}
body.single-post .content.single_con .tyz-p3-toc a:hover,
body.single-post .content.single_con .elementor-toc__list-item a:hover{
  color:#ffe0a6!important;
}
body.single-post .cz_related_posts > h4 {color:#f3d6a2!important;}
body.single-post .cz_related_post .cz_post_title h3 {color:#f1f6fc!important;}
/* Tablets: preserve the existing stacked sidebar, give text proper room. */
@media(max-width:1100px){
  body.single-post #page_content > .row,
  body.single-post #page_content > .row > .col{
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.single-post .content.single_con .cz_post_content :is(.elementor,.elementor-section,.elementor-container,.e-con,.elementor-widget,.elementor-widget-container){
    max-width:100%;
    min-width:0;
  }
}
@media(max-width:767px){
  body.single-post #page_content > .row{
    width:calc(100% - 20px)!important;
    max-width:100%!important;
    margin-inline:auto!important;
    box-sizing:border-box!important;
  }
  body.single-post #page_content > .row > .col.s8{
    width:100%!important;max-width:100%!important;
    float:none!important;margin-inline:0!important;
    min-width:0!important;
  }
  body.single-post #page_content .content.single_con {
    padding:clamp(15px,3.3vw,22px)!important;
    border-radius:14px!important;
    box-shadow:0 9px 24px rgba(2,13,27,.12)!important;
  }
  body.single-post #page_content .content.single_con > .xtra-post-title {
    font-size:clamp(24px,5.4vw,31px)!important;
    line-height:1.58!important;
    margin-block-end:10px!important;
  }
  body.single-post .content.single_con .cz_post_content :is(p,li):not(.tyz-seo-answer),
  body.single-post .content.single_con .elementor-widget-text-editor :is(p,li):not(.tyz-seo-answer){
    font-size:16px!important;
    line-height:1.92!important;
    margin-block-end:1.13em!important;
  }
  body.single-post .content.single_con .cz_post_content :is(h2,.elementor-widget-heading h2):not(.elementor-toc__header-title){
    font-size:clamp(20px,5vw,25px)!important;
    line-height:1.57!important;
    padding:9px 12px!important;
    margin:26px 0 14px!important;
  }
  body.single-post .content.single_con .cz_post_content :is(h3,.elementor-widget-heading h3){
    font-size:clamp(18px,4.3vw,21px)!important;
    line-height:1.6!important;
    margin:19px 0 10px!important;
  }
  body.single-post .content.single_con .cz_post_content :is(h4,.elementor-widget-heading h4){
    font-size:17px!important;
  }
  body.single-post .content.single_con .cz_post_content p.tyz-seo-answer{
    font-size:15.5px!important;
    line-height:1.9!important;
    padding:13px 14px!important;
    margin:0 0 19px!important;
    border-radius:10px!important;
  }
  body.single-post .content.single_con .cz_post_content :is(ul,ol){
    padding-inline-start:1.35em!important;
    margin-block-end:1.2em!important;
  }
  body.single-post .content.single_con .cz_post_content :is(figure,.wp-caption,img){
    max-width:100%!important;
  }
  body.single-post .content.single_con .cz_post_content table {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  body.single-post .content.single_con .cz_post_content table :is(th,td) {
    padding:9px!important;
    font-size:14px!important;
  }
  body.single-post .content.single_con .cz_post_content blockquote{
    padding:14px 15px!important;
    margin:19px 0!important;
  }
  body.single-post .content.single_con .cz_single_fi{
    border-radius:12px!important;
    margin-block:14px 21px!important;
  }
  body.single-post .content.single_con .cz_single_fi img{
    display:block;
    width:100%;
    height:auto!important;
    border-radius:11px!important;
  }
  body.single-post .cz_related_posts > .clr{
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }
}
@media(max-width:375px){
  body.single-post #page_content > .row{
    width:calc(100% - 14px)!important;
  }
  body.single-post #page_content .content.single_con{
    padding:12px!important;
    border-radius:11px!important;
  }
  body.single-post #page_content .content.single_con > .xtra-post-title{
    font-size:clamp(22px,6.4vw,25px)!important;
  }
  body.single-post .content.single_con .cz_post_content :is(p,li):not(.tyz-seo-answer){
    font-size:15.5px!important;
  }
  body.single-post .content.single_con .cz_post_content :is(h2,.elementor-widget-heading h2):not(.elementor-toc__header-title) {
    padding-inline:9px!important;
    font-size:20px!important;
  }
  body.single-post .content.single_con .tyz12-article-tools{
    gap:7px!important;
  }
}
/* Does not remove any animation except when the visitor specifically
   requests reduced motion; pre-existing progress and imagery are unchanged. */
@media(prefers-reduced-motion:reduce){
  body.single-post .content.single_con .cz_post_content :is(a,button){
    transition:none!important;
  }
}
/* Navigation inside article TOCs keeps its compact, interactive presentation. */
body.single-post .content.single_con .cz_post_content :is(.tyz-p3-toc,.elementor-toc) li {
  margin:0!important;padding:0!important;
  font-size:inherit!important;line-height:inherit!important;
}
body.single-post .content.single_con .cz_post_content .tyz-p3-toc li a,
body.single-post .content.single_con .cz_post_content .elementor-toc li a{
  color:#eaf3fc!important;text-decoration:none!important;
}
body.single-post .content.single_con .cz_post_content .tyz-p3-toc li a:is(:hover,:focus-visible),
body.single-post .content.single_con .cz_post_content .elementor-toc li a:is(:hover,:focus-visible){
  color:#ffe0a6!important;text-decoration:none!important;
}
/* Explicit transparent legacy text backgrounds should not disable contrast repair. */
body.single-post .content.single_con .cz_post_content :is(p,li) span[style*="color:" i][style*="background-color: transparent" i]{
  color:var(--tyz42-reading)!important;
}
