/* Registration state for the shared Tormami authentication modal.
 * Loaded after the base modal stylesheet; selectors are intentionally scoped
 * to .is-register so the approved sign-in design remains unchanged.
 */

.tml-modal.is-register .tml-dialog{
  width:min(1040px,calc(100vw - 40px))!important;
  max-height:min(710px,calc(100dvh - 32px))!important;
  grid-template-columns:minmax(0,1fr) minmax(470px,1fr)!important;
}

.tml-modal.is-register .tml-visual,
.tml-modal.is-register .tml-panel{
  min-height:650px!important;
}

.tml-modal.is-register .tml-visual{
  padding:30px 30px 24px!important;
  background:
    radial-gradient(circle at 91% 4%,rgba(255,108,43,.12),transparent 31%),
    radial-gradient(circle at 92% 54%,rgba(70,142,244,.10),transparent 29%),
    linear-gradient(145deg,#fff9f4 0%,#fff 50%,#eef7ff 100%)!important;
}

.tml-modal.is-register .tml-visual>h2{
  max-width:410px!important;
  font-size:clamp(36px,3vw,46px)!important;
}

.tml-modal.is-register .tml-visual>p:not(.tml-handwritten){
  max-width:420px!important;
}

.tml-modal.is-register .tml-benefits{
  margin-top:14px!important;
}

.tml-modal.is-register .tml-visual__image-wrap{
  left:30px!important;
  right:30px!important;
  bottom:53px!important;
  height:190px!important;
  border-radius:18px!important;
}

.tml-modal.is-register .tml-visual__image{
  object-fit:cover!important;
  object-position:center 42%!important;
}

.tml-modal.is-register .tml-handwritten{
  left:30px!important;
  bottom:15px!important;
}

.tml-modal.is-register .tml-panel{
  justify-content:flex-start!important;
  overflow-y:auto!important;
  padding:38px 34px 25px!important;
  scrollbar-width:thin;
  scrollbar-color:#dce5ef transparent;
}

.tml-modal.is-register .tml-panel__head{
  margin-bottom:14px!important;
}

.tml-modal.is-register .tml-panel__icon{
  background:#fff0e8!important;
  color:#ff5a0a!important;
}

.tml-modal.is-register .tml-panel__head h2{
  font-size:27px!important;
}

.tml-modal.is-register .tml-panel__head p{
  max-width:390px;
  font-size:10.8px!important;
}

.tml-modal.is-register .tml-alert{
  margin:-2px 0 10px!important;
}

.tml-register{
  gap:9px!important;
}

.tml-register-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}

.tml-modal.is-register .tml-field{
  min-width:0;
}

.tml-modal.is-register .tml-field>span{
  font-size:9.5px!important;
}

.tml-modal.is-register .tml-control{
  height:45px!important;
  border-radius:10px!important;
}

.tml-modal.is-register .tml-control input{
  font-size:10.5px!important;
}

.tml-modal.is-register .tml-submit{
  height:47px!important;
  margin-top:1px;
}

.tml-register-consents{
  display:grid;
  gap:7px;
  margin:1px 0 2px;
}

.tml-remember--wrap{
  align-items:flex-start!important;
  line-height:1.35;
}

.tml-remember--wrap>span{
  flex:0 0 16px!important;
  margin-top:1px;
}

.tml-remember--wrap em{
  color:#66758a;
  font-style:normal;
  font-size:8.8px;
  font-weight:650;
}

.tml-remember--wrap a{
  color:#ec5310;
  font-weight:850;
  text-decoration:underline;
  text-underline-offset:2px;
}

.tml-password-strength{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:5px;
  align-items:center;
  margin-top:-2px;
}

.tml-password-strength[hidden]{display:none!important}

.tml-password-strength>span{
  height:3px;
  border-radius:999px;
  background:#e7edf4;
  transition:background .18s ease;
}

.tml-password-strength>span.is-active{
  background:#ff6a20;
}

.tml-password-strength small{
  grid-column:1/-1;
  margin-top:1px;
  color:#8290a4;
  font-size:8px;
  line-height:1.3;
}

.tml-modal.is-register .tml-divider{
  margin:10px 0!important;
}

.tml-modal.is-register .tml-create-account{
  height:42px!important;
}

.tml-modal.is-register .tml-security{
  margin-top:9px!important;
}

/* Keep the registration experience usable on shorter laptops. */
@media(max-height:730px) and (min-width:881px){
  .tml-modal.is-register .tml-dialog{
    max-height:calc(100dvh - 20px)!important;
  }
  .tml-modal.is-register .tml-visual,
  .tml-modal.is-register .tml-panel{
    min-height:600px!important;
  }
  .tml-modal.is-register .tml-visual{
    padding-top:24px!important;
  }
  .tml-modal.is-register .tml-visual>h2{
    font-size:38px!important;
  }
  .tml-modal.is-register .tml-benefits{
    margin-top:10px!important;
  }
  .tml-modal.is-register .tml-benefits>div{
    min-height:70px!important;
  }
  .tml-modal.is-register .tml-visual__image-wrap{
    height:165px!important;
    bottom:48px!important;
  }
  .tml-modal.is-register .tml-panel{
    padding-top:31px!important;
    padding-bottom:20px!important;
  }
  .tml-modal.is-register .tml-panel__head{
    margin-bottom:11px!important;
  }
  .tml-register{
    gap:7px!important;
  }
  .tml-modal.is-register .tml-control{
    height:42px!important;
  }
  .tml-modal.is-register .tml-submit{
    height:44px!important;
  }
  .tml-modal.is-register .tml-divider{
    margin:7px 0!important;
  }
}

@media(max-width:880px){
  .tml-modal.is-register .tml-dialog{
    width:min(560px,calc(100vw - 24px))!important;
    max-height:calc(100dvh - 24px)!important;
    grid-template-columns:1fr!important;
    overflow:auto!important;
  }
  .tml-modal.is-register .tml-panel{
    min-height:0!important;
    overflow:visible!important;
    padding:45px 26px 25px!important;
  }
  .tml-register-grid{
    gap:9px;
  }
}

@media(max-width:560px){
  .tml-modal.is-register .tml-dialog{
    width:calc(100vw - 12px)!important;
    max-height:calc(100dvh - 12px)!important;
  }
  .tml-modal.is-register .tml-panel{
    padding:42px 16px 21px!important;
  }
  .tml-register-grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  .tml-modal.is-register .tml-panel__head h2{
    font-size:24px!important;
  }
  .tml-modal.is-register .tml-control{
    height:46px!important;
  }
  .tml-register-consents{
    gap:8px;
  }
  .tml-remember--wrap em{
    font-size:8.5px;
  }
}
