/* Step-2 minimal shell styles. The real design system lands in step 3;
   nothing here is final. No external fonts (zero third-party requests). */
:root {
  --wine: #722b40;
  --wine-deep: #521e2f;
  --cream: #f9f4ec;
  --ink: #33202e;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: var(--cream);
  color: var(--ink);
  font-family: "Avenir Next", "Segoe UI", "Trebuchet MS", sans-serif;
}
.auth-card {
  width: min(92vw, 420px);
  background: #fffdf8;
  border: 1px solid #e6d8ca;
  border-radius: 12px;
  padding: 28px 26px;
  box-shadow: 0 2px 8px rgba(82, 30, 47, 0.08);
}
h1 {
  font-family: "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;
  font-weight: 400;
  color: var(--wine-deep);
  margin: 0 0 6px;
  font-size: 28px;
}
.sub { color: #71586a; font-size: 14px; margin: 2px 0 16px; }
label { display: block; font-size: 14px; margin-bottom: 12px; }
input {
  display: block;
  width: 100%;
  margin-top: 4px;
  padding: 9px 10px;
  border: 1px solid #d8c6b6;
  border-radius: 7px;
  font: inherit;
}
button {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--wine-deep);
  border-radius: 7px;
  background: var(--wine);
  color: #fff;
  font: inherit;
  cursor: pointer;
}
button:hover { background: var(--wine-deep); }
button:disabled { opacity: 0.6; cursor: default; }
#status { font-size: 14px; min-height: 1.4em; }
.caps { font-size: 12px; background: #faf3ee; padding: 10px; border-radius: 7px; overflow-x: auto; }
.hidden { display: none; }
