/* UnCubed feedback forms — additions to ../style.css, using its tokens only. */

.feedback { max-width: var(--measure); }

.field { margin: 0 0 var(--sp-6, 1.5rem); }
.field label { display: block; font-weight: 600; margin-bottom: 0.25rem; }
.field .note { margin: 0 0 0.5rem; }
.optional { font-weight: 400; color: var(--ink-secondary); }

.field input[type="text"],
.field input[type="email"],
.field select,
.field textarea {
  box-sizing: border-box;
  width: 100%;
  font: inherit;
  color: var(--ink);
  background: var(--panel-active);
  border: 1px solid var(--rule-emphasis);
  border-radius: var(--r-s);
  padding: 0.6rem 0.75rem;
}
.field textarea { resize: vertical; min-height: 8rem; }
.field .mono { font-family: var(--font-mono); letter-spacing: 0.03em; }
.field [aria-invalid="true"] { border: 2px solid var(--caution); }

.field-check { display: grid; grid-template-columns: auto 1fr; gap: 0.25rem 0.6rem; align-items: start; }
.field-check input { margin-top: 0.35rem; width: 1.1rem; height: 1.1rem; }
.field-check label { font-weight: 400; margin: 0; }
.field-check .note, .field-check .field-error { grid-column: 1 / -1; }

.field-error { color: var(--caution); margin: 0 0 0.5rem; }

.feedback button {
  font: inherit;
  font-weight: 600;
  color: var(--on-accent);
  background: var(--accent);
  border: 0;
  border-radius: var(--r-s);
  padding: 0.7rem 1.4rem;
  cursor: pointer;
}

/* The honeypot: off-screen rather than display:none, which some scripts skip. */
.hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
