/* Sign in / sign up */
.auth-wrap{min-height:calc(100vh - 68px);display:grid;place-items:center;background:var(--sky);padding:2rem 1rem}
.auth-card{width:min(440px,100%);background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:2rem}
.auth-card h1{font-size:1.9rem}
.auth-sub{color:var(--muted);margin:.4rem 0 1.4rem}
.field{margin-bottom:1rem}
label{display:block;font-weight:600;margin-bottom:.3rem}
input[type=text],input[type=email],input[type=password],input:not([type]){width:100%;padding:.7rem .8rem;border:1.5px solid var(--line);border-radius:8px;font:1rem var(--body)}
input:focus{border-color:var(--blue);outline:none}
input.bad{border-color:#C62828}
.pw{position:relative}
.pw input{padding-right:4.5rem}
.show{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--blue);font:600 .9rem var(--body);cursor:pointer;padding:.4rem}
.err{color:#C62828;font-size:.88rem;min-height:1.1rem}
.form-err{margin-bottom:.6rem}
.ok{color:#15803D}
.hint{color:var(--muted);font-size:.85rem}
.meter{height:5px;background:var(--line);border-radius:3px;margin-top:.5rem;overflow:hidden}
.meter i{display:block;height:100%;width:0;background:#C62828;transition:width .2s,background .2s}
.check label,.check-inline{display:flex;gap:.5rem;align-items:center;font-weight:400;margin:0}
.row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}
.row a{color:var(--blue);font-size:.9rem}
.full{width:100%}
.auth-alt{text-align:center;margin-top:1.2rem}
.auth-alt a{color:var(--blue);font-weight:600}
/* Contact */
.auth-card.wide{width:min(560px,100%)}
select,textarea{display:block;width:100%;padding:.7rem .8rem;border:1.5px solid var(--line);border-radius:8px;font:1rem var(--body);background:#fff}
textarea{resize:vertical}
select:focus,textarea:focus{border-color:var(--blue);outline:none}
select.bad,textarea.bad{border-color:#C62828}
.trap{position:absolute;left:-9999px;height:0;overflow:hidden}
.done{text-align:center;padding:1rem 0}
.done h2{color:#15803D;margin-bottom:.5rem}
.done p{color:var(--muted);margin-bottom:1rem}