/* Shared launch-hardening layer for every Math worksheet page. */
:root{
  --ka-math-font:"Cambria Math","STIX Two Math","Times New Roman",serif;
  --ka-ui-font:"Microsoft JhengHei","Noto Sans TC","Segoe UI",sans-serif;
}

.ka-visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.math-var,.ka-math-var,.page var,mjx-mi,mjx-mi *{
  font-family:var(--ka-math-font)!important;
  font-style:italic;
}

.ka-mobile-sheet-note{
  display:none;
  max-width:760px;
  margin:8px auto;
  padding:8px 12px;
  border:1px solid #334155;
  border-radius:12px;
  background:#0b1220;
  color:#bae6fd;
  font:800 12px/1.5 var(--ka-ui-font);
}

.ka-sheet-scroll{
  max-width:100%;
  overflow-x:auto!important;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}

.ka-sheet-scale{
  position:relative;
  margin-inline:auto;
  transform-origin:top left;
}

body:not(.light-paper) .source-note,
body:not(.light-paper) .learning-note,
body:not(.light-paper) .path-note{
  background:#1c140e!important;
  border-color:#92400e!important;
  color:#fde68a!important;
}

@media (max-width:900px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body{padding-top:0!important}

  .ka-topbar,.topbar{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px!important;
  }
  .ka-topbar .ka-brand,.topbar .brand{min-width:0!important;white-space:normal!important}
  .ka-topbar .ka-time,.topbar .time{margin-left:auto!important;white-space:normal!important}
  .ka-topbar .back-link,.topbar .back-link{order:2!important}
  .ka-topbar .ka-actions,.topbar .actions{
    order:3!important;
    width:100%!important;
    margin:0!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .ka-topbar .ka-actions .btn,.ka-topbar .ka-actions button,
  .topbar .actions .btn,.topbar .actions button{
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
    white-space:normal!important;
    line-height:1.25!important;
  }

  .settings-panel,.settings,.controls,.control-panel{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    margin:8px!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  .settings-panel>*,.settings>*,.controls>*,.control-panel>*{min-width:0!important;max-width:100%!important}
  .settings-panel select,.settings-panel input,.settings select,.settings input{
    max-width:100%!important;
  }

  .learning-path,.learning-grid,.path-grid,.related-grid,.unit-path,.bridge-grid{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    margin:8px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .learning-path>*,.learning-grid>*,.path-grid>*,.related-grid>*,.unit-path>*,.bridge-grid>*{
    min-width:0!important;
    width:auto!important;
    writing-mode:horizontal-tb!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }

  .page-container,.paper-container,.worksheet-container,.paper-wrap{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:8px!important;
    transform:none!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    display:block!important;
  }
  .page{
    flex:none!important;
    min-width:0!important;
    margin:0!important;
    transform-origin:top left!important;
  }
  .ka-mobile-sheet-note{display:block}

  .ka-junior-affiliate-panel,.ka-senior-affiliate-panel{
    width:calc(100% - 16px)!important;
    margin:12px 8px!important;
  }
}

@media print{
  .ka-mobile-sheet-note{display:none!important}
  .ka-sheet-scroll{overflow:visible!important}
  .ka-sheet-scale{width:auto!important;height:auto!important;margin:0!important}
  .page{transform:none!important}
}
