/* FunnelForge Pro - Public Styles */
.ffp-optin-form .ffp-input { width: 100%; padding: 12px 16px; border: 2px solid #e5e7eb; border-radius: 8px; font-size: 1rem; margin-bottom: 10px; box-sizing: border-box; transition: border-color 0.2s; font-family: inherit; }
.ffp-optin-form .ffp-input:focus { outline: none; border-color: #3B82F6; }
.ffp-optin-form .ffp-submit-btn { width: 100%; padding: 14px; border: none; border-radius: 8px; font-size: 1.05rem; font-weight: 600; cursor: pointer; transition: all 0.3s; }
.ffp-optin-form .ffp-submit-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 15px rgba(0,0,0,0.15); }
.ffp-optin-message { text-align: center; padding: 12px; border-radius: 8px; margin-top: 10px; font-weight: 500; }
.ffp-optin-message.success { background: #dcfce7; color: #166534; }
.ffp-optin-message.error { background: #fef2f2; color: #991b1b; }
.ffp-gdpr-label { display: flex; align-items: flex-start; gap: 8px; font-size: 0.85rem; color: #6b7280; margin-bottom: 12px; }
.ffp-gdpr-label input { margin-top: 3px; }
.ffp-content-locked, .ffp-drip-locked { text-align: center; padding: 40px 20px; border-radius: 12px; margin: 20px 0; }
.ffp-ds24-button:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 25px rgba(0,0,0,0.2) !important; }
