/* sign-in, account and administration pages (same tokens as the portal) */
.auth-wrap{display:grid;place-items:start center}
.auth-card{width:min(28rem,100%);background:var(--paper);border:1px solid var(--rule);padding:1.8rem 1.8rem 1.4rem;margin-top:1.5rem}
.auth-card h1{font-size:1.6rem;margin-bottom:.3rem}
.auth-card form,.newgrid{display:grid;gap:.35rem;margin-top:1rem}
.auth-card label,.newgrid label{font-size:.8rem;font-weight:700;color:var(--muted);letter-spacing:.04em;margin-top:.5rem;display:grid;gap:.3rem}
.auth-card input,.newgrid input,.newgrid select,.editgrid input,.editgrid select{font:inherit;font-weight:400;color:var(--ink);padding:.55rem .7rem;border:1px solid var(--rule);border-radius:3px;background:var(--paper);width:100%}
.auth-card input:focus,.newgrid input:focus,.newgrid select:focus{outline:2px solid var(--focus);outline-offset:0}
.auth-card .btn{margin-top:1rem;justify-content:center}
.hint{font-size:.8rem;color:var(--muted);margin:.2rem 0 0}
.msg{min-height:1.3em;margin:.8rem 0 0;font-size:.92rem}
.msg.err{color:var(--bad)} .msg.ok{color:var(--good);font-weight:600}
.admin-new{margin:1.2rem 0}
.newgrid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.6rem 1.2rem;align-items:end;margin-top:.4rem}
.pwrow{display:flex;gap:.4rem}.pwrow input{font-family:ui-monospace,Menlo,Consolas,monospace}
.perms{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;padding-top:.4rem}
.ck{display:inline-flex!important;align-items:center;gap:.4rem;font-weight:600!important;color:var(--ink)!important;letter-spacing:0!important;font-size:.9rem!important;margin:0!important}
.ck input{width:auto}
.row{grid-column:1/-1;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;margin-top:.4rem}
.sec-h{font-size:1.15rem;margin:1.8rem 0 .6rem}
table.list .yr{color:var(--muted);font-size:.8rem}
table.list.small{font-size:.85rem}
td.acts{white-space:nowrap}
td.acts button{border:1px solid var(--rule);background:var(--paper);color:var(--ink);font-size:.8rem;font-weight:600;padding:.25rem .5rem;border-radius:3px;margin:.1rem}
td.acts button.danger{color:var(--bad)}
.editgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.6rem 1rem;padding:.6rem 0}
.editgrid label{display:grid;gap:.3rem;font-size:.8rem;font-weight:700;color:var(--muted)}
/* email alerts card */
#alerts-card h2{font-size:1.25rem;margin:.1rem 0 .4rem}
.al-addr{margin:.8rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;word-break:break-all}
.al-prefs{border-top:1px solid var(--rule-soft);margin:1.1rem 0 0;padding:.9rem 0 0;display:grid;gap:.45rem;justify-items:start}
#alerts-card [hidden]{display:none!important}
.al-prefs .lbl{font-size:.8rem;font-weight:700;color:var(--muted);letter-spacing:.04em;margin:0}
.al-prefs .lbl+.lbl,.al-prefs .ck+.lbl{margin-top:.6rem}
#alerts-card .row .btn{margin-top:.6rem}
.al-sub{font-family:var(--sans);font-size:.95rem;font-weight:700;color:var(--navy);margin:1.2rem 0 .2rem;padding-top:.9rem;border-top:1px solid var(--rule-soft)}
#al-dev .row .btn{margin-top:.5rem}
