.ff-root{--ff-color-accent:#111827;--ff-color-accent-hover:#1f2937;--ff-color-text:#1a1a1a;--ff-color-text-muted:#6b7280;--ff-color-border:#d1d5db;--ff-color-bg:#fff;--ff-color-success-bg:#ecfdf5;--ff-color-success-text:#059669;--ff-color-error-bg:#fef2f2;--ff-color-error-text:#dc2626;--ff-radius:6px;--ff-font:inherit;max-width:640px;font-family:var(--ff-font);margin:0 auto}.ff-form{flex-direction:column;gap:1.1rem;display:flex}.ff-field-wrap{flex-direction:column;gap:.4rem;display:flex}.ff-label{color:var(--ff-color-text);font-size:.85rem;font-weight:600}.ff-required-mark{color:var(--ff-color-accent)}.ff-input,.ff-textarea,.ff-select{font:inherit;border:1px solid var(--ff-color-border);border-radius:var(--ff-radius);background:var(--ff-color-bg);color:var(--ff-color-text);box-sizing:border-box;width:100%;padding:.65rem .85rem;font-size:.92rem}.ff-input:focus,.ff-textarea:focus,.ff-select:focus{border-color:var(--ff-color-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--ff-color-accent) 20%, transparent);outline:none}.ff-textarea{resize:vertical}.ff-address-rows,.ff-choice-group{flex-direction:column;gap:.5rem;display:flex}.ff-choice{color:var(--ff-color-text-muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.ff-columns{gap:1rem;display:grid}.ff-column{flex-direction:column;gap:1.1rem;display:flex}.ff-section-break{border-top:1px solid var(--ff-color-border);margin-top:.25rem;padding-top:1rem}.ff-section-break h3{color:var(--ff-color-text);margin:0 0 .25rem;font-size:1rem;font-weight:700}.ff-help{color:var(--ff-color-text-muted);margin:0;font-size:.82rem}.ff-custom-html{color:var(--ff-color-text-muted);font-size:.9rem}.ff-submit-btn{background:var(--ff-color-accent);color:#fff;border-radius:var(--ff-radius);cursor:pointer;border:none;align-self:flex-start;padding:.75rem 1.75rem;font-size:.92rem;font-weight:700}.ff-submit-btn:hover{background:var(--ff-color-accent-hover)}.ff-submit-btn:disabled{opacity:.6;cursor:not-allowed}.ff-message{border-radius:var(--ff-radius);padding:.75rem 1rem;font-size:.88rem}.ff-message-success{background:var(--ff-color-success-bg);color:var(--ff-color-success-text)}.ff-message-error{background:var(--ff-color-error-bg);color:var(--ff-color-error-text)}.ff-empty{color:var(--ff-color-text-muted);font-size:.9rem}.ff-picker{border:1px dashed var(--ff-color-border);border-radius:var(--ff-radius);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.ff-picker-label{color:var(--ff-color-text);font-size:.85rem;font-weight:600}
