.login-page{min-height:100vh;background:var(--bg);display:flex;align-items:stretch;min-width:0;overflow-x:hidden}
.login-page__wrap{display:grid;grid-template-columns:1fr 1fr;width:100%;min-height:100vh;min-height:100dvh}
.login-page__brand{background:var(--dark);color:var(--white);padding:clamp(2rem,5vw,4rem);padding-left:max(clamp(2rem,5vw,4rem),var(--safe-left));display:flex;flex-direction:column;justify-content:center}
.login-page__logo{display:inline-flex;align-items:center;gap:.75rem;color:var(--white);font-family:var(--font-d);font-weight:900;font-size:.95rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:2.5rem}
.login-page__logo img{border-radius:8px}
.login-page__brand h1{font-family:var(--font-d);font-size:clamp(1.8rem,4vw,2.6rem);font-weight:900;text-transform:uppercase;margin-bottom:1rem;line-height:1.05}
.login-page__brand h1 i{color:var(--em);margin-right:.5rem}
.login-page__brand>p{color:rgba(255,255,255,.65);line-height:1.85;max-width:420px;margin-bottom:2rem}
.login-page__feats{list-style:none;display:grid;gap:.85rem;margin-bottom:2.5rem}
.login-page__feats li{display:flex;align-items:center;gap:.75rem;font-size:.88rem;color:rgba(255,255,255,.75)}
.login-page__feats i{width:32px;height:32px;background:rgba(255,255,255,.08);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--em)}
.login-page__back{display:inline-flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.5);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(255,255,255,.15);padding:.65rem 1.2rem;width:fit-content;transition:all .2s}
.login-page__back:hover{color:var(--white);border-color:var(--em)}
.login-page__form{display:flex;align-items:center;justify-content:center;padding:clamp(1.5rem,4vw,3rem);padding-right:max(clamp(1.5rem,4vw,3rem),var(--safe-right));background:var(--white);min-width:0}
.login-card{width:100%;max-width:420px;min-width:0}
.login-card__logo{margin-bottom:1rem}
.login-card h2{font-family:var(--font-d);font-size:clamp(1.25rem,4vw,1.5rem);font-weight:900;text-transform:uppercase;color:var(--dark);margin-bottom:.25rem}
.login-card>p{font-size:.88rem;color:var(--muted);margin-bottom:1.5rem}
.login-card .field label{display:flex;align-items:center;gap:.4rem}
.login-card__hint{margin-top:1.5rem;text-align:center;font-size:.82rem;color:var(--muted)}
.login-card__hint a{color:var(--em);font-weight:700}
.login-demo{
  margin-top:1.5rem;
  padding:1.15rem 1.25rem;
  background:rgba(5,150,105,.06);
  border:1px solid rgba(5,150,105,.15);
  border-radius:14px;
}
.login-demo__title{
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--em);
  margin-bottom:.85rem;
  display:flex;
  align-items:center;
  gap:.45rem;
}
.login-demo__item{margin-bottom:.65rem}
.login-demo__item:last-of-type{margin-bottom:.5rem}
.login-demo__role{
  display:block;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--dark);
  margin-bottom:.35rem;
}
.login-demo__role i{color:var(--em);margin-right:.25rem}
.login-demo__fill{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  flex-wrap:wrap;
  padding:.7rem .9rem;
  background:var(--white);
  border:1px solid rgba(15,23,42,.08);
  border-radius:10px;
  cursor:pointer;
  font-family:var(--font-b);
  font-size:.78rem;
  color:var(--dark);
  text-align:left;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.login-demo__fill:hover{
  border-color:rgba(5,150,105,.35);
  box-shadow:0 6px 20px rgba(5,150,105,.1);
  transform:translateY(-1px);
}
.login-demo__fill strong{color:var(--muted);font-weight:700;font-size:.68rem;text-transform:uppercase;letter-spacing:.04em}
.login-demo__fill i{color:var(--em);font-size:.82rem;flex-shrink:0}
.login-demo__note{
  font-size:.68rem;
  color:var(--muted);
  line-height:1.5;
  margin-top:.25rem;
}
@media(max-width:900px){
.login-page__wrap{grid-template-columns:1fr}
.login-page__brand{padding:2rem 1.5rem 1.5rem;padding-left:max(1.5rem,var(--safe-left))}
.login-page__feats{display:none}
.login-page__form{padding:clamp(1.25rem,4vw,2rem)}
}
@media(max-width:480px){
.login-page__brand h1{font-size:clamp(1.45rem,7vw,1.8rem)}
.login-demo{padding:1rem}
.login-demo__fill{font-size:.72rem;padding:.65rem .75rem}
}
@media(max-width:360px){
.login-page__back{width:100%;justify-content:center}
}
