:root{
  --pr-auth-red:#ed0d1f;
  --pr-auth-navy:#071426;
  --pr-auth-muted:#5e6b7d;
  --pr-auth-line:#dfe6ef;
  --pr-auth-soft:#f7f9fc;
  --pr-auth-white:#ffffff;
}

.pr-auth-page{
  min-height:calc(82vh - 82px);
  background:#f7f9fc;
  color:var(--pr-auth-navy);
  padding:46px 16px 64px;
}

.pr-auth-shell{
  width:100%;
  min-height:calc(100vh - 210px);
  display:flex;
  align-items:center;
  justify-content:center;
}

.pr-auth-card{
  width:min(100%,520px);
  background:var(--pr-auth-white);
  border:1px solid var(--pr-auth-line);
  border-radius:18px;
  padding:42px;
}

.pr-auth-card--wide{
  width:min(100%,680px);
}

.pr-auth-head{
  text-align:left;
  margin-bottom:30px;
}

.pr-auth-head h1{
  margin:0;
  color:var(--pr-auth-navy);
  font-family:"Barlow Condensed",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(42px,5vw,60px);
  line-height:.95;
  font-weight:900;
  text-transform:uppercase;
}

.pr-auth-head p{
  margin:14px 0 0;
  color: #071426;
  font-size:16px;
  line-height:1.55;
  font-weight:400;
}

.pr-auth-form{
  display:grid;
  gap:18px;
}

.pr-auth-field{
  display:grid;
  gap:8px;
}

.pr-auth-field-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

.pr-auth-field label,
.pr-auth-label-row label{
  color:var(--pr-auth-navy);
  font-size:14px;
  font-weight:400;
}

.pr-auth-label-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.pr-auth-mini-link,
.pr-auth-bottom a,
.pr-auth-check a{
  color:var(--pr-auth-red);
  text-decoration:none;
  font-weight:500;
}

.pr-auth-mini-link:hover,
.pr-auth-bottom a:hover,
.pr-auth-check a:hover{
  text-decoration:none;
}

.pr-auth-input{
  width:100%;
  min-height:54px;
  border:1px solid #cfd8e3;
  border-radius:10px;
  background:#fff;
  color:var(--pr-auth-navy);
  padding:0 16px;
  font-size:16px;
  font-weight:400;
  outline:none;
}

.pr-auth-input::placeholder{
  color:#8490a3;
}

.pr-auth-input:focus{
  border-color:var(--pr-auth-red);
}

.pr-auth-password{
  position:relative;
}

.pr-auth-password .pr-auth-input{
  padding-right:100px;
}

.pr-auth-password-toggle{
  position:absolute;
  right:8px;
  top:8px;
  height:38px;
  border:1px solid var(--pr-auth-line);
  border-radius:8px;
  background:#fff;
  color:var(--pr-auth-navy);
  padding:0 12px;
  font-size:13px;
  font-weight:500;
}

.pr-auth-check{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color: #071426;
  font-size:15px;
  line-height:1.45;
  font-weight:650;
}

.pr-auth-check input{
  width:18px;
  height:18px;
  margin-top:2px;
  accent-color:var(--pr-auth-red);
}

.pr-auth-submit{
  width:100%;
  min-height:54px;
  border:1px solid var(--pr-auth-red);
  border-radius:10px;
  background:var(--pr-auth-red);
  color:#fff;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:0 18px;
  font-size:16px;
  font-weight:600;
}

.pr-auth-submit:hover{
  background:#c60817;
  border-color:#c60817;
  color:#fff;
}

.pr-auth-submit--link{
  text-decoration:none;
}

.pr-auth-secondary{
  width:100%;
  min-height:52px;
  border:1px solid #cfd8e3;
  border-radius:10px;
  background:#fff;
  color:var(--pr-auth-navy);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:0 18px;
  font-size:16px;
  font-weight:600;
}

.pr-auth-secondary:hover{
  border-color:var(--pr-auth-red);
  color:var(--pr-auth-red);
}

.pr-auth-separator{
  color: #071426;
  text-align:center;
  font-size:14px;
  font-weight:800;
  padding:3px 0;
}

.pr-auth-note,
.pr-auth-bottom,
.pr-auth-hint{
  margin:0;
  color: #071426;
  font-size:14px;
  line-height:1.5;
  font-weight:400;
  text-align:center;
}

.pr-auth-hint{
  text-align:left;
}

.pr-auth-alert{
  border:1px solid var(--pr-auth-line);
  border-radius:10px;
  padding:13px 14px;
  background:#fff;
  color:var(--pr-auth-navy);
  font-weight:750;
  line-height:1.45;
  margin-bottom:18px;
}

.pr-auth-alert--success{
  border-color:#bbf7d0;
  color:#166534;
  background:#f0fdf4;
}

.pr-auth-alert--warning{
  border-color:#fed7aa;
  color:#9a3412;
  background:#fff7ed;
}

.pr-auth-alert--danger,
.pr-auth-alert--error{
  border-color:#fecdd3;
  color:#991b1b;
  background:#fff1f2;
}

.pr-auth-debug{
  color: #071426;
  font-size:13px;
  margin-bottom:14px;
}

.pr-auth-strength{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  height:7px;
}

.pr-auth-strength span{
  display:block;
  border-radius:999px;
  background:#e5eaf1;
}

.pr-auth-strength[data-score="1"] span:nth-child(1),
.pr-auth-strength[data-score="2"] span:nth-child(-n+2),
.pr-auth-strength[data-score="3"] span:nth-child(-n+3),
.pr-auth-strength[data-score="4"] span:nth-child(-n+4){
  background:var(--pr-auth-red);
}

.d-none{
  display:none!important;
}

@media(max-width:760px){
  .pr-auth-page{
    padding:24px 12px 44px;
  }

  .pr-auth-shell{
    min-height:auto;
    align-items:flex-start;
  }

  .pr-auth-card,
  .pr-auth-card--wide{
    width:100%;
    padding:28px 22px;
    border-radius:16px;
  }

  .pr-auth-head{
    margin-bottom:24px;
  }

  .pr-auth-head h1{
    font-size:42px;
  }

  .pr-auth-head p{
    font-size:16px;
  }

  .pr-auth-field-grid{
    grid-template-columns:1fr;
  }

  .pr-auth-label-row{
    align-items:flex-start;
    gap:6px;
  }

  .pr-auth-password .pr-auth-input{
    padding-right:90px;
  }
}
