:root {
  color-scheme: light;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--ra-paper);
  color: var(--ra-ink);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
body { margin: 0; min-height: 100vh; background: var(--ra-paper); }

.withdraw-shell {
  width: min(780px, calc(100% - 40px));
  margin: clamp(56px, 10vw, 120px) auto;
}

.eyebrow {
  color: var(--ra-signal);
  font: 700 0.74rem/1.2 "SFMono-Regular", Consolas, monospace;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

h1 {
  max-width: 700px;
  margin: 16px 0;
  font-size: clamp(2.6rem, 8vw, 5.6rem);
  line-height: 0.94;
  letter-spacing: -0.055em;
}

.lede { max-width: 700px; color: var(--ra-muted); font-size: clamp(1.04rem, 2vw, 1.24rem); line-height: 1.65; }
.withdraw-panel { margin-top: 40px; padding: clamp(24px, 5vw, 42px) 0; border-block: 1px solid var(--ra-rule); }
.withdraw-panel + .withdraw-panel { margin-top: 0; border-top: 0; }
h2 { margin: 0 0 12px; font-size: 1rem; letter-spacing: 0.08em; text-transform: uppercase; }
.withdraw-panel p, .boundary { color: var(--ra-muted); line-height: 1.65; }

form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; max-width: 560px; margin-top: 22px; }
label { font-weight: 720; }
small { color: var(--ra-muted); line-height: 1.5; }
input, select {
  width: 100%;
  min-height: 48px;
  padding: 10px 12px;
  border: 1px solid var(--ra-rule);
  border-radius: 3px;
  background: #fff;
  color: var(--ra-ink);
  font: inherit;
}

.confirm-row { display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 12px; align-items: start; max-width: 650px; margin: 22px 0; line-height: 1.5; }
.confirm-row input { width: 20px; min-height: 20px; margin: 2px 0 0; }
.request-confirm-row { margin: 14px 0 0; font-weight: 650; }
button {
  min-height: 48px;
  margin-top: 10px;
  padding: 13px 19px;
  border: 0;
  border-radius: 4px;
  color: #fff;
  background: var(--ra-signal);
  font-family: inherit;
  font-size: 0.96rem;
  font-weight: 750;
  line-height: 1.2;
  cursor: pointer;
}
button:hover { background: #842847; }
button:disabled { cursor: not-allowed; opacity: 0.58; }
button:focus-visible, input:focus-visible, select:focus-visible, a:focus-visible { outline: 3px solid var(--ra-boundary); outline-offset: 3px; }

.status { min-height: 1.6em; margin-top: 24px; color: var(--ra-muted); font-weight: 680; }
.status[data-kind="error"] { color: #8b2437; }
.status[data-kind="ready"] { color: var(--ra-proof); }
.boundary { margin-top: 28px; padding-left: 16px; border-left: 3px solid var(--ra-boundary); font-size: 0.92rem; }
.boundary a { color: var(--ra-proof); }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
