:root{--wrcf-accent:#2f6f4f}
.wrcf{max-width:var(--wrcf-form-max-width,760px);margin:var(--wrcf-form-margin,0 auto);padding:var(--wrcf-form-padding,0);background:var(--wrcf-form-bg,transparent);color:var(--wrcf-form-color,inherit);border:var(--wrcf-form-border-width,0) solid var(--wrcf-form-border-color,#c3c4c7);border-radius:var(--wrcf-form-radius,0);box-shadow:var(--wrcf-form-shadow,none);font-family:var(--wrcf-form-font,inherit);font-size:var(--wrcf-form-font-size,inherit);position:relative}
.wrcf *,.wrcf *::before,.wrcf *::after{box-sizing:border-box}
.wrcf [hidden]{display:none!important}
.wrcf-grid{display:flex;flex-wrap:wrap;gap:16px 20px}
.wrcf-field{flex:1 1 100%;min-width:0}
.wrcf-field.wrcf-half{flex:1 1 calc(50% - 10px)}
@media(max-width:560px){.wrcf-field.wrcf-half{flex-basis:100%}}
.wrcf-page-title{margin:0 0 6px}
.wrcf-page-desc{margin:0 0 16px;opacity:.8}
.wrcf-label{display:block;font-weight:var(--wrcf-label-weight,600);color:var(--wrcf-label-color,inherit);font-size:var(--wrcf-label-size,inherit);margin-bottom:6px;padding:0}
.wrcf-req{color:#b32d2e}
.wrcf input[type=text],.wrcf input[type=email],.wrcf input[type=tel],.wrcf input[type=number],.wrcf input[type=date],.wrcf select,.wrcf textarea{width:100%;padding:var(--wrcf-field-padding,10px 12px);border:var(--wrcf-field-border-width,1px) solid var(--wrcf-field-border-color,#c3c4c7);border-radius:var(--wrcf-field-radius,6px);font:inherit;font-family:var(--wrcf-field-font,inherit);font-size:var(--wrcf-field-font-size,inherit);background:var(--wrcf-field-bg,#fff);color:var(--wrcf-field-color,inherit)}
.wrcf input:focus,.wrcf select:focus,.wrcf textarea:focus{outline:2px solid var(--wrcf-field-focus-color,var(--wrcf-accent));outline-offset:1px}
.wrcf button:focus-visible{outline:2px solid var(--wrcf-accent);outline-offset:1px}
.wrcf-choices{border:0;padding:0;margin:0}
.wrcf-choice{display:flex;align-items:center;gap:8px;margin:6px 0}
.wrcf-choice input{width:auto;margin:0}
.wrcf-range{display:flex;align-items:center;gap:12px}
.wrcf-range input{flex:1;padding:0}
.wrcf-help{font-size:.875em;opacity:.75;margin-top:4px}
.wrcf-img{display:block;max-width:100%;height:auto;border-radius:8px;margin:0 auto}
.wrcf-cards{--wrcf-cols:3;--wrcf-cols-m:2;--wrcf-gap:12px;--wrcf-ratio:4/3;--wrcf-fit:cover;--wrcf-radius:10px;--wrcf-card-w:180px;--wrcf-peek:0}
.wrcf-card-grid{display:grid;gap:var(--wrcf-gap);grid-template-columns:repeat(var(--wrcf-cols),minmax(0,1fr))}
@media(max-width:640px){.wrcf-card-grid{grid-template-columns:repeat(var(--wrcf-cols-m),minmax(0,1fr))}}
.wrcf-mode-flex .wrcf-card-grid{display:flex;flex-wrap:wrap;justify-content:flex-start}
.wrcf-mode-flex.wrcf-justify-center .wrcf-card-grid{justify-content:center}
.wrcf-mode-flex .wrcf-choice-card{flex:0 0 var(--wrcf-card-w);max-width:100%}
.wrcf-swipe{position:relative}
.wrcf-swipe-viewport{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.wrcf-swipe-viewport .wrcf-card-grid{display:flex;flex-wrap:nowrap;grid-template-columns:none}
.wrcf-swipe-viewport .wrcf-choice-card{flex:0 0 calc((100% - var(--wrcf-gap) * (var(--wrcf-cols) - 1)) / (var(--wrcf-cols) + var(--wrcf-peek)));min-width:0;scroll-snap-align:start}
.wrcf-snap-center .wrcf-swipe-viewport .wrcf-choice-card{scroll-snap-align:center}
@media(max-width:640px){.wrcf-swipe-viewport .wrcf-choice-card{flex-basis:calc((100% - var(--wrcf-gap) * (var(--wrcf-cols-m) - 1)) / (var(--wrcf-cols-m) + var(--wrcf-peek)))}}
.wrcf-swipe.is-embla .wrcf-swipe-viewport{overflow:hidden;scroll-snap-type:none;cursor:grab}
.wrcf-swipe.is-embla .wrcf-swipe-viewport.is-dragging{cursor:grabbing}
.wrcf-swipe.is-embla .wrcf-choice-card{-webkit-user-select:none;user-select:none}
.wrcf-swipe.is-embla .wrcf-card-img img{-webkit-user-drag:none;pointer-events:none}
.wrcf-swipe-arrow{position:absolute;top:calc(50% - 20px);z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#fff;color:var(--wrcf-accent);box-shadow:0 2px 10px rgba(0,0,0,.25);cursor:pointer;font-size:22px;line-height:1;padding:0;display:flex;align-items:center;justify-content:center;transition:opacity .15s}
.wrcf-swipe-arrow:disabled{opacity:0;pointer-events:none}
.wrcf-swipe-prev{left:-8px}.wrcf-swipe-next{right:-8px}
.wrcf-swipe-dots{display:flex;justify-content:center;gap:8px;margin-top:12px}
.wrcf-swipe-dot{width:10px;height:10px;padding:0;border-radius:50%;border:0;background:#c3c4c7;cursor:pointer;transition:transform .15s,background .15s}
.wrcf-swipe-dot.is-active{background:var(--wrcf-accent);transform:scale(1.3)}
.wrcf-swipe-viewport .wrcf-choice-card input:checked+.wrcf-card-body{box-shadow:none}
.wrcf-choice-card{display:block;position:relative;margin:0;cursor:pointer}
.wrcf-choice-card input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.wrcf-card-body{display:flex;flex-direction:column;height:100%;border:2px solid #dcdcde;border-radius:var(--wrcf-radius);overflow:hidden;background:#fff;color:#1d2327;transition:border-color .15s,box-shadow .15s;position:relative}
.wrcf-choice-card:hover .wrcf-card-body{border-color:var(--wrcf-accent)}
.wrcf-choice-card input:checked+.wrcf-card-body{border-color:var(--wrcf-accent);box-shadow:0 0 0 2px var(--wrcf-accent)}
.wrcf-choice-card input:focus-visible+.wrcf-card-body{outline:2px solid var(--wrcf-accent);outline-offset:2px}
.wrcf-card-img{display:block;aspect-ratio:var(--wrcf-ratio);background:#f6f7f7}
.wrcf-ratio-auto .wrcf-card-img{aspect-ratio:auto}
.wrcf-card-img img{display:block;width:100%;height:100%;object-fit:var(--wrcf-fit)}
.wrcf-ratio-auto .wrcf-card-img img{height:auto}
.wrcf-card-label{display:block;padding:10px 12px;text-align:center;font-weight:600}
.wrcf-label-overlay .wrcf-card-label{position:absolute;left:0;right:0;bottom:0;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.7));padding:28px 12px 10px}
.wrcf-label-hidden .wrcf-card-label{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0}
.wrcf-choice-card input:checked+.wrcf-card-body::after{content:"\2713";position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:var(--wrcf-accent);color:#fff;font-size:14px;line-height:24px;text-align:center;font-weight:700}
.wrcf input[type=file]{width:100%;padding:8px 0;font:inherit}
.wrcf-upload-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:6px}
.wrcf-upload-preview{max-width:120px;max-height:120px;border-radius:6px;border:1px solid #dcdcde;object-fit:cover}
.wrcf-upload-status{font-size:.875em;opacity:.8}
.wrcf-upload-remove{padding:4px 12px;font-size:.875em}
.wrcf-error{color:#b32d2e;font-size:.875em;margin-top:4px;min-height:0}
.wrcf-invalid input,.wrcf-invalid select,.wrcf-invalid textarea{border-color:#b32d2e}
.wrcf-calc{background:rgba(0,0,0,.04);border-left:4px solid var(--wrcf-accent);padding:12px 16px;border-radius:6px;font-size:1.1em}
.wrcf-calc-value{font-weight:700;color:var(--wrcf-accent)}
.wrcf-divider{border:0;border-top:1px solid #dcdcde;margin:4px 0}
.wrcf-progress{margin-bottom:16px}
.wrcf-progress-text{font-size:.875em;opacity:.8;margin-bottom:4px}
.wrcf-progress-bar{height:6px;background:#e5e5e5;border-radius:3px;overflow:hidden}
.wrcf-progress-bar span{display:block;height:100%;background:var(--wrcf-accent);transition:width .25s}
.wrcf-messages:not(:empty){margin-bottom:14px}
.wrcf-message{background:#fff8e5;border-left:4px solid #dba617;padding:10px 14px;margin-bottom:8px;border-radius:4px}
.wrcf-summary{color:#b32d2e;margin-top:10px}
.wrcf-nav{display:flex;justify-content:space-between;gap:10px;margin-top:20px}
.wrcf-btn{cursor:pointer;border:var(--wrcf-btn-border-width,2px) solid var(--wrcf-accent);border-radius:var(--wrcf-btn-radius,6px);padding:var(--wrcf-btn-padding,10px 22px);font:inherit;font-family:var(--wrcf-btn-font,inherit);font-size:var(--wrcf-btn-font-size,inherit);font-weight:var(--wrcf-btn-weight,600);line-height:1.2}
.wrcf-btn-primary{background:var(--wrcf-btn-bg,var(--wrcf-accent));color:var(--wrcf-btn-color,#fff);border-color:var(--wrcf-btn-border-color,var(--wrcf-accent));margin-left:auto}
.wrcf-btn-primary:hover:not(:disabled){background:var(--wrcf-btn-hover-bg,var(--wrcf-btn-bg,var(--wrcf-accent)));color:var(--wrcf-btn-hover-color,var(--wrcf-btn-color,#fff));border-color:var(--wrcf-btn-hover-border,var(--wrcf-btn-border-color,var(--wrcf-accent)))}
.wrcf-btn-primary:active:not(:disabled){background:var(--wrcf-btn-active-bg,var(--wrcf-btn-hover-bg,var(--wrcf-btn-bg,var(--wrcf-accent))));color:var(--wrcf-btn-active-color,var(--wrcf-btn-hover-color,var(--wrcf-btn-color,#fff)));border-color:var(--wrcf-btn-active-border,var(--wrcf-btn-hover-border,var(--wrcf-btn-border-color,var(--wrcf-accent))))}
.wrcf-btn-secondary{background:var(--wrcf-btn2-bg,transparent);color:var(--wrcf-btn2-color,var(--wrcf-accent));border-color:var(--wrcf-btn2-border-color,var(--wrcf-accent))}
.wrcf-btn-secondary:hover:not(:disabled){background:var(--wrcf-btn2-hover-bg,var(--wrcf-btn2-bg,transparent));color:var(--wrcf-btn2-hover-color,var(--wrcf-btn2-color,var(--wrcf-accent)));border-color:var(--wrcf-btn2-hover-border,var(--wrcf-btn2-border-color,var(--wrcf-accent)))}
.wrcf-btn-secondary:active:not(:disabled){background:var(--wrcf-btn2-active-bg,var(--wrcf-btn2-hover-bg,var(--wrcf-btn2-bg,transparent)));color:var(--wrcf-btn2-active-color,var(--wrcf-btn2-hover-color,var(--wrcf-btn2-color,var(--wrcf-accent))));border-color:var(--wrcf-btn2-active-border,var(--wrcf-btn2-hover-border,var(--wrcf-btn2-border-color,var(--wrcf-accent))))}
.wrcf-btn:disabled{opacity:.6;cursor:wait}
.wrcf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.wrcf-result,.wrcf-notice{padding:16px 20px;border:1px solid #dcdcde;border-left:4px solid var(--wrcf-accent);border-radius:6px;background:#fff}
.wrcf-notice{border-left-color:#dba617}
.wrcf-results{list-style:none;padding:0;margin:8px 0 0}
.wrcf-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:999999;padding:16px}
.wrcf-modal{background:#fff;color:#1d2327;border-radius:10px;max-width:560px;width:100%;max-height:90vh;overflow:auto;padding:28px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.35)}
.wrcf-modal:focus{outline:0}
.wrcf-modal-close{position:absolute;top:8px;right:12px;background:none;border:0;font-size:28px;line-height:1;cursor:pointer;color:inherit}
.wrcf-modal-title{margin:0 0 12px}
