/* the sign-in card: the app's mark, the name 18 px, a muted line, a filled press a choice and the main act white, a field the one thing with a border; also
   the refusal page */
.part-sign-in { box-sizing: border-box; display: grid; gap: var(--space-4); width: 100%; max-width: 360px; margin: 0 auto; padding: var(--space-6);
  border-radius: var(--panel-radius);
  background: var(--card); color: var(--fg); font-family: var(--font); font-size: var(--type-body); line-height: 1.5; }
.part-sign-in-mark { display: block; margin-bottom: var(--space-2); font-size: var(--type-title); line-height: 0; }
.part-sign-in-name { font-weight: 600; line-height: 1; }
.part-sign-in > h1 { margin: 0; font-size: var(--type-title); font-weight: 600; line-height: 1.3; }
.part-sign-in > p { margin: 0; color: var(--muted); }
.part-sign-in > .part-sign-in-alert { display: flex; align-items: flex-start; gap: var(--space-2); color: var(--problem); }
.part-sign-in-alert > svg { flex: none; margin-top: var(--space-1); }
.part-sign-in-form { display: grid; gap: var(--space-3); margin: 0; }
.part-sign-in-or { text-align: center; font-size: var(--type-small); }
.part-sign-in-field { box-sizing: border-box; width: 100%; min-height: 44px; padding: 0 var(--space-3); border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg); color: var(--fg); font: inherit; font-size: var(--type-heading); }
.part-sign-in-field::placeholder { color: var(--muted); }
.part-sign-in-field:focus-visible { outline: 2px solid var(--accent); outline-offset: 1px; }
.part-sign-in-press { box-sizing: border-box; display: flex; align-items: center; justify-content: center; gap: var(--space-2); width: 100%; min-height: 44px;
  padding: 0 var(--space-4); border: 0; border-radius: var(--radius); background: var(--raised); color: var(--fg); font: inherit; font-weight: 600;
  text-decoration: none;
  cursor: pointer; }
.part-sign-in-press.primary { background: var(--fg); color: var(--bg); }
.part-sign-in-press > span { text-box: trim-both cap alphabetic; }
.part-sign-in-press:focus-visible { outline: 2px solid var(--fg); outline-offset: 2px; }
.part-sign-in-foot { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-3); font-size: var(--type-small); }
.part-sign-in-foot > a { display: inline-flex; align-items: center; min-height: 24px; color: inherit; }
/* a desk with a fine pointer: the card's own air and a control's 32 px */
@media (min-width: 900px) and (any-pointer: fine) {
  .part-sign-in { padding: var(--space-6) calc(var(--space-6) + var(--space-2)); }
  .part-sign-in-press, .part-sign-in-field { min-height: var(--control-h); }
  .part-sign-in-field { font-size: var(--type-body); }
}
