html,
body{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}

*{
  box-sizing:border-box!important;
}

@media(max-width:900px){
  body,
  main,
  section,
  .container,
  .wrap,
  .wrapper,
  .page,
  .content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  body{
    padding:0!important;
  }

  main,
  section{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .card,
  .panel,
  .box,
  .form-card,
  .cv-form,
  .application-form,
  form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    overflow:hidden!important;
  }

  .form-grid,
  .grid,
  .row,
  .two-col,
  .three-col,
  .skills-grid,
  .checkbox-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  input,
  select,
  textarea,
  button{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  input,
  select,
  textarea{
    font-size:16px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  h1,h2,h3,h4,p,span,label,div{
    max-width:100%!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }

  .steps,
  .step-list,
  .tabs,
  .pill-row{
    display:flex!important;
    overflow-x:auto!important;
    max-width:100%!important;
    gap:8px!important;
    padding-bottom:8px!important;
  }

  .steps > *,
  .step-list > *,
  .tabs > *,
  .pill-row > *{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }

  .bottom-actions,
  .sticky-actions,
  .fixed-actions{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
    padding:12px 14px calc(12px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.96)!important;
    z-index:9999!important;
  }

  body{
    padding-bottom:100px!important;
  }

  .cv-preview,
  #cvPreview,
  .resume-preview{
    transform:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
}
