html.package-locked,
html.package-locked body{
  min-height:100%;
  overflow:hidden;
  background:#eef3ed;
}

html.package-locked body.ui-board-page{
  display:block;
  height:100dvh;
}

html.package-locked body.ui-board-page>:not(.package-access){
  display:none!important;
}

.package-access{
  min-height:100dvh;
  display:grid;
  place-items:center;
  padding:24px;
  background:#eef3ed;
  color:#000;
}

html:not(.package-locked) .package-access{
  display:none;
}

.package-access__form{
  width:min(100%,430px);
  display:grid;
  gap:18px;
  padding:clamp(24px,5vw,44px);
  border:1px solid rgba(124,124,123,.42);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 48px rgba(0,0,0,.12);
}

.package-access__form img{
  width:112px;
  height:auto;
}

.package-access__form h1{
  margin:8px 0 0;
  color:#28803d;
  font:700 clamp(34px,8vw,52px)/.94 var(--font-display,Signika,system-ui,sans-serif);
  letter-spacing:-.02em;
}

.package-access__form p{
  margin:0;
  color:#000;
  font-size:16px;
  line-height:1.45;
}

.package-access__field{
  display:grid;
  gap:8px;
}

.package-access__field label{
  font-weight:800;
}

.package-access__field input{
  width:100%;
  min-height:52px;
  padding:12px 14px;
  border:2px solid #7c7c7b;
  border-radius:12px;
  background:#fff;
  color:#000;
  font:700 18px/1.2 Signika,system-ui,sans-serif;
}

.package-access__field input:focus-visible{
  border-color:#28803d;
  outline:3px solid rgba(40,128,61,.24);
  outline-offset:2px;
}

.package-access__field input[aria-invalid="true"]{
  border-color:#bd4337;
}

.package-access__form button{
  min-height:52px;
  padding:12px 20px;
  border:0;
  border-radius:999px;
  background:#28803d;
  color:#fff;
  font-weight:900;
  cursor:pointer;
  transition:background-color 180ms cubic-bezier(.23,1,.32,1),transform 140ms cubic-bezier(.23,1,.32,1);
}

.package-access__form button:hover{
  background:#154421;
}

.package-access__form button:active{
  transform:scale(.98);
}

.package-access__error{
  color:#bd4337!important;
  font-weight:800;
}

@media (prefers-reduced-motion:reduce){
  .package-access__form button{transition:background-color 120ms cubic-bezier(.23,1,.32,1)}
  .package-access__form button:active{transform:none}
}
