.vac-form-container{max-width:700px;margin:40px auto;background-color:var(--vac-bg,#fff);color:var(--vac-text,#333);padding:50px;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.08);font-family:inherit}
.vac-form-header{text-align:center;margin-bottom:40px}
.vac-form-header h2{margin:0 0 10px;font-size:2.2em;font-weight:700;color:inherit}
.vac-form-header p{margin:0;opacity:.8;font-size:1.1em}
.vac-form{display:flex;flex-direction:column;gap:20px}
.vac-half{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.vac-field{display:flex;flex-direction:column}
.vac-field label{font-weight:600;font-size:.9em;margin-bottom:8px;opacity:.9}
.vac-req{color:#e53e3e}
.vac-field input,.vac-field textarea{width:100%;padding:15px 18px;font-size:1em;border:2px solid #e2e8f0;border-radius:8px;background-color:#f8fafc;transition:all .3s ease;box-sizing:border-box;font-family:inherit;color:#333}
.vac-field input:focus,.vac-field textarea:focus{outline:0;border-color:var(--vac-primary);background-color:#fff;box-shadow:0 0 0 4px rgba(0,0,0,.05)}
.vac-rodo-field{margin-top:10px}
.vac-rodo-field label{display:flex;align-items:flex-start;gap:12px;font-size:0.85em;font-weight:normal;color:inherit;cursor:pointer;line-height:1.5;}
.vac-rodo-field input[type="checkbox"]{margin-top:4px;width:18px;height:18px;accent-color:var(--vac-primary); cursor:pointer;}
.vac-rodo-field a{color:var(--vac-primary);text-decoration:underline;}
.vac-submit-btn{background-color:var(--vac-primary);color:#fff;border:none;padding:16px 32px;font-size:1.1em;font-weight:700;border-radius:8px;cursor:pointer;transition:transform .2s ease,opacity .2s ease;display:flex;justify-content:center;align-items:center;gap:10px;margin-top:10px}
.vac-submit-btn:hover{opacity:.9;transform:translateY(-2px)}
.vac-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}
.vac-loader{width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:vac-spin 1s ease-in-out infinite}
@keyframes vac-spin{to{transform:rotate(360deg)}}
.vac-response{padding:15px 20px;border-radius:8px;font-weight:500;font-size:.95em;margin-top:10px}
.vac-success{background-color:#def7ec;color:#03543f;border:1px solid #84e1bc}
.vac-error{background-color:#fde8e8;color:#9b1c1c;border:1px solid #f8b4b4}
@media (max-width:600px){.vac-half{grid-template-columns:1fr}.vac-form-container{padding:30px 20px}}
