
/* ===== جيل التدبر — طبقة المراجعة النهائية ===== */
html{
  min-height:100%;
  overflow-y:auto!important;
  -webkit-text-size-adjust:100%;
}
body{
  min-height:100%;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
}
main,#app,#game{
  max-height:none!important;
  overflow:visible!important;
}
.page.active,.screen.active,section.active{
  max-height:none!important;
  overflow:visible!important;
  touch-action:pan-y!important;
}
img,svg,video,canvas{
  max-width:100%;
}
img{
  height:auto;
  object-fit:contain;
}
button,.btn,.choice,.card,[role="button"]{
  font-family:inherit!important;
  line-height:1.35!important;
  text-rendering:optimizeLegibility;
  overflow-wrap:anywhere;
  -webkit-tap-highlight-color:transparent;
}
button:not(.hotspot):not(.mind-dot):not(.node):not(.dot){
  min-height:44px;
}
#toast,.toast,.feedback,.message,.result,.status,.fb{
  font-weight:800!important;
  line-height:1.5!important;
}
#toast.show,.toast.show{
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.65)!important;
}
.good,.correct,.matched,.ok{
  border-color:#1b7f45!important;
}
.bad,.wrong,.error{
  border-color:#b42318!important;
}
@media(max-width:700px){
  body{
    padding-bottom:max(92px,env(safe-area-inset-bottom))!important;
  }
  main,#app,#game{
    padding-bottom:105px!important;
  }
  h1{font-size:clamp(26px,8vw,42px)!important;line-height:1.25!important}
  h2{font-size:clamp(22px,6.5vw,34px)!important;line-height:1.3!important}
  h3{line-height:1.35!important}
  p,.lead,.instruction,.explain,.note{
    overflow-wrap:anywhere;
  }
  .nav,.footer-nav,.bottom-nav{
    max-width:100vw!important;
  }
}
@media(min-width:701px) and (max-width:1100px){
  main,#app,#game{padding-bottom:70px!important}
}
