/* SPV Locations v1.6 — iPhone visual-viewport-safe account and published plans.
   Unlike layout viewport units, visualViewport.width follows iOS Safari's visible area
   when the browser retained an automatic focus zoom from an earlier page. */
#spv-demo-login,
#spv-worker-portal {
  box-sizing: border-box !important;
  left: var(--spv-visible-left, 0px) !important;
  right: auto !important;
  width: var(--spv-visible-width, 100%) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: clip !important;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
#spv-demo-login {
  grid-template-columns: minmax(0, 1fr) !important;
  justify-items: center;
  overflow-y: auto;
}
#spv-demo-login .spv-login-card {
  box-sizing: border-box !important;
  width: min(100%, 440px) !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden;
  overflow-y: auto;
}
#spv-demo-login .spv-roles,
#spv-demo-login .spv-role-card,
#spv-demo-login .spv-worker-card,
#spv-demo-login .spv-worker-heading,
#spv-demo-login .spv-pub-summary,
#spv-demo-login .spv-custom-note,
#spv-demo-login .spv-demo-tag {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  overflow-wrap: anywhere;
}
#spv-demo-login .spv-worker-heading > span:last-child,
#spv-demo-login .spv-role-card > span:nth-child(2) {min-width:0;}
#spv-worker-portal {overflow-y: auto !important;}
#spv-worker-portal .spv-w-shell,
#spv-worker-portal .spv-w-header,
#spv-worker-portal .spv-w-panel,
#spv-worker-portal .spv-w-filters,
#spv-worker-portal .spv-w-weekgrid {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
#spv-worker-portal .spv-w-filters {grid-template-columns:repeat(2,minmax(0,1fr));}
#spv-worker-portal .spv-w-filters label,
#spv-worker-portal .spv-w-filters select {min-width:0;max-width:100%;width:100%;box-sizing:border-box;}
#spv-worker-portal .spv-w-filters select,
#spv-worker-portal #spv-pub-pass {font-size:16px !important;}
#spv-worker-portal .spv-w-day {min-width:0;width:100%;max-width:100%;}
#spv-worker-portal .spv-w-dayname,
#spv-worker-portal .spv-w-activity {min-width:0;max-width:100%;overflow-wrap:anywhere;}
@media(max-width:540px){
  #spv-worker-portal .spv-w-filters {grid-template-columns:minmax(0,1fr);gap:3px;}
  #spv-worker-portal .spv-w-topline {flex-wrap:wrap;}
  #spv-worker-portal .spv-w-topline h2 {min-width:0;}
  #spv-worker-portal .spv-w-weekgrid .spv-w-day {grid-template-columns:minmax(0,34%) minmax(0,1fr) !important;gap:7px!important;}
  #spv-worker-portal .spv-w-filters select {height:46px;font-size:16px!important;}
}
@media(max-width:360px){
  #spv-demo-login {padding:10px !important;}
  #spv-worker-portal .spv-w-weekgrid .spv-w-day {grid-template-columns:minmax(0,36%) minmax(0,1fr) !important;}
}
