/* ChaloKaamPe R145 — platform-wide responsive shell calibration.
   Layout only. No business/authentication flow changes. */
:root{--ckp-r145-wide:1480px;--ckp-r145-workspace:1680px}
html,body{width:100%;max-width:100%;min-width:0;overflow-x:clip}
body *{min-width:0}
img,svg,video,canvas{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}
.table-wrap,[class*="table-wrap"]{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}

/* Public website — use the laptop/desktop viewport instead of a narrow 1180/1240 shell. */
@media (min-width:821px){
  body.role-public>.topbar{
    width:100%!important;
    padding-left:max(24px,calc((100vw - var(--ckp-r145-wide))/2))!important;
    padding-right:max(24px,calc((100vw - var(--ckp-r145-wide))/2))!important;
  }
  body.role-public>.container,
  body.role-public>main.container,
  body.public-secondary-body>.container,
  body.public-secondary-body>main.container{
    width:min(var(--ckp-r145-wide),calc(100% - 48px))!important;
    max-width:var(--ckp-r145-wide)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.public-home-body>.container{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}
  body.public-home-body .ckp-home-wrap{
    width:min(var(--ckp-r145-wide),calc(100% - 48px))!important;
    max-width:var(--ckp-r145-wide)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.role-public .footer{
    width:min(var(--ckp-r145-wide),calc(100% - 48px));
    max-width:var(--ckp-r145-wide);
    margin-left:auto;
    margin-right:auto;
  }
  body.public-secondary-body .footer{width:100%!important;max-width:none!important}
}

@media (min-width:821px) and (max-width:1199px){
  body.role-public>.topbar{padding-left:18px!important;padding-right:18px!important}
  body.role-public>.container,
  body.role-public>main.container,
  body.public-secondary-body>.container,
  body.public-secondary-body>main.container,
  body.public-home-body .ckp-home-wrap{width:calc(100% - 32px)!important;max-width:none!important}
}

/* Admin/employer workspaces — fill the available stage on laptop while keeping safe gutters. */
@media (min-width:1101px){
  body.admin-workspace-body .admin-content,
  body.employer-workspace-body .employer-content{
    width:100%!important;
    max-width:var(--ckp-r145-workspace)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:clamp(20px,2vw,34px)!important;
    padding-right:clamp(20px,2vw,34px)!important;
  }
}

/* Generic responsive safety for every root-surface page. */
@media (max-width:820px){
  body{min-width:0!important}
  body.role-public>.topbar{width:100%!important;max-width:100%!important}
  body.role-public>.container,
  body.role-public>main.container,
  body.public-secondary-body>.container,
  body.public-secondary-body>main.container{
    width:100%!important;max-width:100%!important;margin:0!important;padding-left:12px!important;padding-right:12px!important;
  }
  body.role-public main>*{max-width:100%}
  body.role-public .grid-2,body.role-public .grid-3,body.role-public .grid-4,body.role-public .form-row{grid-template-columns:minmax(0,1fr)!important}
  body.role-public .actions{max-width:100%;flex-wrap:wrap}
  body.role-public .actions>.btn,body.role-public .actions>button,body.role-public .actions>a{max-width:100%}
  body.role-public input,body.role-public select,body.role-public textarea{font-size:16px}
  body.public-secondary-body main.container>.section-title:first-child,
  body.public-secondary-body main.container>.card:first-child,
  body.public-secondary-body main.container>.app-hero:first-child,
  body.public-secondary-body main.container>.auth-shell:first-child{
    width:100%!important;max-width:100%!important;border-radius:20px!important;padding:22px 16px!important;text-align:center!important;
  }
  body.public-secondary-body main.container>.section-title:first-child h1,
  body.public-secondary-body main.container>.card:first-child h1,
  body.public-secondary-body main.container>.app-hero:first-child h1{margin-left:auto!important;margin-right:auto!important;font-size:clamp(28px,8vw,40px)!important}
  body.public-secondary-body main.container>.section-title:first-child .lead,
  body.public-secondary-body main.container>.card:first-child .lead,
  body.public-secondary-body main.container>.app-hero:first-child p{margin-left:auto!important;margin-right:auto!important}
  body.admin-workspace-body .admin-content,body.employer-workspace-body .employer-content{width:100%!important;max-width:100%!important}
}

@media (max-width:430px){
  body.role-public>.container,
  body.role-public>main.container,
  body.public-secondary-body>.container,
  body.public-secondary-body>main.container{padding-left:9px!important;padding-right:9px!important}
  body.role-public .card,body.role-public .app-card{max-width:100%!important}
}
