/* Shared form controls: loaded after legacy styles. */
.question-accordion.question-editor{display:block;padding:0;border-radius:13px;overflow:clip;margin:14px 0}.question-summary{display:flex;align-items:center;gap:12px;padding:18px;cursor:pointer;list-style:none;background:#fff;min-height:78px}.question-summary::-webkit-details-marker{display:none}.question-summary:focus-visible{outline:3px solid #7d9f87;outline-offset:-3px}.question-number{font-size:12px;font-weight:700;color:#65816e;background:#edf3ed;border-radius:8px;padding:8px}.question-title{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.question-title strong{font-size:15px;font-weight:650;overflow-wrap:anywhere}.question-kind{font-size:12px;color:#69806f}.question-required{font-size:11px;color:#536c5d;border:1px solid #d8e4da;border-radius:20px;padding:5px 9px}.accordion-chevron{font-size:24px;color:#4f705a;transition:transform .15s}.question-accordion[open]>.question-summary{background:#f3f7f1;border-bottom:1px solid #dbe6dc}.question-accordion[open] .accordion-chevron{transform:rotate(180deg)}.question-body{display:grid;gap:20px;padding:24px}.question-accordion:not([open])>.question-body{display:none}.question-body>label:not(.checkbox){display:grid;gap:8px}.sort-grip,.photo-actions .sort-grip{display:inline-grid;place-items:center;flex:0 0 42px;width:42px;height:44px;min-height:44px;border:1px solid #ccd9ce;border-radius:8px;background:#fff;color:#52735e;font-size:25px;line-height:1;cursor:grab;touch-action:none;user-select:none;padding:0}.sort-grip:hover{background:#e8f0e6;border-color:#789b80}.sort-grip:focus-visible{outline:3px solid #80a98a;outline-offset:2px}.sort-grip:active{cursor:grabbing}.is-sorting{outline:2px solid #527d5c;box-shadow:0 10px 30px #14341c20;position:relative;z-index:10;opacity:.8}.sorting-active{user-select:none;cursor:grabbing}.option-editor{padding:18px;border:1px solid #d9e3da;border-radius:10px;background:#f8faf7}.option-editor h4{font-size:15px;margin:0 0 7px}.option-editor>p{font-size:12px;color:#657c6c;margin:0 0 16px}.option-list{display:grid;gap:10px;margin-bottom:14px}.option-row{display:flex;align-items:center;gap:10px;padding:7px;background:#fff;border:1px solid #dbe4dc;border-radius:9px}.option-row>input{flex:1;min-width:0}.remove-option{width:38px;height:42px;flex:0 0 38px;border:0;border-radius:7px;background:#f8eeee;color:#9c4f48;font-size:24px;cursor:pointer}.sort-status{margin:18px 0 10px}.photo-actions{align-items:center;justify-content:space-between}.photo-actions .sort-grip{font-size:23px}.question-summary .sort-grip{border-color:transparent;background:transparent}
@media(max-width:600px){.question-summary{padding:14px 10px;gap:8px;min-height:76px}.question-body{padding:18px 14px;gap:18px}.question-required{display:none}.question-number{padding:6px;font-size:11px}.question-title strong{font-size:14px}.question-kind{font-size:11px}.option-editor{padding:12px}.option-row{gap:6px;padding:5px}.option-row .sort-grip{width:34px;flex-basis:34px}.remove-option{width:32px;flex-basis:32px}.question-body .actions{justify-content:space-between}}
.question-preview:disabled{opacity:1;background:#f7faf7;color:#516a59;border-style:dashed}.question-preview::placeholder{color:#6d8172;opacity:1}.file-answer{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px dashed #8da798;border-radius:10px;background:#f7faf7}.file-answer small{font-size:12px;line-height:1.6;color:#586f61}.event-aside fieldset{border:1px solid #d8e1db;border-radius:10px;padding:18px}.event-aside fieldset legend{font-size:15px;font-weight:600;padding:0 6px}.event-aside fieldset>.checkbox{padding:10px 0}.question-editor .form-grid{gap:15px}
form{min-width:0}form :is(input,textarea,select){font:inherit;box-sizing:border-box}form input[type=hidden],[hidden]{display:none!important}
form :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea,select){display:block;width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid #b9c6bf;border-radius:9px;background:#fff;color:#19382b;font-size:15px;line-height:1.5;box-shadow:none}
form input:is([type=radio],[type=checkbox]){display:inline-block;width:20px!important;height:20px!important;min-height:20px!important;padding:0!important;margin:2px 0 0;flex:0 0 20px;accent-color:#285b42;border-radius:4px}
form :is(input,textarea,select):focus-visible,.rich-editor:focus-visible{outline:3px solid #88ad9770;outline-offset:2px;border-color:#326b4e}form.was-validated :invalid{border-color:#bd493e}form .stack,form.stack{gap:24px}form label{line-height:1.5}form.stack>label:not(.checkbox),form .form-grid>label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:600}form fieldset{min-width:0}form .checkbox{align-items:flex-start;font-size:14px;gap:12px}form select{appearance:auto}form textarea{min-height:120px}
.custom-form-page{max-width:880px;padding-inline:24px}.custom-form-page>h1{font-size:clamp(30px,5vw,48px);margin:18px 0}.custom-form-page>.form-description{margin-bottom:30px}.custom-form-page>form.panel{background:transparent;border:0;padding:0;gap:18px}.custom-form-page fieldset,.question-editor{background:#fff;border:1px solid #d8e1db;border-radius:14px;padding:28px;margin:0;box-shadow:0 2px 8px #173d2605}.custom-form-page fieldset{border-top:4px solid #46735b}.custom-form-page legend{float:left;width:100%;font-size:17px;margin-bottom:18px;line-height:1.5}.custom-form-page legend+*{clear:both}.custom-form-page fieldset>.checkbox{padding:12px;border:1px solid #e1e7e3;border-radius:8px;margin-top:10px;cursor:pointer}.custom-form-page fieldset>.checkbox:has(input:checked){background:#edf5ee;border-color:#68977b}.forms-admin{max-width:1100px}.forms-admin h1{font-size:clamp(32px,5vw,48px)}#form-builder{max-width:900px;margin-inline:auto;border-top:6px solid #315e45;border-radius:15px;padding:32px}.question-editor{display:grid;gap:18px;margin:20px 0}.question-editor legend{font-size:13px;color:#42634f;padding:0 8px}.question-editor .actions{border-top:1px solid #e4eae5;padding-top:18px}.question-editor .button{min-height:42px;padding:9px 16px;font-size:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rich-field{border:1px solid #b9c6bf;border-radius:10px;background:#fff;overflow:hidden}.rich-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:9px;background:#f2f6f2;border-bottom:1px solid #d5dfd6}.rich-toolbar button,.rich-toolbar select{width:auto;min-height:36px;padding:6px 10px;border:1px solid transparent;border-radius:5px;background:#fff;font:inherit;font-size:13px;color:#214a33;cursor:pointer}.rich-toolbar button:hover{border-color:#5a8469}.rich-editor{min-height:160px;max-height:480px;overflow:auto;padding:18px;font-size:16px;line-height:1.7;font-weight:400;outline-offset:-3px;white-space:normal}.rich-editor:empty:before{content:attr(data-placeholder);color:#7a897e}.rich-editor :is(p,ul,ol,h2,h3,h4,blockquote){margin:0 0 12px}.rich-editor :is(ul,ol),.event-description :is(ul,ol),.form-description :is(ul,ol){padding-left:26px;list-style:revert}.rich-editor h2,.event-description h2,.form-description h2{font-size:26px}.rich-editor h3,.event-description h3,.form-description h3{font-size:21px}.rich-editor a,.event-description a,.form-description a{text-decoration:underline;color:#285c40}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}
.form-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.form-photo-grid figure{margin:0;min-width:0;border:1px solid #d8e2da;border-radius:10px;overflow:hidden;background:#f8faf8}.form-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;cursor:zoom-in}.form-photo-grid figcaption{padding:8px;font-size:12px;overflow-wrap:anywhere}.photo-actions{display:flex;flex-wrap:wrap;gap:4px;padding:6px}.photo-actions button{background:white;border:1px solid #c8d4cb;border-radius:5px;padding:6px;cursor:pointer;font-size:12px}.photo-upload{padding:16px;border:1px dashed #98af9e;border-radius:9px;background:#f7faf7}.image-viewer{margin:auto;padding:16px;background:#10241df5;color:white;border:0;border-radius:12px;max-width:95vw;max-height:95dvh}.image-viewer::backdrop{background:#07150ee0}.image-viewer img{display:block;max-width:85vw;max-height:75dvh;object-fit:contain}.image-viewer button{display:block;margin:0 0 12px auto;border:1px solid #b9cdc0;background:transparent;color:white;padding:10px 16px;border-radius:7px;cursor:pointer}.form-help{font-size:13px;color:#617267}.form-error{color:#a1312a;font-size:13px}.event-editor{border-top:5px solid #315e45;border-radius:14px}.contact-form{padding:28px;border:1px solid #d8e1db;border-radius:14px;background:#fff}.rich-field:focus-within{border-color:#326b4e}.form-submit-note{font-size:13px;color:#617267}
.rich-toolbar{padding:12px;gap:12px;align-items:stretch;background:#eef2ee}.rich-toolgroup{display:flex;flex-direction:column;gap:7px;padding-right:12px;border-right:1px solid #d4ddd5}.rich-toolgroup:last-child{border-right:0;margin-left:auto;padding-right:0}.rich-group-title{font-size:9px;font-weight:700;color:#718177;letter-spacing:.08em}.rich-group-row{display:flex;flex-wrap:wrap;align-items:center;gap:3px}.rich-toolbar button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:34px;padding:6px 8px;background:transparent;border-radius:5px;font-size:12px;font-weight:600}.rich-toolbar button:hover,.rich-toolbar button[aria-pressed=true]{background:#dce8de;border-color:#a4b9aa}.rich-toolbar svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.rich-toolbar .rich-mark{font-size:16px}.rich-bold{font-weight:800!important}.rich-italic{font-family:Georgia,serif;font-style:italic}.rich-underline{text-decoration:underline}.rich-strikeThrough{text-decoration:line-through}.rich-editor{min-height:240px}.rich-editor blockquote{border-left:3px solid #8daa96;padding-left:16px;color:#5a7060}.editor-expanded{overflow:hidden}.rich-expanded{position:fixed;inset:20px;z-index:4000;display:flex;flex-direction:column;box-shadow:0 0 0 100vmax #0a241ce6}.rich-expanded .rich-editor{flex:1;max-height:none}.rich-expanded .rich-toolbar{flex-shrink:0}.presentation-editor{padding:22px;border:1px solid #d6e1d8;border-radius:12px;background:#f8faf7}.presentation-editor h3{font-size:20px;margin:0 0 8px}.presentation-editor>p{font-size:13px;color:#65786a;margin-bottom:18px}.presentation-gallery{margin:28px 0 32px}.presentation-gallery h2{font-size:22px;margin:0 0 8px}.presentation-gallery .form-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-photo-grid>a{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:10px;background:#e8eee7;border:1px solid #d8e2d9}.form-photo-grid>a>img,.form-photo-grid figure>a>img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;object-position:center}.form-photo-grid figure>a{display:block;aspect-ratio:4/3;overflow:hidden}
@media(max-width:600px){#form-builder{padding:18px}.custom-form-page{padding-inline:16px}.question-editor,.custom-form-page fieldset{padding:20px 16px}.form-grid{grid-template-columns:1fr}.form-photo-grid,.presentation-gallery .form-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.rich-toolbar{gap:12px;padding:10px}.rich-toolbar button{min-width:36px;height:40px}.rich-toolgroup{padding-right:8px}.rich-toolgroup:last-child{margin-left:0}.rich-editor{min-height:200px}.rich-expanded{inset:8px}.contact-form{padding:18px}.forms-admin .section-heading{gap:20px}.actions{flex-wrap:wrap}.image-viewer img{max-width:calc(95vw - 32px)}.presentation-editor{padding:16px}}

/* Quantity controls shared by custom forms and event registrations. */
.quantity-answer{display:flex;flex-direction:column;align-items:flex-start;gap:10px;max-width:100%;margin:6px 0 2px}.quantity-stepper{display:flex;align-items:center;gap:8px;max-width:100%;width:270px;padding:7px;background:#f0f5ec;border:1px solid #d4dfce;border-radius:14px}.quantity-stepper .quantity-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;min-height:48px;border:1px solid #d2dfc9;border-radius:10px;background:#fff;color:#25462f;font-size:35px;line-height:1;touch-action:manipulation;box-shadow:0 2px 4px #19372a08}.quantity-stepper .quantity-button:hover:not(:disabled){background:#25462f;border-color:#25462f;color:white}.quantity-stepper .quantity-button:active:not(:disabled){background:#19372a}.quantity-stepper .quantity-button:disabled{color:#a2b29a;background:#e6edde;border-color:#e0e8d9;cursor:default;box-shadow:none}.quantity-stepper input.quantity-value{flex:1 1 0!important;width:0!important;min-width:0;max-width:100%;min-height:48px!important;padding:6px 0!important;border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;text-align:center;font-size:24px!important;font-weight:600;color:#19372a;font-variant-numeric:tabular-nums;appearance:textfield;-moz-appearance:textfield}.quantity-value::-webkit-inner-spin-button,.quantity-value::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-stepper:focus-within{border-color:#72915e;box-shadow:0 0 0 3px #b6ce9e50}.quantity-stepper .quantity-button:focus-visible,.quantity-stepper input.quantity-value:focus-visible{outline:2px solid #638d43;outline-offset:2px}.quantity-answer .quantity-hint,.quantity-preview>small{font-size:12px!important;line-height:1.6;color:#64755d!important;max-width:350px}.quantity-answer[hidden],.quantity-button[hidden]{display:none!important}.quantity-preview{padding:18px;border:1px dashed #cfdbc6;border-radius:10px;background:#fafcf7}.quantity-preview .quantity-button:disabled{color:#66805b;background:#fff}.quantity-stepper input.quantity-value:disabled{opacity:1;-webkit-text-fill-color:#19372a}.quantity-stepper input.quantity-value:invalid{color:#a3382c;background:#fff1ee!important}
@media(max-width:480px){.quantity-stepper{width:100%;max-width:320px}.quantity-answer{width:100%}.quantity-stepper .quantity-button{flex-basis:52px;width:52px;min-height:52px}.quantity-stepper input.quantity-value{min-height:52px!important}.quantity-preview{padding:14px}}
