/* Minimal, first-party, no web fonts. The embedding page controls its own
   look; this is legible defaults so the iframe is usable before anyone styles
   it. A font from a CDN would be a third-party request the CSP forbids. */
:root {
  font-family:
    system-ui,
    -apple-system,
    sans-serif;
  font-size: 16px;
}
body {
  margin: 0;
  padding: 0.5rem;
}
label {
  display: block;
  font-size: 0.85rem;
  margin: 0.6rem 0 0.2rem;
}
input {
  width: 100%;
  padding: 0.5rem;
  font-size: 1rem;
  border: 1px solid #999;
  border-radius: 4px;
  box-sizing: border-box;
}
.row {
  display: flex;
  gap: 0.75rem;
}
.row > div {
  flex: 1;
}
button {
  width: 100%;
  margin-top: 0.9rem;
  padding: 0.6rem;
  font-size: 1rem;
  border: 0;
  border-radius: 4px;
  cursor: pointer;
}
button[disabled] {
  opacity: 0.6;
  cursor: default;
}
#error[hidden] {
  display: none;
}
#error {
  color: #b00020;
  font-size: 0.85rem;
}
