/* INFOTECH 3.10T — FixtureBuilder mobile stability
   Targets smartphone/tablet and mobile browsers that report large CSS width.
   Avoids viewport-height jumps, desktop sidebar duplication and side overflow.
*/
@media (max-width: 1180px), (pointer: coarse){
  html, body{
    overflow-x:hidden!important;
    min-width:0!important;
  }

  body .builder-space-bg,
  body .space-bg,
  body .infotech-particles,
  body .builder-particles{
    background-attachment:scroll!important;
    transform:none!important;
  }

  .builder-app-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    display:block!important;
    overflow:hidden!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    box-sizing:border-box!important;
  }

  .builder-sidebar,
  aside.builder-sidebar,
  .app-shell > aside.sidebar.builder-sidebar{
    display:none!important;
    visibility:hidden!important;
    width:0!important;
    height:0!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }

  .builder-main-content,
  .app-shell > .builder-main-content,
  section.main-content.builder-main-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:22px 14px 96px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .mobile-topbar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    width:100%!important;
    margin:0 0 20px!important;
  }

  .builder-hero,
  .brand-hero.builder-hero{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 18px!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  .builder-hero h1{
    font-size:clamp(34px, 10.5vw, 54px)!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  .builder-hero h1 span{
    display:block!important;
  }

  .hero-trust{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    width:100%!important;
    margin:16px 0!important;
  }

  .trust-chip{
    width:100%!important;
    max-width:100%!important;
    min-height:42px!important;
    box-sizing:border-box!important;
  }

  .builder-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:16px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  .input-panel,
  .output-panel,
  .panel,
  .builder-export-panel{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  .form-grid,
  .input-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  input, select, textarea, button{
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .output,
  #builderOutput{
    max-width:100%!important;
    min-height:240px!important;
    max-height:420px!important;
    overflow:auto!important;
    white-space:pre-wrap!important;
    word-break:break-word!important;
  }

  .table-wrap,
  .channel-table-wrap{
    width:100%!important;
    max-width:100%!important;
    overflow:auto!important;
  }

  .channel-table,
  table.channel-table{
    min-width:560px!important;
  }

  .infotech-support-float{
    width:112px!important;
    right:8px!important;
    bottom:8px!important;
    z-index:9998!important;
  }

  .infotech-support-float .support-bubble{
    display:none!important;
  }

  .infotech-support-float .support-mascot-btn{
    width:112px!important;
    height:104px!important;
  }

  .infotech-support-float .support-mascot-btn img,
  .infotech-support-float .support-mascot-btn video{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    transform:scale(1.16)!important;
    transform-origin:center!important;
  }
}
