/* Hallmark · login · theme: custom "career dossier" (shares tokens.css) */
@import url("/static/tokens.css");
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; overflow-x: clip; }
body { background: var(--color-paper); color: var(--color-ink); font-family: var(--font-body); display: grid; place-items: center; min-height: 100dvh; padding: var(--space-md); }
.box { width: 100%; max-width: 380px; border-top: 3px solid var(--color-accent); background: var(--color-sheet); box-shadow: var(--shadow-sheet); border-radius: 0 0 var(--radius-md) var(--radius-md); padding: var(--space-xl) var(--space-xl) var(--space-lg); }
h1 { font-family: var(--font-display); font-style: normal; font-weight: 600; font-size: var(--text-2xl); margin: 0; letter-spacing: -0.01em; }
.sub { color: var(--color-muted); margin: var(--space-2xs) 0 var(--space-lg); font-size: var(--text-sm); }
label { display: block; font-size: var(--text-sm); color: var(--color-ink-2); margin-bottom: var(--space-2xs); }
input { width: 100%; font: inherit; padding: 10px 12px; border-radius: var(--radius-md); border: var(--rule-strong); background: var(--color-paper); color: var(--color-ink); }
input:focus-visible { outline: 2px solid var(--color-focus); outline-offset: 1px; }
button { width: 100%; margin-top: var(--space-md); font: inherit; font-weight: 600; padding: 10px; border: 0; border-radius: var(--radius-md); background: var(--color-accent); color: var(--color-accent-ink); cursor: pointer; transition: filter var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out); }
button:hover { filter: brightness(1.08); }
button:active { transform: translateY(1px); }
button:focus-visible { outline: 2px solid var(--color-focus); outline-offset: 2px; }
.err { background: var(--color-bad-soft); color: var(--color-bad); padding: var(--space-xs) var(--space-sm); border-radius: var(--radius-md); font-size: var(--text-sm); margin: 0 0 var(--space-md); }
@media (prefers-reduced-motion: reduce) { * { transition-duration: 1ms !important; } }
