/* Gematrixx V66 — sitewide secondary-page mobile hardening */
@media (max-width: 820px) {
  /* Shared page shell */
  [id^="page"] { max-width:100%!important; min-width:0!important; overflow-x:clip!important; }
  [id^="page"] :where(.wrap,.shell,.container,.content,.panel,.card,details,fieldset) { min-width:0!important; max-width:100%!important; }
  [id^="page"] :where(img,svg,canvas,video,iframe) { max-width:100%!important; height:auto; }
  [id^="page"] :where(input,select,textarea,button) { max-width:100%!important; min-width:0!important; }

  /* Real data tables keep their structure and scroll locally. */
  #pageQuran .tw,
  #pageTarot .tw,
  #pageMacrocosm .mc-table-wrap,
  #pageBirthcard .bc109-table-wrap,
  #pageAstro .az-tbl-wrap,
  #pageAdmin table,
  #pageMoon table,
  .history-table-wrap {
    width:100%!important; max-width:100%!important; overflow-x:auto!important;
    -webkit-overflow-scrolling:touch; overscroll-behavior-inline:contain;
  }
  #pageQuran .tw > table,
  #pageTarot .tw > table,
  #pageMacrocosm .mc-table-wrap > table,
  #pageBirthcard .bc109-table-wrap > table,
  #pageAstro .az-tbl-wrap > table,
  #pageAdmin table,
  #pageMoon table,
  .history-table-wrap > table {
    width:max-content!important; min-width:100%!important; max-width:none!important;
    table-layout:auto!important;
  }
  [id^="page"] table :where(th,td){ white-space:normal; overflow-wrap:anywhere; }

  /* Quran secondary tools */
  #pageQuran :where(.row,.controls,.toolbar,.search-row,.filter-row){flex-wrap:wrap!important}
  #pageQuran :where(#srchTxt,#srchSur,#AS,#AV){flex:1 1 100%!important;width:100%!important;min-width:0!important}
  #pageQuran :where(.qvo-grid,.mq2-stats,.mq2-focus-grid,.mq2-groups,.mq2-two){grid-template-columns:minmax(0,1fr)!important}

  /* Gematria secondary pages */
  #pageGematriaAR .admin-global-search-panel,
  #pageGematriaEN .admin-global-search-panel,
  #pageHebrewGematria .admin-global-search-panel,
  #pageGreekGematria .admin-global-search-panel,
  #pageSlavicGematria .admin-global-search-panel {width:100%!important;max-width:100%!important}
  :is(#pageGematriaAR,#pageGematriaEN,#pageHebrewGematria,#pageGreekGematria,#pageSlavicGematria)
  :where(.gen-entry-wrap,.gen-entry-row,.ar-entry-outer,.admin-global-search-panel>div){flex-wrap:wrap!important}
  :is(#pageGematriaAR,#pageGematriaEN,#pageHebrewGematria,#pageGreekGematria,#pageSlavicGematria)
  :where(.letter-vals-grid,.lcard-grid,.geo-lcard-grid){grid-template-columns:repeat(auto-fit,minmax(52px,1fr))!important}

  /* Seven-letter and symbolic grids */
  #pageLettersSecrets #lsGrid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.45rem!important}
  #pageNumsym #nsGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  /* Date matrix */
  #pageDateMatrix :where(.dm-grid,.dm-fields,.dm-main-grid,.dm-two-col){grid-template-columns:minmax(0,1fr)!important}
  #pageDateMatrix .dm-field{max-width:none!important;width:100%!important}

  /* Macrocosm / astrology / birth card */
  #pageMacrocosm :where(.mc-grid,.mc-two-col,.mc-cards),
  #pageAstro :where(.az-grid,.az107-main,.az107-control-grid),
  #pageBirthcard :where(.bc-grid,.bc109-grid){grid-template-columns:minmax(0,1fr)!important}

  /* Moon page */
  #pageMoon .dc-date-box{width:100%!important}
  #pageMoon #moonDisplayWrap{width:min(220px,72vw)!important;height:min(220px,72vw)!important;margin-inline:auto!important}
  #pageMoon :where(#moonMainCanvas,#moonApiImg){width:100%!important;height:100%!important}
  #pageMoon #moonLunarGrid{grid-template-columns:repeat(7,minmax(0,1fr))!important;font-size:clamp(.62rem,2.7vw,.8rem)!important}
  #pageMoon [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:minmax(0,1fr)!important}

  /* 3D geometry */
  #pageGeometry3D #g3dCanvasHost{height:min(52vh,430px)!important}
  #pageGeometry3D :where(.g3d-grid,.g3d-controls,.g3d-two-col){grid-template-columns:minmax(0,1fr)!important}

  /* Text and letter pages */
  :is(#pagePaleo,#pagePhoenician,#pageGreekLetters,#pageChineseLetters,#pageHieroglyphics,
      #pagePythagoras,#pageJafr,#pageManazil,#pageMizan,#pageTaoism,#pageGnosticism)
  :where([id$="Root"],[id$="Panel"],.panel,.grid){max-width:100%!important;min-width:0!important}

  /* Search / speller / periodic / admin */
  #pageSpeller :where(form,.row,.controls),#pagePeriodic :where(form,.row,.controls),#pageAdmin :where(.row,.controls,.toolbar){flex-wrap:wrap!important}
  #pageSpeller #spellerInput{flex:1 1 100%!important;width:100%!important;min-width:0!important}
  #pageAdmin :where(input,select,label,[style*="min-width:240px"],[style*="min-width:260px"]){min-width:0!important;max-width:100%!important}

  /* Dialogs and drawers */
  [id^="page"] :where([role="dialog"],.modal,.modal-content,.popup,.dialog,.drawer,.side-panel){
    width:min(96vw,680px)!important;max-width:96vw!important;max-height:92dvh!important;overflow:auto!important;
  }
}

@media (max-width: 520px) {
  [id^="page"]{padding-inline:0!important}
  [id^="page"] :where(h1,h2,h3){overflow-wrap:anywhere}
  #pageLettersSecrets #lsGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #pageNumsym #nsGrid{grid-template-columns:minmax(0,1fr)!important}
  #pageMoon #moonLunarGrid{gap:1px!important;padding:3px!important}
  #pageGeometry3D #g3dCanvasHost{height:48vh!important;min-height:300px!important}
}
