/* ============================================================
   Create account / auth forms
   ============================================================ */
.auth-wrap{
    display:flex;justify-content:center;
    padding:44px 20px 64px;background:var(--cream);
}
.auth-card{
    width:min(560px,100%);
    background:var(--paper);border:1px solid var(--line);
    border-radius:16px;box-shadow:var(--shadow);
    padding:30px 30px 26px;
}
.auth-head{text-align:center;margin-bottom:22px}
.auth-ico{
    display:inline-flex;align-items:center;justify-content:center;
    width:54px;height:54px;border-radius:16px;
    background:var(--green-050);color:var(--green-700);margin-bottom:12px;
}
.auth-ico svg{width:26px;height:26px}
.auth-head h1{font-size:24px;margin:0 0 5px;color:var(--green-800)}
.auth-head p{margin:0;font-size:13px;color:var(--muted)}

.auth-alert{
    background:#fbeceb;border:1px solid #edc7c3;color:#8c2f2f;
    border-radius:9px;padding:10px 13px;font-size:12.5px;margin-bottom:16px;
}

.auth-form{display:flex;flex-direction:column;gap:14px}
.af{display:flex;flex-direction:column;gap:5px}
.af > span{font-size:12.5px;font-weight:600;color:var(--ink-2)}
.af > span small{font-weight:400;color:var(--muted-2);font-size:11px}
.af input{
    width:100%;padding:11px 13px;font-size:13.5px;
    border:1px solid var(--line);border-radius:10px;
    background:var(--paper);color:var(--ink);
    transition:border-color .15s ease,box-shadow .15s ease;
}
.af input:focus{
    outline:none;border-color:var(--green-600);
    box-shadow:0 0 0 3px rgba(95,191,148,.16);
}
.af.bad input{border-color:#d8938c;background:#fdf7f6}
.af em{font-style:normal;font-size:11.5px;color:#c0554d}
.af-hint{font-size:11px;color:var(--muted-2)}
.af-err{display:block;font-style:normal;font-size:11.5px;color:#c0554d;margin-top:-6px}

.af-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}

.af-check{
    display:flex;align-items:flex-start;gap:9px;
    font-size:12.5px;color:var(--ink-2);line-height:1.5;
}
.af-check input{
    width:16px;height:16px;flex:0 0 16px;margin-top:2px;accent-color:var(--green-700);
}
.af-check a{color:var(--green-700);text-decoration:underline}
.af-check.bad span{color:#c0554d}

.auth-go{margin-top:4px;padding:12px;font-size:14px}
.auth-alt{
    text-align:center;font-size:12.5px;color:var(--muted);margin:6px 0 0;
}
.auth-alt a{color:var(--green-700);font-weight:600;text-decoration:none}
.auth-alt a:hover{text-decoration:underline}

@media (max-width:560px){
    .auth-card{padding:24px 20px}
    .af-row{grid-template-columns:1fr}
}
