.demo-dialog .demo-intro { margin-top: 9px; }
.demo-form { display: grid; gap: 10px; margin-top: 13px; }
.demo-form label { display: grid; gap: 5px; font-size: .83rem; font-weight: 700; }
.demo-form input, .demo-form select, .demo-form textarea {
  width: 100%; min-width: 0; min-height: 40px; padding: 7px 9px;
  border: 1px solid var(--line); border-radius: 4px; background: var(--paper); color: var(--ink); font: inherit;
}
.demo-form textarea { resize: vertical; }
.demo-submit {
  display: inline-flex; justify-content: center; align-items: center; min-height: 44px; padding: 8px 14px;
  background: var(--accent); color: var(--on-accent); border: 1px solid transparent; border-radius: 5px;
  font-size: .87rem; font-weight: 750; cursor: pointer;
}
.demo-submit:hover { filter: brightness(.91); }
.demo-submit:disabled { opacity: .7; cursor: wait; }
.demo-privacy { font-size: .76rem; text-decoration: underline; text-underline-offset: 2px; justify-self: start; }
.demo-status { font-size: .8rem; line-height: 1.45; }
.demo-status:empty { display: none; }
.demo-receipt { display: grid; gap: 9px; margin-top: 15px; }
.demo-receipt code { overflow-wrap: anywhere; }
.demo-receipt .demo-book { justify-self: start; }
.data-notice { max-width: 720px; padding-block: 48px; }
.data-notice p { margin-block: 16px; line-height: 1.6; white-space: pre-line; }
.data-notice a { text-decoration: underline; }

.partner-preview { padding: 6px 16px; text-align: center; background: var(--paper); color: var(--ink); border-bottom: 1px solid var(--line); font-size: .75rem; }
