.wwc-form { position: relative; color: #18181b; text-align: left; scroll-margin-top: 130px; }
.wwc-form .wwc-intro { margin: 0 0 28px; color: #62675c; font-size: 14px; line-height: 1.7; }
.wwc-form .wwc-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px 28px; }
.wwc-form .wwc-wide { grid-column: 1 / -1; }
.wwc-form .wwc-field { min-width: 0; margin: 0; padding: 0; border: 0; }
.wwc-form [hidden] { display: none !important; }
.wwc-form label, .wwc-form legend { display: block; padding: 0; margin: 0 0 9px; font-size: 14px; font-weight: 600; line-height: 1.5; color: inherit; }
.wwc-form input:not([type=hidden]):not([type=radio]), .wwc-form textarea {
  display: block; box-sizing: border-box; width: 100%; min-width: 0; min-height: 48px; padding: 12px 18px;
  border: 1px solid #dfe3d7; border-radius: 24px; background: #fff; color: #22251e; font: inherit; font-size: 16px; line-height: 1.5;
  outline: none; transition: border-color 140ms cubic-bezier(.2,0,0,1), box-shadow 140ms cubic-bezier(.2,0,0,1);
}
.wwc-form input::placeholder, .wwc-form textarea::placeholder { color: #7b8076; opacity: 1; }
.wwc-form textarea { min-height: 158px; border-radius: 16px; resize: vertical; }
.wwc-form input:focus-visible, .wwc-form textarea:focus-visible { border-color: #779d28; box-shadow: 0 0 0 3px rgb(166 217 54 / .18); }
.wwc-form [aria-invalid=true] { border-color: #b42318 !important; }
.wwc-form .wwc-options { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.wwc-form .wwc-options label { display: flex; align-items: center; gap: 9px; min-height: 48px; padding: 10px 12px; margin: 0; border: 1px solid #dfe3d7; border-radius: 24px; font-size: 14px; font-weight: 400; cursor: pointer; }
.wwc-form .wwc-options label:has(input:checked) { border-color: #86ae35; background: #f1f8df; }
.wwc-form .wwc-options label:has(input:focus-visible) { outline: 2px solid #779d28; outline-offset: 3px; }
.wwc-form .wwc-options input { width: 16px; height: 16px; margin: 0; accent-color: #648e16; flex: 0 0 16px; }
.wwc-form .wwc-help { font-size: 12px; color: #6d7368; line-height: 1.7; margin: 7px 0 0; }
.wwc-form .wwc-error { color: #b42318; font-size: 13px; line-height: 1.5; margin: 6px 0 0; }
.wwc-form .wwc-error:empty { display: none; }
.wwc-form .wwc-verification { padding-top: 22px; border-top: 1px solid #e6e9df; }
.wwc-form .wwc-verification-row { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.wwc-form .wwc-question { min-width: 100px; font-size: 19px; font-weight: 600; letter-spacing: .05em; font-variant-numeric: tabular-nums; }
.wwc-form input[name=challenge_answer] { width: 100px !important; text-align: center; }
.wwc-form .wwc-refresh { min-height: 44px; padding: 8px 4px; background: none; border: 0; color: #557b0e; text-decoration: underline; text-underline-offset: 4px; font-size: 13px; cursor: pointer; }
.wwc-form .wwc-refresh:focus-visible, .wwc-form .btn:focus-visible { outline: 2px solid #557b0e; outline-offset: 4px; }
.wwc-form .wwc-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; margin-top: 30px; }
.wwc-form .wwc-actions .wwc-help { margin: 0; }
.wwc-form .btn { min-height: 48px; transition: scale 140ms cubic-bezier(.2,0,0,1), opacity 140ms cubic-bezier(.2,0,0,1); }
.wwc-form .btn:active:not(:disabled) { scale: .96; }
.wwc-form button:disabled { opacity: .6; cursor: wait; }
.wwc-form .wwc-status { margin: 14px 0 0; color: #4f7c11; font-size: 14px; line-height: 1.7; }
.wwc-form .wwc-status.is-error { color: #b42318; }
.wwc-form .wwc-status:empty { display: none; }
.wwc-form .wwc-alt { margin: 12px 0 0; font-size: 12px; color: #686e62; line-height: 1.7; }
.wwc-form .wwc-alt a { text-decoration: underline; text-underline-offset: 3px; }
.wwc-form .wwc-honeypot, .wwc-form .wwc-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.dark .wwc-form { color: #f4f5ef; }
.dark .wwc-form .wwc-intro, .dark .wwc-form .wwc-help, .dark .wwc-form .wwc-alt { color: #b9bdb3; }
.dark .wwc-form input:not([type=hidden]):not([type=radio]), .dark .wwc-form textarea { background: #20221e; color: #f4f5ef; border-color: #484e41; }
.dark .wwc-form .wwc-options label, .dark .wwc-form .wwc-verification { border-color: #484e41; }
.dark .wwc-form .wwc-options label:has(input:checked) { background: #343f24; border-color: #a8d548; }
.dark .wwc-form .wwc-refresh { color: #b8e169; }
.dark .wwc-form .wwc-error, .dark .wwc-form .wwc-status.is-error { color: #ffaea2; }
@media (max-width: 640px) {
  .wwc-form { scroll-margin-top: 100px; }
  .wwc-form .wwc-grid { grid-template-columns: minmax(0,1fr); gap: 22px; }
  .wwc-form .wwc-intro { margin-bottom: 24px; }
  .wwc-form .wwc-actions { display: block; margin-top: 24px; }
  .wwc-form .wwc-actions .btn { width: 100%; }
  .wwc-form .wwc-actions .wwc-help { margin-top: 12px; text-align: center; }
  .wwc-form .wwc-question { min-width: 82px; }
  .wwc-form .wwc-verification-row { gap: 10px; }
}
@media (prefers-reduced-motion: reduce), (pointer: coarse) { .wwc-form input, .wwc-form textarea, .wwc-form .btn { transition: none !important; scale: none !important; } }
