/* Sign-in and account screens. Colours and type come from the tokens in index.html. */
.auth{display:grid;grid-template-columns:minmax(280px,5fr) minmax(0,7fr);min-height:100vh}
.auth-brand{background:var(--rail);color:var(--rail-ink);padding-block:40px;padding-left:max(32px,env(safe-area-inset-left,0px));padding-right:32px;display:flex;flex-direction:column;gap:20px}
.auth-brand .brand{flex:none}
.auth-brand .brand-shield{width:48px}
.auth-brand .brand-word{width:164px}
.auth-line{font-family:var(--f-display);font-style:italic;font-weight:800;font-size:clamp(30px,3.6vw,46px);line-height:1;text-transform:uppercase;margin-top:auto;max-width:14ch}
.auth-co{color:var(--rail-dim);font-family:var(--f-label);letter-spacing:.14em;text-transform:uppercase;font-size:12px}
.auth-main{display:grid;place-items:center;padding-block:32px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.auth-card{width:min(420px,100%);display:flex;flex-direction:column;gap:16px}
.auth-card.wide{width:min(520px,100%)}
.auth-card h1{font-family:var(--f-display);font-style:italic;font-weight:800;font-size:38px;line-height:1;text-transform:uppercase}
.auth-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;font-size:14px;color:var(--ink-2)}
.auth-link{border:0;background:transparent;padding:4px 0;color:var(--accent-ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.auth-error{background:var(--bad-soft);color:var(--bad);border-radius:8px;padding:10px 12px;font-size:14px;font-weight:500}
.auth-notice{background:var(--warn-soft);color:var(--warn);border-radius:8px;padding:10px 12px;font-size:14px;font-weight:500}
.practice-note{max-width:1080px;margin:0 auto 18px;padding:9px 12px;border:1px dashed var(--line);border-radius:9px;font-size:13px;color:var(--ink-2)}
.tb-actions{margin-left:auto}
.proto-tools{display:flex}
.proto-tools .label{width:100%}
@media (max-width:860px){
  .auth{grid-template-columns:minmax(0,1fr);min-height:0}
  .auth-brand{padding-block:20px 22px;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));gap:14px}
  .auth-line{font-size:26px;max-width:none;margin-top:0}
  .auth-co{display:none}
}
