/**
 * Styles Frontend - Facilitateur VPC v2.2
 */
.fvpc-form-container { max-width: 800px; margin: 40px auto; padding: 30px; }
.fvpc-intro { background: #f8f9fa; border-left: 4px solid #667eea; padding: 20px; margin-bottom: 30px; border-radius: 4px; }
.fvpc-intro p { margin: 10px 0; color: #555; line-height: 1.6; }
.fvpc-intro strong { color: #333; }
.fvpc-auth-container { min-height: 60vh; display: flex; align-items: center; justify-content: center; padding: 40px 20px; }
.fvpc-auth-box { background: #fff; border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.1); padding: 40px; max-width: 450px; width: 100%; }
.fvpc-auth-box h2 { margin: 0 0 10px 0; color: #1d2327; font-size: 28px; text-align: center; }
.fvpc-auth-box > p { color: #646970; text-align: center; margin: 0 0 30px 0; line-height: 1.6; }
.fvpc-auth-error { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; padding: 12px 16px; border-radius: 4px; margin-bottom: 20px; text-align: center; font-weight: 500; }
.fvpc-auth-form { margin: 0; }
.fvpc-form-group { margin-bottom: 20px; }
.fvpc-form-group label { display: block; margin-bottom: 8px; color: #1d2327; font-weight: 600; font-size: 14px; }
.fvpc-input { width: 100%; padding: 12px 16px; border: 2px solid #dcdcde; border-radius: 4px; font-size: 16px; transition: border-color 0.2s; box-sizing: border-box; }
.fvpc-input:focus { outline: none; border-color: #667eea; box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1); }
.fvpc-submit-btn { width: 100%; padding: 14px 20px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: #fff; border: none; border-radius: 4px; font-size: 16px; font-weight: 600; cursor: pointer; transition: transform 0.2s, box-shadow 0.2s; }
.fvpc-submit-btn:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4); }
.fvpc-submit-btn:active { transform: translateY(0); }
.fvpc-admin-notice { background: #f0f6fc; border: 1px solid #c8d7e8; border-radius: 4px; padding: 15px 20px; margin-top: 30px; }
.fvpc-admin-notice p { margin: 5px 0; color: #1d2327; font-size: 14px; }
.fvpc-admin-notice a { color: #2271b1; text-decoration: none; font-weight: 600; }
.fvpc-admin-notice a:hover { text-decoration: underline; }
.fvpc-notice { padding: 15px 20px; border-radius: 4px; margin: 20px 0; }
.fvpc-notice-warning { background: #fff8e1; border-left: 4px solid #ffc107; color: #856404; }
.fvpc-notice strong { font-weight: 600; }
.fvpc-confirmation-message { background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%); border: 2px solid #28a745; border-radius: 8px; padding: 30px; margin: 20px 0; text-align: center; }
.fvpc-confirmation-message h3 { color: #155724; font-size: 28px; margin: 0 0 15px 0; }
.fvpc-confirmation-message p { color: #155724; font-size: 16px; line-height: 1.6; margin: 10px 0; }
.fvpc-confirmation-message strong { font-weight: 600; }
.fvpc-confirmation-message em { font-size: 14px; color: #1e7e34; }
.wpforms-confirmation-container-full ~ * .fvpc-hide-after-submit, .wpforms-confirmation-scroll ~ * .fvpc-hide-after-submit { display: none !important; }
@media (max-width: 768px) { .fvpc-form-container, .fvpc-auth-box { padding: 20px; margin: 20px 10px; } .fvpc-auth-box h2 { font-size: 24px; } }
