/* M2: intake.css. Canonical copy. Flat-copy into a site root next to order-intake.js. */
#order-intake { margin: 1.5rem 0; font-family: inherit; }
#order-intake[hidden] { display: none; }
.ffi-form { background: #fff; border: 1px solid #d9d4c7; border-radius: 12px; padding: 1.25rem 1.25rem 1.5rem; }
.ffi-title { margin: 0 0 0.4rem; font-size: 1.25rem; line-height: 1.3; }
.ffi-intro { margin: 0 0 1rem; color: #555; font-size: 0.95rem; line-height: 1.5; }
.ffi-field { margin: 0 0 1rem; }
.ffi-field label { display: block; font-weight: 600; margin-bottom: 0.35rem; font-size: 0.95rem; }
.ffi-req { color: #b3261e; }
.ffi-field input, .ffi-field select, .ffi-field textarea {
  width: 100%; min-height: 48px; padding: 0.65rem 0.75rem; font-size: 1rem; font-family: inherit;
  border: 1px solid #b9b2a3; border-radius: 8px; background: #fff; color: #1c1c1a;
}
.ffi-field textarea { min-height: 110px; resize: vertical; }
.ffi-field input:focus, .ffi-field select:focus, .ffi-field textarea:focus {
  outline: 2px solid #1c1c1a; outline-offset: 1px; border-color: #1c1c1a;
}
.ffi-field input[aria-invalid="true"], .ffi-field select[aria-invalid="true"], .ffi-field textarea[aria-invalid="true"] {
  border-color: #b3261e;
}
.ffi-hint { margin: 0.35rem 0 0; font-size: 0.85rem; color: #6b6259; }
.ffi-err { margin: 0.35rem 0 0; font-size: 0.85rem; color: #b3261e; font-weight: 600; }
.ffi-submit {
  display: block; width: 100%; min-height: 52px; padding: 0.9rem 1rem; font-size: 1.05rem; font-weight: 700;
  font-family: inherit; color: #fff; background: #1c1c1a; border: 0; border-radius: 10px; cursor: pointer;
}
.ffi-submit:hover { background: #333; }
.ffi-fine { margin: 0.75rem 0 0; font-size: 0.82rem; color: #6b6259; }
.ffi-done { background: #f4fbf5; border: 2px solid #2e6e4f; border-radius: 12px; padding: 1.25rem 1.25rem 1.5rem; }
.ffi-kicker { margin: 0; font-size: 0.8rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #2e6e4f; }
.ffi-done-title { margin: 0.25rem 0 0.6rem; font-size: 1.25rem; }
.ffi-ref { font-size: 1.35rem; font-weight: 700; font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace; margin: 0.25rem 0 0.5rem; }
.ffi-copy { font-size: 0.85rem; padding: 0.5rem 0.9rem; min-height: 44px; border-radius: 8px; border: 1px solid #2e6e4f; background: #fff; color: #1c1c1a; cursor: pointer; font-family: inherit; }
.ffi-note { font-size: 0.9rem; color: #444; margin: 0 0 1rem; }
.ffi-actions { display: grid; gap: 0.6rem; margin: 0 0 0.5rem; }
.ffi-mail {
  display: block; text-align: center; min-height: 52px; line-height: 1.4; padding: 0.9rem 1rem;
  font-size: 1.05rem; font-weight: 700; color: #fff; background: #1c1c1a; border-radius: 10px; text-decoration: none;
}
.ffi-download {
  display: block; width: 100%; min-height: 48px; padding: 0.8rem 1rem; font-size: 1rem; font-weight: 600;
  font-family: inherit; color: #1c1c1a; background: #fff; border: 2px solid #1c1c1a; border-radius: 10px; cursor: pointer;
}
.ffi-next { margin: 1.1rem 0 0.4rem; font-size: 1.05rem; }
.ffi-steps { margin: 0 0 0.8rem; padding-left: 1.3rem; font-size: 0.95rem; line-height: 1.55; }
.ffi-sla { margin: 0; font-size: 0.95rem; }
.ffi-pay-hint { margin-top: 1rem; font-weight: 700; font-size: 0.95rem; color: #2e6e4f; }
.ffi-reserve { margin-top: 1rem; border: 1px solid #d9d4c7; border-radius: 10px; padding: 1rem; background: #fff; }
.ffi-reserve h3 { margin: 0 0 0.4rem; font-size: 1.1rem; }
.ffi-reserve p { margin: 0; font-size: 0.95rem; line-height: 1.55; }
@media (max-width: 480px) {
  .ffi-form, .ffi-done { padding: 1rem 1rem 1.25rem; }
}
