#authMod{
  position:fixed;inset:0;z-index:500;background:var(--vbg);
  overflow-y:auto;transform:translateX(100%);
  transition:transform .45s cubic-bezier(.22,1,.36,1);
}
#authMod.open{transform:translateX(0);}
#authMod .subPgHdr{background:color-mix(in srgb,var(--bg) 92%,transparent)!important;}
#authMod .subPgTitle{color:var(--tx);}

.laBody{ max-width:460px; margin:0 auto; padding:var(--sp-7) var(--sp-7) var(--sp-9); color:var(--vtx); }

.laTopLink{ text-align:center; font-size:var(--fs-md); color:rgba(var(--vtx2-rgb),.6); margin:var(--sp-1) 0 var(--sp-8); }
.laTopLink button{ background:none; border:none; color:var(--pb); font-weight:700; font-size:var(--fs-md); cursor:pointer; padding:0; margin-left:var(--sp-2); font-family:inherit; }
.laTopLink button:hover{ text-decoration:underline; }

.laBrand{ text-align:center; margin-bottom:var(--sp-7); }
.laEyebrow{ font-family:var(--fm); font-size:var(--fs-2xs); letter-spacing:var(--ls-widest); color:var(--pb); text-transform:uppercase; margin-bottom:var(--sp-4); }
.laLogo{ font-family:var(--fd); font-weight:800; font-size:var(--fs-5xl); color:var(--brand-orange); letter-spacing:var(--ls-tight); }
.laLogo span{ color:var(--brand-red); }
.laTag{ color:rgba(var(--vtx2-rgb),.55); font-size:var(--fs-md); line-height:var(--lh-body); margin-top:var(--sp-6); }

.laFeatures{ display:flex; justify-content:center; gap:var(--sp-7); flex-wrap:wrap; margin:var(--sp-8) 0; }
.laFeat{ display:flex; align-items:center; gap:var(--sp-2); font-size:var(--fs-xs); color:rgba(var(--vtx2-rgb),.75); }
.laFeat svg{ width:15px; height:15px; color:var(--pb); flex-shrink:0; }

.laDivider{ height:1px; background:rgba(var(--pg-rgb),.1); margin:var(--sp-8) 0 var(--sp-8); }

.laHead{ font-family:var(--fb); font-weight:800; font-size:var(--fs-4xl); color:var(--vtx); text-align:center; margin:0 0 var(--sp-2); }
.laSub{ text-align:center; color:rgba(var(--vtx2-rgb),.55); font-size:var(--fs-md); margin:0 0 var(--sp-8); }

.laErr{ display:none; color:#f87171; font-size:var(--fs-sm); margin:-.6rem 0 var(--sp-6); }
.laErr.show{ display:block; }
.laMsg{ display:none; color:#86efac; font-size:var(--fs-sm); line-height:var(--lh-body); margin:-.6rem 0 var(--sp-6); }

.laFieldWrap{ margin-bottom:var(--sp-7); }
.laLabel{ display:block; font-size:var(--fs-sm); font-weight:700; color:var(--vtx); margin-bottom:var(--sp-3); }
.laInputBox{ position:relative; }
.laIcon{ position:absolute; left:.95rem; top:50%; transform:translateY(-50%); width:18px; height:18px; color:rgba(var(--vtx2-rgb),.4); pointer-events:none; }
.laInput{ width:100%; background:rgba(var(--pg-rgb),.045); border:1px solid rgba(var(--pg-rgb),.14); border-radius:12px; color:var(--vtx); font-size:var(--fs-md); padding:var(--sp-5) var(--sp-6) var(--sp-5) var(--sp-9); font-family:var(--fb); transition:border-color .2s,box-shadow .2s; }
.laInput[type="password"],.laInput.laHasEye{ padding-right:var(--sp-9); }
.laInput::placeholder{ color:rgba(var(--vtx2-rgb),.35); }
.laInput:focus{ outline:none; border-color:var(--pgd); box-shadow:0 0 0 3px rgba(var(--pgd-rgb),.22); }
.laEyeBtn{ position:absolute; right:.85rem; top:50%; transform:translateY(-50%); background:none; border:none; cursor:pointer; color:rgba(var(--vtx2-rgb),.5); padding:var(--sp-1); display:flex; }
.laEyeBtn svg{ width:18px; height:18px; }
.laEyeBtn:hover{ color:rgba(var(--vtx2-rgb),.8); }

.laRow{ display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--sp-7); font-size:var(--fs-sm); flex-wrap:wrap; gap:var(--sp-4); }
.laCheck{ display:flex; align-items:center; gap:var(--sp-3); color:rgba(var(--vtx2-rgb),.7); cursor:pointer; }
.laCheck input{ width:16px; height:16px; accent-color:var(--pgd); }
.laForgot{ background:none; border:none; color:var(--pb); font-size:var(--fs-sm); cursor:pointer; font-family:inherit; padding:0; }
.laForgot:hover{ text-decoration:underline; }

.laSubmit{ width:100%; padding:var(--sp-6); border-radius:12px; background:rgba(var(--pgd-rgb),.1); border:1.5px solid var(--pgd); color:var(--pb); font-weight:700; font-size:var(--fs-md); cursor:pointer; transition:background .2s,box-shadow .2s; font-family:var(--fb); }
.laSubmit:hover{ background:rgba(var(--pgd-rgb),.18); box-shadow:0 0 20px rgba(var(--pgd-rgb),.28); }
.laSubmit:disabled{ opacity:.6; cursor:default; }

.laOrDiv{ display:flex; align-items:center; gap:var(--sp-6); margin:var(--sp-8) 0 var(--sp-6); color:rgba(var(--vtx2-rgb),.4); font-size:var(--fs-xs); }
.laOrDiv::before,.laOrDiv::after{ content:''; flex:1; height:1px; background:rgba(var(--pg-rgb),.12); }

.laSocial{ display:flex; gap:var(--sp-5); margin-bottom:var(--sp-8); }
.laSocialBtn{ flex:1; display:flex; align-items:center; justify-content:center; gap:var(--sp-3); padding:var(--sp-5) var(--sp-2); border-radius:12px; border:1px solid rgba(var(--pg-rgb),.14); background:rgba(var(--pg-rgb),.03); color:var(--vtx); font-size:var(--fs-xs); font-weight:600; cursor:pointer; font-family:var(--fb); transition:background .2s; }
.laSocialBtn:hover{ background:rgba(var(--pg-rgb),.08); }
.laSocialBtn svg{ width:17px; height:17px; flex-shrink:0; }
.laSocialBtn:disabled{ opacity:.55; cursor:default; }
.laSocialBtn:disabled:hover{ background:rgba(var(--pg-rgb),.03); }

.laFooter{ display:flex; align-items:center; justify-content:center; gap:var(--sp-3); color:rgba(var(--vtx2-rgb),.4); font-size:var(--fs-xs); text-align:center; }
.laFooter svg{ width:14px; height:14px; flex-shrink:0; }

@media(max-width:420px){
  .laSocial{ flex-wrap:wrap; }
  .laSocialBtn{ flex:1 1 calc(50% - .35rem); }
}

.cpSelectedImage{
display:none;
align-items:flex-start;
justify-content:flex-start;
padding:var(--sp-2) 0 var(--sp-3);
margin:0;
}
.cpSelectedImage img{
width:90px;
height:90px;
object-fit:cover;
border:1px solid var(--bdr);
}
.cpThumbWrap{
position:relative;
display:inline-block;
}
.cpThumbPreview{
width:90px;
height:90px;
object-fit:cover;
border:1px solid var(--bdr);
box-shadow:0 0 15px color-mix(in srgb,var(--tc) 20%,transparent);
background:var(--sur);
}
.cpThumbClose{
position:absolute;
top:-8px;
right:-8px;
width:22px;
height:22px;
border:1px solid var(--bdrh);
background:var(--sur2);
color:var(--ps);
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
}
@media(max-width:640px){
.cpThumbPreview,
.cpSelectedImage img{
width:80px;
height:80px;
}
}
