/******/ (function() { // webpackBootstrap /******/ "use strict"; /******/ var __webpack_modules__ = ({ /***/ "./packages/packages/libs/editor-v1-adapters/src/ajax/index.ts": /*!*********************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/ajax/index.ts ***! \*********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ ajax: function() { return /* binding */ ajax; } /* harmony export */ }); const ajax = { async load(data) { const extendedWindow = window; return new Promise((success, error) => { extendedWindow.elementorCommon?.ajax?.load({ ...data, success, error }); }); }, invalidateCache(data) { const extendedWindow = window; extendedWindow.elementorCommon?.ajax?.invalidateCache(data); } }; /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/canvas/get-canvas-iframe-document.ts": /*!********************************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/canvas/get-canvas-iframe-document.ts ***! \********************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ getCanvasIframeDocument: function() { return /* binding */ getCanvasIframeDocument; } /* harmony export */ }); function getCanvasIframeDocument() { return window.elementor?.$preview?.[0]?.contentDocument; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/canvas/index.ts": /*!***********************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/canvas/index.ts ***! \***********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ getCanvasIframeDocument: function() { return /* reexport safe */ _get_canvas_iframe_document__WEBPACK_IMPORTED_MODULE_0__.getCanvasIframeDocument; } /* harmony export */ }); /* harmony import */ var _get_canvas_iframe_document__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./get-canvas-iframe-document */ "./packages/packages/libs/editor-v1-adapters/src/canvas/get-canvas-iframe-document.ts"); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/config/enqueue-font.ts": /*!******************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/config/enqueue-font.ts ***! \******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ enqueueFont: function() { return /* binding */ enqueueFont; } /* harmony export */ }); const enqueueFont = (fontFamily, context = 'preview') => { return window.elementor?.helpers?.enqueueFont?.(fontFamily, context) ?? null; }; /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/config/get-elementor-globals.ts": /*!***************************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/config/get-elementor-globals.ts ***! \***************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ getElementorConfig: function() { return /* binding */ getElementorConfig; }, /* harmony export */ getElementorFrontendConfig: function() { return /* binding */ getElementorFrontendConfig; } /* harmony export */ }); const getElementorConfig = () => { return window.elementor?.config ?? {}; }; const getElementorFrontendConfig = () => { return window.elementorFrontend?.config ?? {}; }; /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/config/index.ts": /*!***********************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/config/index.ts ***! \***********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ enqueueFont: function() { return /* reexport safe */ _enqueue_font__WEBPACK_IMPORTED_MODULE_1__.enqueueFont; }, /* harmony export */ getElementorConfig: function() { return /* reexport safe */ _get_elementor_globals__WEBPACK_IMPORTED_MODULE_0__.getElementorConfig; }, /* harmony export */ getElementorFrontendConfig: function() { return /* reexport safe */ _get_elementor_globals__WEBPACK_IMPORTED_MODULE_0__.getElementorFrontendConfig; } /* harmony export */ }); /* harmony import */ var _get_elementor_globals__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./get-elementor-globals */ "./packages/packages/libs/editor-v1-adapters/src/config/get-elementor-globals.ts"); /* harmony import */ var _enqueue_font__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./enqueue-font */ "./packages/packages/libs/editor-v1-adapters/src/config/enqueue-font.ts"); /* harmony import */ var _supported_fonts__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./supported-fonts */ "./packages/packages/libs/editor-v1-adapters/src/config/supported-fonts.ts"); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/config/supported-fonts.ts": /*!*********************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/config/supported-fonts.ts ***! \*********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/data-hooks/block-command.ts": /*!***********************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/data-hooks/block-command.ts ***! \***********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ blockCommand: function() { return /* binding */ blockCommand; } /* harmony export */ }); /* harmony import */ var _register_data_hook__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./register-data-hook */ "./packages/packages/libs/editor-v1-adapters/src/data-hooks/register-data-hook.ts"); function blockCommand({ command, condition }) { return (0,_register_data_hook__WEBPACK_IMPORTED_MODULE_0__.registerDataHook)('dependency', command, args => { const shouldBlock = condition(args); // Should return `false` to prevent the command from running. return !shouldBlock; }); } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/data-hooks/register-data-hook.ts": /*!****************************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/data-hooks/register-data-hook.ts ***! \****************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ registerDataHook: function() { return /* binding */ registerDataHook; } /* harmony export */ }); let hookId = 0; function registerDataHook(type, command, callback) { const eWindow = window; const hooksClasses = eWindow.$e?.modules?.hookData; const hooksMap = { after: hooksClasses?.After, dependency: hooksClasses?.Dependency }; const HookClass = hooksMap[type]; if (!HookClass) { throw new Error(`Data hook '${type}' is not available`); } const currentHookId = ++hookId; const hook = new class extends HookClass { getCommand() { return command; } getId() { return `${command}--data--${currentHookId}`; } apply(args, result) { const hookOptions = {}; const currentWindow = window; const commandsCurrentTrace = currentWindow.$e?.commands?.currentTrace; if (commandsCurrentTrace) { hookOptions.commandsCurrentTrace = commandsCurrentTrace; } const currentHistoryItemId = currentWindow.elementor?.documents?.getCurrent()?.history?.getCurrentId(); if (currentHistoryItemId) { hookOptions.currentHistoryItemId = currentHistoryItemId; } if (type === 'dependency') { return callback(args, hookOptions); } return callback(args, result, hookOptions); } }(); hook.register(); return hook; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/dispatchers/dispatchers.ts": /*!**********************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/dispatchers/dispatchers.ts ***! \**********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ openRoute: function() { return /* binding */ openRoute; }, /* harmony export */ registerRoute: function() { return /* binding */ registerRoute; }, /* harmony export */ runCommand: function() { return /* binding */ runCommand; }, /* harmony export */ runCommandSync: function() { return /* binding */ runCommandSync; } /* harmony export */ }); /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./utils */ "./packages/packages/libs/editor-v1-adapters/src/dispatchers/utils.ts"); async function runCommand(command, args, { internal = false } = {}) { const result = runCommandSync(command, args, { internal }); if (result instanceof Promise) { return result; } if ((0,_utils__WEBPACK_IMPORTED_MODULE_0__.isJQueryDeferred)(result)) { return (0,_utils__WEBPACK_IMPORTED_MODULE_0__.promisifyJQueryDeferred)(result); } return Promise.resolve(result); } function runCommandSync(command, args, { internal = false } = {}) { const extendedWindow = window; const run = internal ? extendedWindow.$e?.internal : extendedWindow.$e?.run; if (!run) { const runnerName = internal ? '$e.internal' : '$e.run'; throw new Error(`\`${runnerName}()\` is not available`); } return run(command, args); } function openRoute(route) { const extendedWindow = window; if (!extendedWindow.$e?.route) { return Promise.reject('`$e.route()` is not available'); } try { return Promise.resolve(extendedWindow.$e.route(route)); } catch (e) { return Promise.reject(e); } } function registerRoute(route) { const extendedWindow = window; if (!extendedWindow.$e?.routes?.register) { return Promise.reject('`$e.routes.register()` is not available'); } const routeParts = route.split('/'); if (routeParts.length < 2) { return Promise.reject(`\`${route}\` is an invalid route`); } const componentRoute = routeParts.pop(); // routeParts.length must be >= 2 const component = routeParts.join('/'); try { return Promise.resolve(extendedWindow.$e.routes.register(component, componentRoute, () => null)); } catch (e) { return Promise.reject(e); } } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/dispatchers/utils.ts": /*!****************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/dispatchers/utils.ts ***! \****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ isJQueryDeferred: function() { return /* binding */ isJQueryDeferred; }, /* harmony export */ promisifyJQueryDeferred: function() { return /* binding */ promisifyJQueryDeferred; } /* harmony export */ }); function isJQueryDeferred(value) { // TODO: Copied from: // https://github.com/elementor/elementor/blob/6a74fc9/modules/web-cli/assets/js/core/commands.js#L410 return !!value && 'object' === typeof value && Object.hasOwn(value, 'promise') && Object.hasOwn(value, 'then') && Object.hasOwn(value, 'fail'); } function promisifyJQueryDeferred(deferred) { return new Promise((resolve, reject) => { deferred.then(resolve, reject); }); } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/edit-mode.ts": /*!********************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/edit-mode.ts ***! \********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ changeEditMode: function() { return /* binding */ changeEditMode; }, /* harmony export */ getCurrentEditMode: function() { return /* binding */ getCurrentEditMode; }, /* harmony export */ useEditMode: function() { return /* binding */ useEditMode; } /* harmony export */ }); /* harmony import */ var _hooks_use_listen_to__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./hooks/use-listen-to */ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-listen-to.ts"); /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./listeners */ "./packages/packages/libs/editor-v1-adapters/src/listeners/index.ts"); function useEditMode() { return (0,_hooks_use_listen_to__WEBPACK_IMPORTED_MODULE_0__["default"])((0,_listeners__WEBPACK_IMPORTED_MODULE_1__.windowEvent)('elementor/edit-mode/change'), getCurrentEditMode); } function getCurrentEditMode() { const extendedWindow = window; return extendedWindow.elementor.channels.dataEditMode.request('activeMode'); } function changeEditMode(newMode) { const extendedWindow = window; return extendedWindow.elementor.changeEditMode(newMode); } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/hooks/index.ts": /*!**********************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/hooks/index.ts ***! \**********************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ useIsRouteActive: function() { return /* reexport safe */ _use_is_route_active__WEBPACK_IMPORTED_MODULE_0__["default"]; }, /* harmony export */ useListenTo: function() { return /* reexport safe */ _use_listen_to__WEBPACK_IMPORTED_MODULE_1__["default"]; }, /* harmony export */ useRouteStatus: function() { return /* reexport safe */ _use_route_status__WEBPACK_IMPORTED_MODULE_2__["default"]; } /* harmony export */ }); /* harmony import */ var _use_is_route_active__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./use-is-route-active */ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-is-route-active.ts"); /* harmony import */ var _use_listen_to__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-listen-to */ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-listen-to.ts"); /* harmony import */ var _use_route_status__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-route-status */ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-route-status.ts"); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-is-route-active.ts": /*!************************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/hooks/use-is-route-active.ts ***! \************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": function() { return /* binding */ useIsRouteActive; } /* harmony export */ }); /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../listeners */ "./packages/packages/libs/editor-v1-adapters/src/listeners/index.ts"); /* harmony import */ var _readers__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../readers */ "./packages/packages/libs/editor-v1-adapters/src/readers/index.ts"); /* harmony import */ var _use_listen_to__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./use-listen-to */ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-listen-to.ts"); function useIsRouteActive(route) { return (0,_use_listen_to__WEBPACK_IMPORTED_MODULE_2__["default"])([(0,_listeners__WEBPACK_IMPORTED_MODULE_0__.routeOpenEvent)(route), (0,_listeners__WEBPACK_IMPORTED_MODULE_0__.routeCloseEvent)(route)], () => (0,_readers__WEBPACK_IMPORTED_MODULE_1__.isRouteActive)(route), [route]); } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-listen-to.ts": /*!******************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/hooks/use-listen-to.ts ***! \******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": function() { return /* binding */ useListenTo; } /* harmony export */ }); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react"); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../listeners */ "./packages/packages/libs/editor-v1-adapters/src/listeners/index.ts"); function useListenTo(event, getSnapshot, deps = []) { const [snapshot, setSnapshot] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(() => getSnapshot()); (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => { const updateState = () => setSnapshot(getSnapshot()); // Ensure the state is re-calculated when the dependencies have been changed. updateState(); return (0,_listeners__WEBPACK_IMPORTED_MODULE_1__.listenTo)(event, updateState); }, deps); // eslint-disable-line react-hooks/exhaustive-deps return snapshot; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-route-status.ts": /*!*********************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/hooks/use-route-status.ts ***! \*********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": function() { return /* binding */ useRouteStatus; } /* harmony export */ }); /* harmony import */ var _edit_mode__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../edit-mode */ "./packages/packages/libs/editor-v1-adapters/src/edit-mode.ts"); /* harmony import */ var _use_is_route_active__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./use-is-route-active */ "./packages/packages/libs/editor-v1-adapters/src/hooks/use-is-route-active.ts"); function useRouteStatus(route, { blockOnKitRoutes = true, allowedEditModes = ['edit'] } = {}) { const isRouteActive = (0,_use_is_route_active__WEBPACK_IMPORTED_MODULE_1__["default"])(route); const isKitRouteActive = (0,_use_is_route_active__WEBPACK_IMPORTED_MODULE_1__["default"])('panel/global'); const currentEditMode = (0,_edit_mode__WEBPACK_IMPORTED_MODULE_0__.useEditMode)(); const isBlockedByEditMode = !allowedEditModes.includes(currentEditMode); const isBlockedByKit = blockOnKitRoutes && isKitRouteActive; const isActive = isRouteActive && !isBlockedByEditMode; const isBlocked = isBlockedByEditMode || isBlockedByKit; return { isActive, isBlocked }; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/listeners/event-creators.ts": /*!***********************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/listeners/event-creators.ts ***! \***********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ commandEndEvent: function() { return /* binding */ commandEndEvent; }, /* harmony export */ commandStartEvent: function() { return /* binding */ commandStartEvent; }, /* harmony export */ routeCloseEvent: function() { return /* binding */ routeCloseEvent; }, /* harmony export */ routeOpenEvent: function() { return /* binding */ routeOpenEvent; }, /* harmony export */ v1ReadyEvent: function() { return /* binding */ v1ReadyEvent; }, /* harmony export */ windowEvent: function() { return /* binding */ windowEvent; } /* harmony export */ }); const commandStartEvent = command => { return { type: 'command', name: command, state: 'before' }; }; const commandEndEvent = command => { return { type: 'command', name: command, state: 'after' }; }; const routeOpenEvent = route => { return { type: 'route', name: route, state: 'open' }; }; const routeCloseEvent = route => { return { type: 'route', name: route, state: 'close' }; }; const windowEvent = event => { return { type: 'window-event', name: event }; }; const v1ReadyEvent = () => { return windowEvent('elementor/initialized'); }; /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/listeners/index.ts": /*!**************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/listeners/index.ts ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ commandEndEvent: function() { return /* reexport safe */ _event_creators__WEBPACK_IMPORTED_MODULE_0__.commandEndEvent; }, /* harmony export */ commandStartEvent: function() { return /* reexport safe */ _event_creators__WEBPACK_IMPORTED_MODULE_0__.commandStartEvent; }, /* harmony export */ dispatchReadyEvent: function() { return /* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_4__.dispatchReadyEvent; }, /* harmony export */ flushListeners: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_1__.flushListeners; }, /* harmony export */ isReady: function() { return /* reexport safe */ _is_ready__WEBPACK_IMPORTED_MODULE_3__.isReady; }, /* harmony export */ listenTo: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_1__.listenTo; }, /* harmony export */ routeCloseEvent: function() { return /* reexport safe */ _event_creators__WEBPACK_IMPORTED_MODULE_0__.routeCloseEvent; }, /* harmony export */ routeOpenEvent: function() { return /* reexport safe */ _event_creators__WEBPACK_IMPORTED_MODULE_0__.routeOpenEvent; }, /* harmony export */ setReady: function() { return /* reexport safe */ _is_ready__WEBPACK_IMPORTED_MODULE_3__.setReady; }, /* harmony export */ v1ReadyEvent: function() { return /* reexport safe */ _event_creators__WEBPACK_IMPORTED_MODULE_0__.v1ReadyEvent; }, /* harmony export */ windowEvent: function() { return /* reexport safe */ _event_creators__WEBPACK_IMPORTED_MODULE_0__.windowEvent; } /* harmony export */ }); /* harmony import */ var _event_creators__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./event-creators */ "./packages/packages/libs/editor-v1-adapters/src/listeners/event-creators.ts"); /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./listeners */ "./packages/packages/libs/editor-v1-adapters/src/listeners/listeners.ts"); /* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./types */ "./packages/packages/libs/editor-v1-adapters/src/listeners/types.ts"); /* harmony import */ var _is_ready__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./is-ready */ "./packages/packages/libs/editor-v1-adapters/src/listeners/is-ready.ts"); /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils */ "./packages/packages/libs/editor-v1-adapters/src/listeners/utils.ts"); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/listeners/is-ready.ts": /*!*****************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/listeners/is-ready.ts ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ isReady: function() { return /* binding */ isReady; }, /* harmony export */ setReady: function() { return /* binding */ setReady; } /* harmony export */ }); /** * This file is used to store the state of the isReady variable, which is used to determine * if the adapter is ready to receive events (editor v1 and v2 are loaded). */ let ready = false; function isReady() { return ready; } function setReady(value) { ready = value; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/listeners/listeners.ts": /*!******************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/listeners/listeners.ts ***! \******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ flushListeners: function() { return /* binding */ flushListeners; }, /* harmony export */ listenTo: function() { return /* binding */ listenTo; } /* harmony export */ }); /* harmony import */ var _is_ready__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-ready */ "./packages/packages/libs/editor-v1-adapters/src/listeners/is-ready.ts"); /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./utils */ "./packages/packages/libs/editor-v1-adapters/src/listeners/utils.ts"); const callbacksByEvent = new Map(); let abortController = new AbortController(); function listenTo(eventDescriptors, callback) { if (!Array.isArray(eventDescriptors)) { eventDescriptors = [eventDescriptors]; } // @see https://github.com/typescript-eslint/typescript-eslint/issues/2841 // eslint-disable-next-line array-callback-return -- Clashes with typescript. const cleanups = eventDescriptors.map(event => { const { type, name } = event; switch (type) { case 'command': return registerCommandListener(name, event.state, callback); case 'route': return registerRouteListener(name, event.state, callback); case 'window-event': return registerWindowEventListener(name, callback); } }); return () => { cleanups.forEach(cleanup => cleanup()); }; } function flushListeners() { abortController.abort(); callbacksByEvent.clear(); (0,_is_ready__WEBPACK_IMPORTED_MODULE_0__.setReady)(false); abortController = new AbortController(); } function registerCommandListener(command, state, callback) { return registerWindowEventListener(`elementor/commands/run/${state}`, e => { const shouldRunCallback = e.type === 'command' && e.command === command; if (shouldRunCallback) { callback(e); } }); } function registerRouteListener(route, state, callback) { return registerWindowEventListener(`elementor/routes/${state}`, e => { const shouldRunCallback = e.type === 'route' && e.route.startsWith(route); if (shouldRunCallback) { callback(e); } }); } const V1_READY_EVENT_NAME = 'elementor/initialized'; function registerWindowEventListener(event, callback) { const isFirstListener = !callbacksByEvent.has(event); if (isFirstListener) { callbacksByEvent.set(event, []); addListener(event); } callbacksByEvent.get(event)?.push(callback); if (event === V1_READY_EVENT_NAME && (0,_is_ready__WEBPACK_IMPORTED_MODULE_0__.isReady)()) { Promise.resolve().then(() => { const stillRegistered = callbacksByEvent.get(event)?.includes(callback); if (stillRegistered) { callback({ type: 'window-event', event, originalEvent: new CustomEvent(event) }); } }); } return () => { const callbacks = callbacksByEvent.get(event); if (!callbacks?.length) { return; } const filtered = callbacks.filter(cb => cb !== callback); callbacksByEvent.set(event, filtered); }; } function addListener(event) { window.addEventListener(event, makeEventHandler(event), { signal: abortController.signal }); } function makeEventHandler(event) { return e => { if (!(0,_is_ready__WEBPACK_IMPORTED_MODULE_0__.isReady)()) { return; } const normalizedEvent = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.normalizeEvent)(e); callbacksByEvent.get(event)?.forEach(callback => { callback(normalizedEvent); }); }; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/listeners/types.ts": /*!**************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/listeners/types.ts ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/listeners/utils.ts": /*!**************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/listeners/utils.ts ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ dispatchReadyEvent: function() { return /* binding */ dispatchReadyEvent; }, /* harmony export */ normalizeEvent: function() { return /* binding */ normalizeEvent; } /* harmony export */ }); /* harmony import */ var _is_ready__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./is-ready */ "./packages/packages/libs/editor-v1-adapters/src/listeners/is-ready.ts"); function dispatchReadyEvent() { return getV1LoadingPromise().then(() => { (0,_is_ready__WEBPACK_IMPORTED_MODULE_0__.setReady)(true); window.dispatchEvent(new CustomEvent('elementor/initialized')); }); } function getV1LoadingPromise() { const v1LoadingPromise = window.__elementorEditorV1LoadingPromise; if (!v1LoadingPromise) { return Promise.reject('Elementor Editor V1 is not loaded'); } return v1LoadingPromise; } function normalizeEvent(e) { if (e instanceof CustomEvent && e.detail?.command) { return { type: 'command', command: e.detail.command, args: e.detail.args, originalEvent: e }; } if (e instanceof CustomEvent && e.detail?.route) { return { type: 'route', route: e.detail.route, originalEvent: e }; } return { type: 'window-event', event: e.type, originalEvent: e }; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/readers/index.ts": /*!************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/readers/index.ts ***! \************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ EXPERIMENTAL_FEATURES: function() { return /* binding */ EXPERIMENTAL_FEATURES; }, /* harmony export */ isExperimentActive: function() { return /* binding */ isExperimentActive; }, /* harmony export */ isRouteActive: function() { return /* binding */ isRouteActive; } /* harmony export */ }); const EXPERIMENTAL_FEATURES = { // Note: Add new experimental features here as needed }; function isRouteActive(route) { const extendedWindow = window; return !!extendedWindow.$e?.routes?.isPartOf(route); } const isExperimentActive = experiment => { const extendedWindow = window; return !!extendedWindow.elementorCommon?.config?.experimentalFeatures?.[experiment]; }; /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/undoable/get-history-manager.ts": /*!***************************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/undoable/get-history-manager.ts ***! \***************************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ getHistoryManager: function() { return /* binding */ getHistoryManager; } /* harmony export */ }); /* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/utils */ "@elementor/utils"); /* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_utils__WEBPACK_IMPORTED_MODULE_0__); const HistoryManagerNotAvailable = (0,_elementor_utils__WEBPACK_IMPORTED_MODULE_0__.createError)({ code: 'history_manager_not_available', message: 'Cannot access History manager.' }); function getHistoryManager() { const extendedWindow = window; const historyManger = extendedWindow.elementor?.documents?.getCurrent?.()?.history; if (!historyManger) { throw new HistoryManagerNotAvailable(); } return historyManger; } /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/undoable/index.ts": /*!*************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/undoable/index.ts ***! \*************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ undoable: function() { return /* reexport safe */ _undoable__WEBPACK_IMPORTED_MODULE_0__.undoable; } /* harmony export */ }); /* harmony import */ var _undoable__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./undoable */ "./packages/packages/libs/editor-v1-adapters/src/undoable/undoable.ts"); /***/ }), /***/ "./packages/packages/libs/editor-v1-adapters/src/undoable/undoable.ts": /*!****************************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/undoable/undoable.ts ***! \****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ undoable: function() { return /* binding */ undoable; } /* harmony export */ }); /* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @elementor/utils */ "@elementor/utils"); /* harmony import */ var _elementor_utils__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_elementor_utils__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _get_history_manager__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./get-history-manager */ "./packages/packages/libs/editor-v1-adapters/src/undoable/get-history-manager.ts"); // eslint-disable-next-line @typescript-eslint/no-explicit-any // Action WITHOUT a payload. // Action WITH a payload. function undoable(actions, options) { actions.redo ??= actions.do; const _addHistoryItem = options.debounce ? (0,_elementor_utils__WEBPACK_IMPORTED_MODULE_0__.debounce)(addHistoryItem, options.debounce.wait) : addHistoryItem; return payload => { const _payload = payload; const _actions = actions; let doReturn = _actions.do(_payload); let undoReturn; _addHistoryItem({ title: normalizeToGenerator(options.title)(_payload, doReturn), subTitle: normalizeToGenerator(options.subtitle)(_payload, doReturn), type: '', restore: (_, isRedo) => { if (isRedo) { doReturn = _actions.redo(_payload, doReturn, undoReturn); return; } undoReturn = _actions.undo(_payload, doReturn); } }); return doReturn; }; } function normalizeToGenerator(value) { return typeof value === 'function' ? value : () => value ?? ''; } function addHistoryItem(item) { const history = (0,_get_history_manager__WEBPACK_IMPORTED_MODULE_1__.getHistoryManager)(); history.addItem(item); } /***/ }), /***/ "@elementor/utils": /*!****************************************!*\ !*** external ["elementorV2","utils"] ***! \****************************************/ /***/ (function(module) { module.exports = window["elementorV2"]["utils"]; /***/ }), /***/ "react": /*!**************************!*\ !*** external ["React"] ***! \**************************/ /***/ (function(module) { module.exports = window["React"]; /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ /******/ /* webpack/runtime/compat get default export */ /******/ !function() { /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function() { return module['default']; } : /******/ function() { return module; }; /******/ __webpack_require__.d(getter, { a: getter }); /******/ return getter; /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/define property getters */ /******/ !function() { /******/ // define getter functions for harmony exports /******/ __webpack_require__.d = function(exports, definition) { /******/ for(var key in definition) { /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); /******/ } /******/ } /******/ }; /******/ }(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ /******/ !function() { /******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } /******/ }(); /******/ /******/ /* webpack/runtime/make namespace object */ /******/ !function() { /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ }(); /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry needs to be wrapped in an IIFE because it needs to be isolated against other modules in the chunk. !function() { /*!****************************************************************!*\ !*** ./packages/packages/libs/editor-v1-adapters/src/index.ts ***! \****************************************************************/ __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ EXPERIMENTAL_FEATURES: function() { return /* reexport safe */ _readers__WEBPACK_IMPORTED_MODULE_3__.EXPERIMENTAL_FEATURES; }, /* harmony export */ __privateDispatchReadyEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.dispatchReadyEvent; }, /* harmony export */ __privateFlushListeners: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.flushListeners; }, /* harmony export */ __privateIsReady: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.isReady; }, /* harmony export */ __privateIsRouteActive: function() { return /* reexport safe */ _readers__WEBPACK_IMPORTED_MODULE_3__.isRouteActive; }, /* harmony export */ __privateListenTo: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.listenTo; }, /* harmony export */ __privateOpenRoute: function() { return /* reexport safe */ _dispatchers_dispatchers__WEBPACK_IMPORTED_MODULE_0__.openRoute; }, /* harmony export */ __privateRegisterRoute: function() { return /* reexport safe */ _dispatchers_dispatchers__WEBPACK_IMPORTED_MODULE_0__.registerRoute; }, /* harmony export */ __privateRunCommand: function() { return /* reexport safe */ _dispatchers_dispatchers__WEBPACK_IMPORTED_MODULE_0__.runCommand; }, /* harmony export */ __privateRunCommandSync: function() { return /* reexport safe */ _dispatchers_dispatchers__WEBPACK_IMPORTED_MODULE_0__.runCommandSync; }, /* harmony export */ __privateSetReady: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.setReady; }, /* harmony export */ __privateUseIsRouteActive: function() { return /* reexport safe */ _hooks__WEBPACK_IMPORTED_MODULE_1__.useIsRouteActive; }, /* harmony export */ __privateUseListenTo: function() { return /* reexport safe */ _hooks__WEBPACK_IMPORTED_MODULE_1__.useListenTo; }, /* harmony export */ __privateUseRouteStatus: function() { return /* reexport safe */ _hooks__WEBPACK_IMPORTED_MODULE_1__.useRouteStatus; }, /* harmony export */ ajax: function() { return /* reexport safe */ _ajax__WEBPACK_IMPORTED_MODULE_4__.ajax; }, /* harmony export */ blockCommand: function() { return /* reexport safe */ _data_hooks_block_command__WEBPACK_IMPORTED_MODULE_8__.blockCommand; }, /* harmony export */ changeEditMode: function() { return /* reexport safe */ _edit_mode__WEBPACK_IMPORTED_MODULE_6__.changeEditMode; }, /* harmony export */ commandEndEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.commandEndEvent; }, /* harmony export */ commandStartEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.commandStartEvent; }, /* harmony export */ enqueueFont: function() { return /* reexport safe */ _config__WEBPACK_IMPORTED_MODULE_10__.enqueueFont; }, /* harmony export */ getCanvasIframeDocument: function() { return /* reexport safe */ _canvas__WEBPACK_IMPORTED_MODULE_9__.getCanvasIframeDocument; }, /* harmony export */ getCurrentEditMode: function() { return /* reexport safe */ _edit_mode__WEBPACK_IMPORTED_MODULE_6__.getCurrentEditMode; }, /* harmony export */ getElementorConfig: function() { return /* reexport safe */ _config__WEBPACK_IMPORTED_MODULE_10__.getElementorConfig; }, /* harmony export */ getElementorFrontendConfig: function() { return /* reexport safe */ _config__WEBPACK_IMPORTED_MODULE_10__.getElementorFrontendConfig; }, /* harmony export */ isExperimentActive: function() { return /* reexport safe */ _readers__WEBPACK_IMPORTED_MODULE_3__.isExperimentActive; }, /* harmony export */ registerDataHook: function() { return /* reexport safe */ _data_hooks_register_data_hook__WEBPACK_IMPORTED_MODULE_7__.registerDataHook; }, /* harmony export */ routeCloseEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.routeCloseEvent; }, /* harmony export */ routeOpenEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.routeOpenEvent; }, /* harmony export */ undoable: function() { return /* reexport safe */ _undoable__WEBPACK_IMPORTED_MODULE_5__.undoable; }, /* harmony export */ useEditMode: function() { return /* reexport safe */ _edit_mode__WEBPACK_IMPORTED_MODULE_6__.useEditMode; }, /* harmony export */ v1ReadyEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.v1ReadyEvent; }, /* harmony export */ windowEvent: function() { return /* reexport safe */ _listeners__WEBPACK_IMPORTED_MODULE_2__.windowEvent; } /* harmony export */ }); /* harmony import */ var _dispatchers_dispatchers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dispatchers/dispatchers */ "./packages/packages/libs/editor-v1-adapters/src/dispatchers/dispatchers.ts"); /* harmony import */ var _hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./hooks */ "./packages/packages/libs/editor-v1-adapters/src/hooks/index.ts"); /* harmony import */ var _listeners__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./listeners */ "./packages/packages/libs/editor-v1-adapters/src/listeners/index.ts"); /* harmony import */ var _readers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./readers */ "./packages/packages/libs/editor-v1-adapters/src/readers/index.ts"); /* harmony import */ var _ajax__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ajax */ "./packages/packages/libs/editor-v1-adapters/src/ajax/index.ts"); /* harmony import */ var _undoable__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./undoable */ "./packages/packages/libs/editor-v1-adapters/src/undoable/index.ts"); /* harmony import */ var _edit_mode__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./edit-mode */ "./packages/packages/libs/editor-v1-adapters/src/edit-mode.ts"); /* harmony import */ var _data_hooks_register_data_hook__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./data-hooks/register-data-hook */ "./packages/packages/libs/editor-v1-adapters/src/data-hooks/register-data-hook.ts"); /* harmony import */ var _data_hooks_block_command__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./data-hooks/block-command */ "./packages/packages/libs/editor-v1-adapters/src/data-hooks/block-command.ts"); /* harmony import */ var _canvas__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./canvas */ "./packages/packages/libs/editor-v1-adapters/src/canvas/index.ts"); /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./config */ "./packages/packages/libs/editor-v1-adapters/src/config/index.ts"); }(); (window.elementorV2 = window.elementorV2 || {}).editorV1Adapters = __webpack_exports__; /******/ })() ; window.elementorV2.editorV1Adapters?.init?.(); //# sourceMappingURL=editor-v1-adapters.js.map.wpforms-container .wpforms-error-container,.wpforms-container .wpforms-error-noscript{color:#D63637}.wpforms-container .wpforms-error-styled-container{padding:15px 0}.wpforms-container .wpforms-error-styled-container p{margin:0}.wpforms-container .wpforms-error-styled-container+.wpforms-submit-container{margin-top:10px}.wpforms-container label.wpforms-error,.wpforms-container em.wpforms-error{display:block;color:#D63637;font-size:0.9em;font-style:normal;cursor:default;min-width:120px}.wpforms-container .wpforms-field input.wpforms-error,.wpforms-container .wpforms-field input.user-invalid,.wpforms-container .wpforms-field textarea.wpforms-error,.wpforms-container .wpforms-field textarea.user-invalid,.wpforms-container .wpforms-field select.wpforms-error,.wpforms-container .wpforms-field select.user-invalid{border:1px solid #D63637}.wpforms-container .wpforms-field input[type=checkbox].wpforms-error,.wpforms-container .wpforms-field input[type=checkbox].user-invalid,.wpforms-container .wpforms-field input[type=radio].wpforms-error,.wpforms-container .wpforms-field input[type=radio].user-invalid{border:none}.wpforms-container .wpforms-field.wpforms-has-error .choices__inner{border:1px solid #D63637}.wpforms-container .wpforms-error-alert{border:1px solid rgba(0,0,0,0.25);text-shadow:0 1px 0 rgba(255,255,255,0.5);padding:10px 15px;font-size:14px;margin:0 0 10px 0}.wpforms-container .wpforms-error-alert{color:#D63637;background-color:#f2dede;border-color:#f2dede}div[style*="z-index: 2147483647"] div[style*="border-width: 11px"][style*="position: absolute"][style*="pointer-events: none"]{border-style:none}.wpforms-container .wpforms-screen-reader-element{position:absolute !important;clip:rect(0, 0, 0, 0);height:1px;width:1px;border:0;overflow:hidden;word-wrap:normal !important}.wpforms-container .wpforms-field-hp{display:none !important;position:absolute !important;left:-9000px !important}.wpforms-container .wpforms-recaptcha-container{padding:0;clear:both}.wpforms-container .wpforms-recaptcha-container iframe{display:block;width:100%;max-width:100%}.wpforms-container .wpforms-recaptcha-container .g-recaptcha{padding:10px 0 0}.wpforms-container .wpforms-recaptcha-container.wpforms-is-turnstile.wpforms-is-turnstile-invisible{padding:0;height:0}.wpforms-container .wpforms-recaptcha-container.wpforms-is-turnstile iframe{position:relative !important;visibility:inherit !important}.wpforms-container .wpforms-recaptcha-container.wpforms-is-recaptcha-type-v3 .g-recaptcha,.wpforms-container .wpforms-recaptcha-container.wpforms-is-turnstile-invisible .g-recaptcha,.wpforms-container .wpforms-recaptcha-container.wpforms-is-recaptcha-type-invisible .g-recaptcha{padding:0}.wpforms-container .wpforms-recaptcha-container.wpforms-is-recaptcha-type-v3 .wpforms-error:first-of-type,.wpforms-container .wpforms-recaptcha-container.wpforms-is-turnstile-invisible .wpforms-error:first-of-type,.wpforms-container .wpforms-recaptcha-container.wpforms-is-recaptcha-type-invisible .wpforms-error:first-of-type{margin-top:10px}.wpforms-container amp-img>img{position:absolute}.wpforms-container .amp-form-submit-success .wpforms-field-container,.wpforms-container .amp-form-submit-success .wpforms-submit-container{display:none}.wpforms-container .wpforms-preview-notice-links{line-height:2.4}body.rtl .wpforms-container .wpforms-form input[type=tel]{direction:ltr;text-align:right}body.rtl .wpforms-container .wpforms-form input[type=url]{direction:ltr;text-align:right}body.rtl .wpforms-container .wpforms-form input[type=url]::-webkit-textfield-decoration-container{display:flex;flex-direction:row-reverse}body.rtl .wpforms-container .wpforms-form input[type=email]{direction:ltr;text-align:right}body.rtl .wpforms-container .wpforms-form input[type=email]::-webkit-textfield-decoration-container{display:flex;flex-direction:row-reverse}body.rtl .wpforms-container .wpforms-form input[type=number]::-webkit-textfield-decoration-container{flex-direction:row-reverse}body.rtl .wpforms-container .wpforms-form .wpforms-field-date-time .wpforms-datepicker-wrap .wpforms-datepicker-clear{right:auto;left:10px}body.rtl .wpforms-container .wpforms-form .wpforms-field-date-time .ui-timepicker-list li{padding:3px 5px 3px 0 !important}body.rtl .wpforms-container .wpforms-form .wpforms-field-date-time .wpforms-field-medium+.wpforms-datepicker-clear{left:calc( 40% + 10px);right:auto}body.rtl .wpforms-container .wpforms-form .wpforms-field-file-upload .dz-remove{right:auto;left:0}body.rtl .wpforms-container .wpforms-form .wpforms-image-choices-none .wpforms-image-choices-item .wpforms-image-choices-label{margin-left:0;margin-right:10px}body.rtl .ui-timepicker-list li{padding:3px 5px 3px 0}.wpforms-container .wpforms-form .wpforms-field.wpforms-field-email .wpforms-field-row,.wpforms-container .wpforms-form .wpforms-field.wpforms-field-address .wpforms-field-row,.wpforms-container .wpforms-form .wpforms-field.wpforms-field-password .wpforms-field-row{flex-wrap:wrap;container-type:inline-size;container-name:wpforms-field-row-responsive}.wpforms-container .wpforms-form .wpforms-field.wpforms-field-name .wpforms-field-row{flex-wrap:wrap;container-type:inline-size;container-name:wpforms-field-row-responsive-name-field}.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row-responsive{flex-wrap:wrap;container-type:inline-size;container-name:wpforms-field-row-responsive}@container wpforms-field-row-responsive (max-width: 200px){.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row .wpforms-field-row-block{width:100%;padding:0}.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row .wpforms-field-row-block:only-child{padding:0}.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row .wpforms-field-row-block:not(:last-child){margin-bottom:15px}}@container wpforms-field-row-responsive-name-field (max-width: 260px){.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row .wpforms-field-row-block{width:100%;padding:0}.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row .wpforms-field-row-block:only-child{padding:0}.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row .wpforms-field-row-block:not(:last-child){margin-bottom:15px}}.wpforms-container .wpforms-form .wpforms-checkbox-2-columns,.wpforms-container .wpforms-form .wpforms-multiplechoice-2-columns,.wpforms-container .wpforms-form .wpforms-list-2-columns{container-type:inline-size;container-name:wpforms-field-2-columns-responsive}@container wpforms-field-2-columns-responsive (max-width: 320px){.wpforms-container .wpforms-form .wpforms-checkbox-2-columns ul,.wpforms-container .wpforms-form .wpforms-multiplechoice-2-columns ul,.wpforms-container .wpforms-form .wpforms-list-2-columns ul{grid-template-columns:1fr !important}.wpforms-container .wpforms-form .wpforms-checkbox-2-columns ul li,.wpforms-container .wpforms-form .wpforms-multiplechoice-2-columns ul li,.wpforms-container .wpforms-form .wpforms-list-2-columns ul li{width:100%}}.wpforms-container .wpforms-form .wpforms-checkbox-3-columns,.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns,.wpforms-container .wpforms-form .wpforms-list-3-columns{container-type:inline-size;container-name:wpforms-field-3-columns-responsive}@container wpforms-field-3-columns-responsive (max-width: 480px){.wpforms-container .wpforms-form .wpforms-checkbox-3-columns ul,.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns ul,.wpforms-container .wpforms-form .wpforms-list-3-columns ul{grid-template-columns:repeat(2, minmax(0, 1fr)) !important}.wpforms-container .wpforms-form .wpforms-checkbox-3-columns ul li,.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns ul li,.wpforms-container .wpforms-form .wpforms-list-3-columns ul li{width:100%}}@container wpforms-field-3-columns-responsive (max-width: 320px){.wpforms-container .wpforms-form .wpforms-checkbox-3-columns ul,.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns ul,.wpforms-container .wpforms-form .wpforms-list-3-columns ul{grid-template-columns:1fr !important}.wpforms-container .wpforms-form .wpforms-checkbox-3-columns ul li,.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns ul li,.wpforms-container .wpforms-form .wpforms-list-3-columns ul li{width:100%}}@media only screen and (max-width: 600px){div.wpforms-container .wpforms-form .wpforms-field>*{max-width:100%}div.wpforms-container .wpforms-form .wpforms-field{padding-right:1px;padding-left:1px}div.wpforms-container .wpforms-form .wpforms-field input.wpforms-field-small,div.wpforms-container .wpforms-form .wpforms-field input.wpforms-field-medium,div.wpforms-container .wpforms-form .wpforms-field input.wpforms-field-large,div.wpforms-container .wpforms-form .wpforms-field select.wpforms-field-small,div.wpforms-container .wpforms-form .wpforms-field select.wpforms-field-medium,div.wpforms-container .wpforms-form .wpforms-field select.wpforms-field-large,div.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row.wpforms-field-small,div.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row.wpforms-field-medium,div.wpforms-container .wpforms-form .wpforms-field .wpforms-field-row.wpforms-field-large{max-width:100%}div.wpforms-container .wpforms-form .wpforms-mobile-full{width:100%;margin-left:0}div.wpforms-container .wpforms-form .wpforms-field:not(.wpforms-field-phone):not(.wpforms-field-select-style-modern):not(.wpforms-field-radio):not(.wpforms-field-checkbox):not(.wpforms-field-layout):not(.wpforms-field-repeater){overflow-x:hidden}div.wpforms-container .wpforms-form .wpforms-checkbox-2-columns ul,div.wpforms-container .wpforms-form .wpforms-multiplechoice-2-columns ul,div.wpforms-container .wpforms-form .wpforms-list-2-columns ul,div.wpforms-container .wpforms-form .wpforms-checkbox-3-columns ul,div.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns ul,div.wpforms-container .wpforms-form .wpforms-list-3-columns ul{grid-template-columns:1fr !important}div.wpforms-container .wpforms-form .wpforms-checkbox-2-columns ul li,div.wpforms-container .wpforms-form .wpforms-multiplechoice-2-columns ul li,div.wpforms-container .wpforms-form .wpforms-list-2-columns ul li,div.wpforms-container .wpforms-form .wpforms-checkbox-3-columns ul li,div.wpforms-container .wpforms-form .wpforms-multiplechoice-3-columns ul li,div.wpforms-container .wpforms-form .wpforms-list-3-columns ul li{width:100%}div.wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page{display:block;margin:0 0 10px 0}div.wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page-number{width:30px;height:30px;line-height:30px}div.wpforms-container .wpforms-form .wpforms-page-indicator.connector .wpforms-page-indicator-page{width:100% !important;padding:5px 10px}div.wpforms-container .wpforms-form .wpforms-page-indicator.connector .wpforms-page-indicator-page-number{display:none}div.wpforms-container .wpforms-form .wpforms-page-indicator.connector .wpforms-page-indicator-page.active{font-weight:700}div.wpforms-container .wpforms-form.inline-fields .wpforms-field-container,div.wpforms-container .wpforms-form.inline-fields .wpforms-field{display:block;width:100%}div.wpforms-container .wpforms-form.inline-fields .wpforms-submit-container{width:100%}}.wpforms-container{margin-bottom:26px}.wpforms-container .wpforms-form *{word-break:break-word;box-sizing:border-box}.wpforms-container .wpforms-form .wpforms-field-label,.wpforms-container .wpforms-form .wpforms-field-sublabel,.wpforms-container .wpforms-form .wpforms-field-description,.wpforms-container .wpforms-form textarea,.wpforms-container .wpforms-form li,.wpforms-container .wpforms-form th{hyphens:auto}.wpforms-container ul,.wpforms-container ul li{background:none;border:0;margin:0}.wpforms-container .wpforms-title{font-size:24px;font-weight:700;margin:0 0 10px 0}.wpforms-container .wpforms-submit-container{clear:both;position:relative}.wpforms-container .wpforms-submit-spinner{margin-inline-start:15px;display:inline-block;vertical-align:middle}.wpforms-container .wpforms-hidden{display:none !important}.wpforms-clear:before{content:" ";display:table}.wpforms-clear:after{clear:both;content:" ";display:table}.wpforms-container .wpforms-notice{background-color:#ffffff;border:1px solid rgba(0,0,0,0.25);border-left-width:12px;color:#333333;font-size:16px;line-height:1.5;margin-bottom:30px;padding:20px 36px 20px 26px;position:relative}.wpforms-container .wpforms-notice .wpforms-delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:50%;cursor:pointer;display:inline-block;height:20px;margin:0;padding:0;vertical-align:top;width:20px;position:absolute;right:10px;top:10px}.wpforms-container .wpforms-notice .wpforms-delete:before,.wpforms-container .wpforms-notice .wpforms-delete:after{background-color:#ffffff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.wpforms-container .wpforms-notice .wpforms-delete:before{height:2px;width:50%}.wpforms-container .wpforms-notice .wpforms-delete:after{height:50%;width:2px}.wpforms-container .wpforms-notice .wpforms-delete:hover,.wpforms-container .wpforms-notice .wpforms-delete:focus{background-color:rgba(10,10,10,0.3)}.wpforms-container .wpforms-notice a{text-decoration:underline}.wpforms-container .wpforms-notice p{margin:0 0 20px 0}.wpforms-container .wpforms-notice p:last-of-type{margin-bottom:0}.wpforms-container .wpforms-notice .wpforms-notice-actions{margin-top:20px}.wpforms-container .wpforms-notice .wpforms-notice-action{border:2px solid;margin-right:20px;padding:5px;text-decoration:none}.wpforms-container .wpforms-notice .wpforms-notice-action:hover,.wpforms-container .wpforms-notice .wpforms-notice-action:focus,.wpforms-container .wpforms-notice .wpforms-notice-action:active{color:#ffffff}.wpforms-container .wpforms-notice.wpforms-info{border-color:#3273dc}.wpforms-container .wpforms-notice.wpforms-info .wpforms-notice-action{border-color:#3273dc}.wpforms-container .wpforms-notice.wpforms-info .wpforms-notice-action:hover,.wpforms-container .wpforms-notice.wpforms-info .wpforms-notice-action:focus,.wpforms-container .wpforms-notice.wpforms-info .wpforms-notice-action:active{background-color:#3273dc}.wpforms-container .wpforms-notice.wpforms-success{border-color:#23d160}.wpforms-container .wpforms-notice.wpforms-success .wpforms-notice-action{border-color:#23d160}.wpforms-container .wpforms-notice.wpforms-success .wpforms-notice-action:hover,.wpforms-container .wpforms-notice.wpforms-success .wpforms-notice-action:focus,.wpforms-container .wpforms-notice.wpforms-success .wpforms-notice-action:active{background-color:#23d160}.wpforms-container .wpforms-notice.wpforms-warning{border-color:#ffdd57}.wpforms-container .wpforms-notice.wpforms-warning .wpforms-notice-action{border-color:#ffdd57}.wpforms-container .wpforms-notice.wpforms-warning .wpforms-notice-action:hover,.wpforms-container .wpforms-notice.wpforms-warning .wpforms-notice-action:focus,.wpforms-container .wpforms-notice.wpforms-warning .wpforms-notice-action:active{background-color:#ffdd57;color:inherit}.wpforms-container .wpforms-notice.wpforms-error{border-color:#D63637}.wpforms-container .wpforms-notice.wpforms-error .wpforms-notice-action{border-color:#D63637}.wpforms-container .wpforms-notice.wpforms-error .wpforms-notice-action:hover,.wpforms-container .wpforms-notice.wpforms-error .wpforms-notice-action:focus,.wpforms-container .wpforms-notice.wpforms-error .wpforms-notice-action:active{background-color:#D63637}.wpforms-container .wpforms-preview-notice-links{line-height:2.4}.wpforms-container input.wpforms-field-medium,.wpforms-container select.wpforms-field-medium,.wpforms-container .wpforms-field-row.wpforms-field-medium,.wp-core-ui div.wpforms-container input.wpforms-field-medium,.wp-core-ui div.wpforms-container select.wpforms-field-medium,.wp-core-ui div.wpforms-container .wpforms-field-row.wpforms-field-medium{max-width:60%}.wpforms-container input.wpforms-field-small,.wpforms-container select.wpforms-field-small,.wpforms-container .wpforms-field-row.wpforms-field-small,.wp-core-ui div.wpforms-container input.wpforms-field-small,.wp-core-ui div.wpforms-container select.wpforms-field-small,.wp-core-ui div.wpforms-container .wpforms-field-row.wpforms-field-small{max-width:25%}.wpforms-container input.wpforms-field-large,.wpforms-container select.wpforms-field-large,.wpforms-container .wpforms-field-row.wpforms-field-large,.wp-core-ui div.wpforms-container input.wpforms-field-large,.wp-core-ui div.wpforms-container select.wpforms-field-large,.wp-core-ui div.wpforms-container .wpforms-field-row.wpforms-field-large{max-width:100%}.wpforms-container fieldset,.wp-core-ui div.wpforms-container fieldset{display:block;border:none;margin:0;padding:0}.wpforms-container .wpforms-field,.wp-core-ui div.wpforms-container .wpforms-field{padding:15px 0;position:relative}.wpforms-container .wpforms-field.wpforms-field-hidden,.wp-core-ui div.wpforms-container .wpforms-field.wpforms-field-hidden{display:none;padding:0}.wpforms-container .wpforms-field-description,.wpforms-container .wpforms-field-limit-text,.wp-core-ui div.wpforms-container .wpforms-field-description,.wp-core-ui div.wpforms-container .wpforms-field-limit-text{font-size:0.8em;margin:5px 0 0 0;word-break:break-word;word-wrap:break-word;line-height:1.3}.wpforms-container .wpforms-field-description.wpforms-disclaimer-description,.wp-core-ui div.wpforms-container .wpforms-field-description.wpforms-disclaimer-description{background-color:#ffffff;border:1px solid rgba(0,0,0,0.25);padding:15px 15px 0;height:125px;overflow-y:scroll;overflow-x:hidden}.wpforms-container .wpforms-field-description.wpforms-disclaimer-description p,.wp-core-ui div.wpforms-container .wpforms-field-description.wpforms-disclaimer-description p{margin:0 0 15px 0}.wpforms-container .wpforms-field-description-before,.wpforms-container .wpforms-field-description.before,.wp-core-ui div.wpforms-container .wpforms-field-description-before,.wp-core-ui div.wpforms-container .wpforms-field-description.before{font-size:0.85em;margin:0 0 5px 0}.wpforms-container .wpforms-field-label,.wp-core-ui div.wpforms-container .wpforms-field-label{display:block;font-weight:700;font-style:normal;word-break:break-word;word-wrap:break-word}.wpforms-container .wpforms-field-label-inline,.wp-core-ui div.wpforms-container .wpforms-field-label-inline{display:inline;vertical-align:baseline;font-weight:400;font-style:normal;word-break:break-word;word-wrap:break-word}.wpforms-container .wpforms-field-sublabel,.wp-core-ui div.wpforms-container .wpforms-field-sublabel{display:block;font-size:0.8em;font-weight:400;font-style:normal;min-width:120px}.wpforms-container .wpforms-field-label.wpforms-label-hide,.wpforms-container .wpforms-field-sublabel.wpforms-sublabel-hide,.wp-core-ui div.wpforms-container .wpforms-field-label.wpforms-label-hide,.wp-core-ui div.wpforms-container .wpforms-field-sublabel.wpforms-sublabel-hide{position:absolute;clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;overflow:hidden}.wpforms-container .wpforms-required-label,.wp-core-ui div.wpforms-container .wpforms-required-label{color:var(--wpforms-label-error-color);font-weight:normal}.wpforms-container input[type=date],.wpforms-container input[type=datetime],.wpforms-container input[type=datetime-local],.wpforms-container input[type=email],.wpforms-container input[type=month],.wpforms-container input[type=number],.wpforms-container input[type=password],.wpforms-container input[type=range],.wpforms-container input[type=search],.wpforms-container input[type=tel],.wpforms-container input[type=text],.wpforms-container input[type=time],.wpforms-container input[type=url],.wpforms-container input[type=week],.wpforms-container select,.wpforms-container textarea,.wp-core-ui div.wpforms-container input[type=date],.wp-core-ui div.wpforms-container input[type=datetime],.wp-core-ui div.wpforms-container input[type=datetime-local],.wp-core-ui div.wpforms-container input[type=email],.wp-core-ui div.wpforms-container input[type=month],.wp-core-ui div.wpforms-container input[type=number],.wp-core-ui div.wpforms-container input[type=password],.wp-core-ui div.wpforms-container input[type=range],.wp-core-ui div.wpforms-container input[type=search],.wp-core-ui div.wpforms-container input[type=tel],.wp-core-ui div.wpforms-container input[type=text],.wp-core-ui div.wpforms-container input[type=time],.wp-core-ui div.wpforms-container input[type=url],.wp-core-ui div.wpforms-container input[type=week],.wp-core-ui div.wpforms-container select,.wp-core-ui div.wpforms-container textarea{display:block;width:100%;box-sizing:border-box;font-family:inherit;font-style:normal;font-weight:400;margin:0}.wpforms-container input[type=date]:read-only,.wpforms-container input[type=datetime]:read-only,.wpforms-container input[type=datetime-local]:read-only,.wpforms-container input[type=email]:read-only,.wpforms-container input[type=month]:read-only,.wpforms-container input[type=number]:read-only,.wpforms-container input[type=password]:read-only,.wpforms-container input[type=range]:read-only,.wpforms-container input[type=search]:read-only,.wpforms-container input[type=tel]:read-only,.wpforms-container input[type=text]:read-only,.wpforms-container input[type=time]:read-only,.wpforms-container input[type=url]:read-only,.wpforms-container input[type=week]:read-only,.wpforms-container select:read-only,.wpforms-container textarea:read-only,.wp-core-ui div.wpforms-container input[type=date]:read-only,.wp-core-ui div.wpforms-container input[type=datetime]:read-only,.wp-core-ui div.wpforms-container input[type=datetime-local]:read-only,.wp-core-ui div.wpforms-container input[type=email]:read-only,.wp-core-ui div.wpforms-container input[type=month]:read-only,.wp-core-ui div.wpforms-container input[type=number]:read-only,.wp-core-ui div.wpforms-container input[type=password]:read-only,.wp-core-ui div.wpforms-container input[type=range]:read-only,.wp-core-ui div.wpforms-container input[type=search]:read-only,.wp-core-ui div.wpforms-container input[type=tel]:read-only,.wp-core-ui div.wpforms-container input[type=text]:read-only,.wp-core-ui div.wpforms-container input[type=time]:read-only,.wp-core-ui div.wpforms-container input[type=url]:read-only,.wp-core-ui div.wpforms-container input[type=week]:read-only,.wp-core-ui div.wpforms-container select:read-only,.wp-core-ui div.wpforms-container textarea:read-only{cursor:default}.wpforms-container textarea,.wp-core-ui div.wpforms-container textarea{resize:vertical}.wpforms-container input[type=checkbox],.wpforms-container input[type=radio],.wp-core-ui div.wpforms-container input[type=checkbox],.wp-core-ui div.wpforms-container input[type=radio]{width:16px;height:16px;margin:2px 10px 0 3px;display:inline-block;vertical-align:baseline;font-style:normal;font-weight:400}.wpforms-container .wpforms-five-sixths,.wpforms-container .wpforms-four-sixths,.wpforms-container .wpforms-four-fifths,.wpforms-container .wpforms-one-fifth,.wpforms-container .wpforms-one-fourth,.wpforms-container .wpforms-one-half,.wpforms-container .wpforms-one-sixth,.wpforms-container .wpforms-one-third,.wpforms-container .wpforms-three-fourths,.wpforms-container .wpforms-three-fifths,.wpforms-container .wpforms-three-sixths,.wpforms-container .wpforms-two-fourths,.wpforms-container .wpforms-two-fifths,.wpforms-container .wpforms-two-sixths,.wpforms-container .wpforms-two-thirds{float:left;margin-left:20px;clear:none}.wpforms-container .wpforms-one-half,.wpforms-container .wpforms-three-sixths,.wpforms-container .wpforms-two-fourths{width:calc( 50% - 10px)}.wpforms-container .wpforms-one-third,.wpforms-container .wpforms-two-sixths{width:calc( 100% / 3 - 20px)}.wpforms-container .wpforms-one-third.wpforms-first,.wpforms-container .wpforms-two-sixths.wpforms-first{width:calc( 100% / 3)}.wpforms-container .wpforms-four-sixths,.wpforms-container .wpforms-two-thirds{width:calc( 2 * 100% / 3 - 20px)}.wpforms-container .wpforms-four-sixths.wpforms-first,.wpforms-container .wpforms-two-thirds.wpforms-first{width:calc( 2 * 100% / 3)}.wpforms-container .wpforms-one-fourth{width:calc( 25% - 20px)}.wpforms-container .wpforms-one-fourth.wpforms-first{width:25%}.wpforms-container .wpforms-three-fourths{width:calc( 75% - 20px)}.wpforms-container .wpforms-three-fourths.wpforms-first{width:75%}.wpforms-container .wpforms-one-fifth{width:calc( 100% / 5 - 20px)}.wpforms-container .wpforms-one-fifth.wpforms-first{width:calc( 100% / 5)}.wpforms-container .wpforms-two-fifths{width:calc( 2 * 100% / 5 - 20px)}.wpforms-container .wpforms-two-fifths.wpforms-first{width:calc( 2 * 100% / 5)}.wpforms-container .wpforms-three-fifths{width:calc( 3 * 100% / 5 - 20px)}.wpforms-container .wpforms-three-fifths.wpforms-first{width:calc( 3 * 100% / 5)}.wpforms-container .wpforms-four-fifths{width:calc( 4 * 100% / 5 - 20px)}.wpforms-container .wpforms-four-fifths.wpforms-first{width:calc( 4 * 100% / 5)}.wpforms-container .wpforms-one-sixth{width:calc( 100% / 6 - 20px)}.wpforms-container .wpforms-one-sixth.wpforms-first{width:calc( 100% / 6)}.wpforms-container .wpforms-five-sixths{width:calc( 5 * 100% / 6 - 20px)}.wpforms-container .wpforms-five-sixths.wpforms-first{width:calc( 5 * 100% / 6)}.wpforms-container .wpforms-first{clear:both !important;margin-left:0 !important}.wpforms-container .wpforms-field{float:none;clear:both}.wpforms-container .wpforms-field.wpforms-five-sixths,.wpforms-container .wpforms-field.wpforms-four-sixths,.wpforms-container .wpforms-field.wpforms-four-fifths,.wpforms-container .wpforms-field.wpforms-one-fifth,.wpforms-container .wpforms-field.wpforms-one-fourth,.wpforms-container .wpforms-field.wpforms-one-half,.wpforms-container .wpforms-field.wpforms-one-sixth,.wpforms-container .wpforms-field.wpforms-one-third,.wpforms-container .wpforms-field.wpforms-three-fourths,.wpforms-container .wpforms-field.wpforms-three-fifths,.wpforms-container .wpforms-field.wpforms-three-sixths,.wpforms-container .wpforms-field.wpforms-two-fourths,.wpforms-container .wpforms-field.wpforms-two-fifths,.wpforms-container .wpforms-field.wpforms-two-sixths,.wpforms-container .wpforms-field.wpforms-two-thirds{float:left;margin-left:20px;clear:none}.wpforms-container .wpforms-field .wpforms-field-row{align-items:start;position:relative;display:flex;justify-content:space-between;margin-bottom:15px}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-field-row-block{padding:0 10px}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-field-row-block:first-child{padding-inline-start:0}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-field-row-block:last-child{padding-inline-end:0}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-field-row-block:only-child{margin-right:auto;padding-right:10px}.wpforms-container .wpforms-field .wpforms-field-row:before{content:"";display:table}.wpforms-container .wpforms-field .wpforms-field-row:after{clear:both;content:"";display:table}.wpforms-container .wpforms-field .wpforms-field-row:last-of-type{margin-bottom:0}.wpforms-container .wpforms-field .wpforms-field-row>:only-child{width:100%}.wpforms-container .wpforms-field .wpforms-field-row.wpforms-no-columns{display:block}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-five-sixths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-four-sixths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-four-fifths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-fifth,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-fourth,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-half,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-sixth,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-third,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-fourths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-fifths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-sixths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-fourths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-fifths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-sixths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-thirds{float:none;margin-left:0;clear:initial}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-half,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-sixths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-fourths{width:50%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-third,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-sixths{width:33.33333%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-four-sixths,.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-thirds{width:66.66667%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-fourth{width:25%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-fourths{width:75%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-fifth{width:20%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-fifths{width:40%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-fifths{width:60%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-four-fifths{width:80%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-sixth{width:16.66667%}.wpforms-container .wpforms-field .wpforms-field-row .wpforms-five-sixths{width:83.33333%}.wpforms-container .wpforms-field .wpforms-checkbox-2-columns ul,.wpforms-container .wpforms-field .wpforms-multiplechoice-2-columns ul,.wpforms-container .wpforms-field .wpforms-list-2-columns ul,.wpforms-container .wpforms-field .wpforms-checkbox-3-columns ul,.wpforms-container .wpforms-field .wpforms-multiplechoice-3-columns ul,.wpforms-container .wpforms-field .wpforms-list-3-columns ul{display:grid;gap:15px 30px}.wpforms-container .wpforms-field .wpforms-checkbox-2-columns ul,.wpforms-container .wpforms-field .wpforms-multiplechoice-2-columns ul,.wpforms-container .wpforms-field .wpforms-list-2-columns ul{grid-template-columns:repeat(2, 1fr)}.wpforms-container .wpforms-field .wpforms-checkbox-3-columns ul,.wpforms-container .wpforms-field .wpforms-multiplechoice-3-columns ul,.wpforms-container .wpforms-field .wpforms-list-3-columns ul{grid-template-columns:repeat(3, 1fr)}.wpforms-container .wpforms-field .wpforms-list-inline ul li{display:inline-block;vertical-align:top;margin-right:20px}.wpforms-container.inline-fields{overflow:visible}.wpforms-container.inline-fields .wpforms-form{display:flex;justify-content:space-between}.wpforms-container.inline-fields .wpforms-field-container{display:flex;justify-content:space-between;width:calc( 100% - 175px)}.wpforms-container.inline-fields .wpforms-field-container .wpforms-field{padding-right:7px;padding-left:8px}.wpforms-container.inline-fields .wpforms-field-container .wpforms-field:first-of-type{padding-left:0}.wpforms-container.inline-fields .wpforms-field-container .wpforms-field:last-of-type{padding-right:0}.wpforms-container.inline-fields .wpforms-field-row:first-of-type .wpforms-field-row-block:first-child{padding-left:0}.wpforms-container.inline-fields .wpforms-submit-container{width:160px;padding-bottom:16px;align-self:flex-end}.wpforms-container.inline-fields .wpforms-submit{display:block;width:100%}.wpforms-container.inline-fields input.wpforms-field-medium,.wpforms-container.inline-fields select.wpforms-field-medium,.wpforms-container.inline-fields .wpforms-field-row.wpforms-field-medium{max-width:100%}.wpforms-container ul.wpforms-image-choices label:not(.wpforms-error){cursor:pointer;position:relative}.wpforms-container ul.wpforms-image-choices label input{top:50%}.wpforms-container .wpforms-image-choices-modern img{display:inline-block;margin:0 auto;max-width:100%}.wpforms-container .wpforms-image-choices-modern label:not(.wpforms-error){background:none;display:inline-block;margin:0 auto;cursor:pointer;border:1px solid #ffffff;border-radius:3px;padding:20px;transition:all 0.5s;text-align:center}.wpforms-container .wpforms-image-choices-modern label:not(.wpforms-error):hover{border:1px solid rgba(0,0,0,0.25)}.wpforms-container .wpforms-image-choices-modern label:not(.wpforms-error):focus,.wpforms-container .wpforms-image-choices-modern label:not(.wpforms-error):focus-within{border:1px solid rgba(0,0,0,0.25)}.wpforms-container .wpforms-image-choices-modern .wpforms-selected label,.wpforms-container .wpforms-image-choices-modern li:has(input:checked) label{box-shadow:0 0 20px 0 rgba(0,0,0,0.1)}.wpforms-container .wpforms-image-choices-modern .wpforms-selected .wpforms-image-choices-label,.wpforms-container .wpforms-image-choices-modern li:has(input:checked) .wpforms-image-choices-label{font-weight:700}.wpforms-container .wpforms-image-choices-modern .wpforms-selected .wpforms-image-choices-image:after,.wpforms-container .wpforms-image-choices-modern li:has(input:checked) .wpforms-image-choices-image:after{opacity:1}.wpforms-container .wpforms-image-choices-modern .wpforms-image-choices-image{display:block;position:relative}.wpforms-container .wpforms-image-choices-modern .wpforms-image-choices-image:after{content:"\2714";font-size:22px;line-height:32px;color:#ffffff;background:var(--wpforms-button-background-color, #066aab);opacity:0;position:absolute;top:50%;left:50%;margin:-16px 0 0 -16px;width:32px;height:32px;border-radius:50%;transition:all 0.5s}.wpforms-container .wpforms-image-choices-modern .wpforms-image-choices-label{display:block;margin-top:12px}.wpforms-container .wpforms-list-inline .wpforms-image-choices-modern li{margin:5px !important}.wpforms-container .wpforms-image-choices-classic img{display:inline-block;margin:0 auto;max-width:100%}.wpforms-container .wpforms-image-choices-classic label:not(.wpforms-error){background:none;display:inline-block;margin:0 auto;cursor:pointer;border:1px solid transparent;padding:10px;text-align:center}.wpforms-container .wpforms-image-choices-classic label:not(.wpforms-error):hover{border:1px solid rgba(0,0,0,0.25)}.wpforms-container .wpforms-image-choices-classic label:not(.wpforms-error):focus{border:1px solid rgba(0,0,0,0.25)}.wpforms-container .wpforms-image-choices-classic .wpforms-image-choices-image{display:block}.wpforms-container .wpforms-image-choices-classic .wpforms-selected label,.wpforms-container .wpforms-image-choices-classic li:has(input:checked) label{border-color:rgba(0,0,0,0.7)}.wpforms-container .wpforms-image-choices-classic .wpforms-image-choices-label{display:block;margin-top:8px}.wpforms-container .wpforms-list-inline .wpforms-image-choices-classic li{margin:0 10px 10px 0 !important}.wpforms-container .wpforms-image-choices-none .wpforms-image-choices-item img{display:inline-block;margin:0 auto;max-width:100%}.wpforms-container .wpforms-image-choices-none .wpforms-image-choices-item input{vertical-align:middle}.wpforms-container .wpforms-image-choices-none .wpforms-image-choices-item .wpforms-image-choices-label{display:inline-block;margin-top:5px;margin-left:10px;vertical-align:middle}.wpforms-container ul.wpforms-icon-choices,.wpforms-container ul.wpforms-icon-choices *{box-sizing:border-box}.wpforms-container ul.wpforms-icon-choices{display:flex;flex-direction:column;width:100%;padding:0 1px 0 1px !important;margin:12px 0 -20px 0 !important}.wpforms-container ul.wpforms-icon-choices+.wpforms-field-description,.wpforms-container ul.wpforms-icon-choices+.wpforms-error{margin-top:15px}.wpforms-container ul.wpforms-icon-choices li{min-width:120px;padding-right:0 !important;margin:0 0 20px 0 !important}.wpforms-container ul.wpforms-icon-choices label{position:relative;display:block;margin:0;cursor:pointer}.wpforms-container ul.wpforms-icon-choices .wpforms-icon-choices-icon{display:block}.wpforms-container ul.wpforms-icon-choices svg{margin:0 auto;fill:var(--wpforms-icon-choices-color)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-none svg{margin:0}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default li,.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li{margin:0 0 22px 0 !important}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default label{text-align:center}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default label:focus-within .wpforms-icon-choices-icon{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default .wpforms-icon-choices-icon{position:relative;z-index:1;margin-bottom:10px;padding:15px 20px 45px 20px;background-color:#ffffff;box-shadow:0 0 0 1px #cccccc;border-radius:6px}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default .wpforms-icon-choices-icon:hover{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default .wpforms-icon-choices-icon svg{position:relative;z-index:2}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default .wpforms-icon-choices-icon-bg{display:block;position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;border-radius:6px;background-color:#ffffff}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default .wpforms-selected .wpforms-icon-choices-icon,.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon{background-color:transparent;box-shadow:0 0 0 1px var(--wpforms-icon-choices-color);box-sizing:border-box}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default .wpforms-selected .wpforms-icon-choices-icon-bg,.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon-bg{background-color:var(--wpforms-icon-choices-color);opacity:.1}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li label{background-color:#ffffff !important;box-shadow:0 0 0 1px #cccccc;border-radius:6px;height:100%;padding:20px 20px 15px 20px;text-align:center}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li label:hover{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li:focus-within label{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li.wpforms-selected label,.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li:has(input:checked) label{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color),0 2px 10px rgba(0,0,0,0.15)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-modern li .wpforms-icon-choices-icon{margin-bottom:10px}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-classic li label{background-color:#ffffff !important;height:100%;padding:20px 20px 15px 20px;text-align:center}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-classic li label:hover{box-shadow:0 0 0 1px #999999}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-classic li:focus-within label{box-shadow:0 0 0 1px #999999}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-classic li.wpforms-selected label,.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-classic li:has(input:checked) label{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container ul.wpforms-icon-choices.wpforms-icon-choices-classic li .wpforms-icon-choices-icon{margin-bottom:10px}.wpforms-container .wpforms-field-radio ul.wpforms-icon-choices-default li .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-payment-multiple ul.wpforms-icon-choices-default li .wpforms-icon-choices-icon:before{content:"";position:absolute;z-index:2;bottom:15px;left:calc(50% - 8px);display:block;width:16px;height:16px;background-color:#ffffff;box-shadow:0 0 0 1px #cccccc;border-radius:50%;margin:15px auto 0}.wpforms-container .wpforms-field-radio ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-radio ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-payment-multiple ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-payment-multiple ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:before{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container .wpforms-field-radio ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:after,.wpforms-container .wpforms-field-radio ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:after,.wpforms-container .wpforms-field-payment-multiple ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:after,.wpforms-container .wpforms-field-payment-multiple ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:after{content:"";position:absolute;z-index:2;bottom:calc(15px + 4px);left:calc(50% - 4px);display:block;width:8px;height:8px;background-color:var(--wpforms-icon-choices-color);border-radius:50%}.wpforms-container .wpforms-field-checkbox ul.wpforms-icon-choices-default li .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-payment-checkbox ul.wpforms-icon-choices-default li .wpforms-icon-choices-icon:before{content:"";position:absolute;z-index:2;bottom:15px;left:calc(50% - 8px);display:block;width:16px;height:16px;background-color:#ffffff;box-shadow:0 0 0 1px #cccccc;border-radius:3px;margin:15px auto 0}.wpforms-container .wpforms-field-checkbox ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-checkbox ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-payment-checkbox ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:before,.wpforms-container .wpforms-field-payment-checkbox ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:before{box-shadow:0 0 0 1px var(--wpforms-icon-choices-color)}.wpforms-container .wpforms-field-checkbox ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:after,.wpforms-container .wpforms-field-checkbox ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:after,.wpforms-container .wpforms-field-payment-checkbox ul.wpforms-icon-choices-default li.wpforms-selected .wpforms-icon-choices-icon:after,.wpforms-container .wpforms-field-payment-checkbox ul.wpforms-icon-choices-default li:has(input:checked) .wpforms-icon-choices-icon:after{content:"";box-sizing:border-box;display:block;position:absolute;z-index:2;bottom:23px;left:calc(50% - 6px);width:6px;height:10px;border-style:solid;border-color:var(--wpforms-icon-choices-color);border-width:0 2px 2px 0;transform-origin:bottom left;transform:rotate(45deg)}.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices,.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices,.wpforms-container .wpforms-list-inline ul.wpforms-icon-choices{flex-direction:row;flex-wrap:wrap}.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices li,.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices li,.wpforms-container .wpforms-list-inline ul.wpforms-icon-choices li{margin-right:20px !important}.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices.wpforms-icon-choices-default li,.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices.wpforms-icon-choices-modern li,.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices.wpforms-icon-choices-default li,.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices.wpforms-icon-choices-modern li,.wpforms-container .wpforms-list-inline ul.wpforms-icon-choices.wpforms-icon-choices-default li,.wpforms-container .wpforms-list-inline ul.wpforms-icon-choices.wpforms-icon-choices-modern li{margin-right:22px !important;margin-bottom:22px !important}.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices li{width:calc( 100% / 2 - 20px / 2)}.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices li:nth-child(2n){margin-right:0 !important}.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices.wpforms-icon-choices-default li,.wpforms-container .wpforms-list-2-columns ul.wpforms-icon-choices.wpforms-icon-choices-modern li{width:calc( 100% / 2 - 22px / 2)}.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices li{width:calc( 100% / 3 - 20px * 2 / 3)}.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices li:nth-child(3n){margin-right:0 !important}.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices.wpforms-icon-choices-default li,.wpforms-container .wpforms-list-3-columns ul.wpforms-icon-choices.wpforms-icon-choices-modern li{width:calc( 100% / 3 - 22px * 2 / 3)}.wpforms-container .wpforms-list-inline ul.wpforms-icon-choices li{width:auto;max-width:calc( 100% / 4 - 20px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-payment-single .wpforms-single-item-price-content{display:flex;align-items:center;gap:15px}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-payment-single .wpforms-single-item-price-content .wpforms-single-item-price{width:calc(60% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-payment-single .wpforms-single-item-price-content .wpforms-single-item-price.wpforms-field-small{text-wrap:balance;width:calc(25% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-payment-single .wpforms-single-item-price-content .wpforms-single-item-price.wpforms-field-large{width:calc(100% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-payment-single .wpforms-single-item-price-content select.wpforms-payment-quantity{margin-left:0;height:30px;min-height:30px;font-size:14px;padding-top:0;padding-bottom:0}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-price{display:inline-block;max-width:calc( 60% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-price.wpforms-field-small{max-width:calc( 25% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-price.wpforms-field-large{max-width:calc( 100% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-quantity{display:inline-block;margin-inline-start:15px;width:70px;min-width:70px}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern{display:flex;flex-wrap:wrap;column-gap:15px;align-items:flex-start}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-field-label{min-width:100%}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .choices{margin-bottom:5px}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-field-row{flex-grow:1;max-width:calc( 60% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-field-row.wpforms-field-small{max-width:calc( 25% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-field-row.wpforms-field-large{max-width:calc( 100% - 85px)}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-payment-quantity{flex-basis:70px;max-width:70px}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-payment-quantity .choices__list--dropdown{min-width:70px}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-field-description{flex-basis:100%;margin-top:0}.wpforms-container .wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-error{flex-basis:100%}@media only screen and (max-width: 600px){.wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-price{width:calc( 100% - 85px) !important;max-width:100% !important}.wpforms-form .wpforms-payment-quantities-enabled .wpforms-single-item-price-content .wpforms-single-item-price{width:calc( 100% - 70px) !important}.wpforms-form .wpforms-payment-quantities-enabled.wpforms-field-select-style-modern .wpforms-field-row{width:calc( 100% - 85px) !important;max-width:100% !important}}#wpforms-form-page-page .wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-price.wpforms-field-medium,#wpforms-form-page-page .wpforms-form .wpforms-payment-quantities-enabled select.wpforms-payment-price.wpforms-field-small{max-width:calc( 100% - 85px)}.wpforms-container .wpforms-form .choices .choices__inner{border-radius:3px;min-height:35px}.wpforms-container .wpforms-form .choices .choices__inner .choices__list--single{height:auto}.wpforms-container .wpforms-form .choices .choices__inner .choices__list--multiple .choices__item{line-height:1.3}.wpforms-container .wpforms-form .choices.is-open.is-flipped .choices__inner,.wpforms-container .wpforms-form .choices.is-open .choices__list--dropdown{border-radius:0 0 3px 3px}.wpforms-container .wpforms-form .choices.is-open.is-flipped .choices__list--dropdown,.wpforms-container .wpforms-form .choices.is-open .choices__inner{border-radius:3px 3px 0 0}.wpforms-container textarea{line-height:1.3}.wpforms-container textarea.wpforms-field-small{height:70px}.wpforms-container textarea.wpforms-field-medium{height:120px}.wpforms-container textarea.wpforms-field-large{height:220px}.wpforms-container .wpforms-order-summary-container{display:block;max-width:60%}.wpforms-container .wpforms-order-summary-container *{word-break:break-word;box-sizing:border-box}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview{width:100%;table-layout:fixed}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th{text-align:center}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-label,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-label{text-align:left}.rtl .wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-label,.rtl .wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-label{text-align:right}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-quantity,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-quantity{width:8ch}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-quantity .wpforms-order-summary-item-quantity-label-short,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-quantity .wpforms-order-summary-item-quantity-label-short{display:none}@media (max-width: 600px){.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-quantity,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-quantity{width:4ch}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-quantity .wpforms-order-summary-item-quantity-label-short,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-quantity .wpforms-order-summary-item-quantity-label-short{display:inline}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-quantity .wpforms-order-summary-item-quantity-label-full,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-quantity .wpforms-order-summary-item-quantity-label-full{display:none}}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-price,.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-price{width:6ch;text-align:right}.rtl .wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr td.wpforms-order-summary-item-price,.rtl .wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr th.wpforms-order-summary-item-price{text-align:left}.wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr.wpforms-order-summary-placeholder td{text-align:left}.rtl .wpforms-container .wpforms-order-summary-container table.wpforms-order-summary-preview tr.wpforms-order-summary-placeholder td{text-align:right}.wpforms-container .size-large>.wpforms-order-summary-container,.wpforms-container .wpforms-field-large>.wpforms-order-summary-container{max-width:100%}.wpforms-container .size-medium>.wpforms-order-summary-container,.wpforms-container .wpforms-field-medium>.wpforms-order-summary-container{max-width:60%}.wpforms-container .wpforms-order-summary-container tr.wpforms-order-summary-preview-coupon-total td.wpforms-order-summary-item-price{color:#D63637}.wpforms-field.wpf-disable-field select,.wpforms-field.wpf-disable-field textarea,.wpforms-field.wpf-disable-field button,.wpforms-field.wpf-disable-field input[type=text],.wpforms-field.wpf-disable-field input[type=number],.wpforms-field.wpf-disable-field input[type=email],.wpforms-field.wpf-disable-field input[type=url],.wpforms-field.wpf-disable-field input[type=tel],.wpforms-field.wpf-disable-field input[type=password],.wpforms-field.wpf-disable-field input[type=radio],.wpforms-field.wpf-disable-field input[type=checkbox],.wpforms-field.wpf-disable-field input[type=range],.wpforms-field.wpf-disable-field input[type=file],.wpforms-field.wpf-disable-field input.wpforms-field-date-time-date,.wpforms-field.wpf-disable-field .wpforms-uploader,.wpforms-field.wpf-disable-field .choices,.wpforms-field.wpf-disable-field .wpforms-image-choices-image,.wpforms-field.wpf-disable-field .wpforms-field-rating-wrapper,.wpforms-field.wpf-disable-field .wpforms-field-password-input-icon,.wpforms-field.wpf-disable-field .wpforms-disclaimer-description,.wpforms-field.wpf-disable-field .mce-tinymce,.wpforms-field.wpf-disable-field .iti__selected-country,.wpforms-field.wpf-disable-field .StripeElement,.wpforms-field.wpf-disable-field .wpforms-stripe-element,.wpforms-field.wpf-disable-field .wpforms-field-square-cardnumber,.wpforms-field.wpf-disable-field .wpforms-square-cardnumber,.wpforms-field.wpf-disable-field .wpforms-geolocation-map,.wpforms-field.wpf-disable-field .wpforms-signature-wrap,.wpforms-field.wpf-disable-field .wpforms-paypal-commerce-card-fields,.wpforms-field.wpf-disable-field.wpforms-field-net_promoter_score table.modern>tbody>tr>td,.wpforms-field.wpf-disable-field .wpforms-camera-link,.wpforms-field.wpforms-field-readonly select,.wpforms-field.wpforms-field-readonly textarea,.wpforms-field.wpforms-field-readonly button,.wpforms-field.wpforms-field-readonly input[type=text],.wpforms-field.wpforms-field-readonly input[type=number],.wpforms-field.wpforms-field-readonly input[type=email],.wpforms-field.wpforms-field-readonly input[type=url],.wpforms-field.wpforms-field-readonly input[type=tel],.wpforms-field.wpforms-field-readonly input[type=password],.wpforms-field.wpforms-field-readonly input[type=radio],.wpforms-field.wpforms-field-readonly input[type=checkbox],.wpforms-field.wpforms-field-readonly input[type=range],.wpforms-field.wpforms-field-readonly input[type=file],.wpforms-field.wpforms-field-readonly input.wpforms-field-date-time-date,.wpforms-field.wpforms-field-readonly .wpforms-uploader,.wpforms-field.wpforms-field-readonly .choices,.wpforms-field.wpforms-field-readonly .wpforms-image-choices-image,.wpforms-field.wpforms-field-readonly .wpforms-field-rating-wrapper,.wpforms-field.wpforms-field-readonly .wpforms-field-password-input-icon,.wpforms-field.wpforms-field-readonly .wpforms-disclaimer-description,.wpforms-field.wpforms-field-readonly .mce-tinymce,.wpforms-field.wpforms-field-readonly .iti__selected-country,.wpforms-field.wpforms-field-readonly .StripeElement,.wpforms-field.wpforms-field-readonly .wpforms-stripe-element,.wpforms-field.wpforms-field-readonly .wpforms-field-square-cardnumber,.wpforms-field.wpforms-field-readonly .wpforms-square-cardnumber,.wpforms-field.wpforms-field-readonly .wpforms-geolocation-map,.wpforms-field.wpforms-field-readonly .wpforms-signature-wrap,.wpforms-field.wpforms-field-readonly .wpforms-paypal-commerce-card-fields,.wpforms-field.wpforms-field-readonly.wpforms-field-net_promoter_score table.modern>tbody>tr>td,.wpforms-field.wpforms-field-readonly .wpforms-camera-link{cursor:default !important;opacity:0.35 !important;pointer-events:none !important}.wpforms-field.wpf-disable-field input[type=radio],.wpforms-field.wpf-disable-field input[type=checkbox],.wpforms-field.wpforms-field-readonly input[type=radio],.wpforms-field.wpforms-field-readonly input[type=checkbox]{cursor:default !important;pointer-events:none !important}.wpforms-field.wpf-disable-field label,.wpforms-field.wpforms-field-readonly label{pointer-events:none !important}.wpforms-field.wpf-disable-field .iti__country-container,.wpforms-field.wpforms-field-readonly .iti__country-container{cursor:default !important}.wpforms-field.wpf-disable-field .iti__country-container button,.wpforms-field.wpforms-field-readonly .iti__country-container button{cursor:default !important}

What people are saying

“Amazing quality and care. I love all your products.”

Otto Reid
Springfield, IL

“Amazing quality and care. I love all your products.”

Otto Reid
Springfield, IL

“Amazing quality and care. I love all your products.”

Otto Reid
Springfield, IL

“Amazing quality and care. I love all your products.”

Otto Reid
Springfield, IL

“Amazing quality and care. I love all your products.”

Otto Reid
Springfield, IL

“Amazing quality and care. I love all your products.”

Otto Reid
Springfield, IL
/** * Korea-한국어 translation * @author Hwang Ahreum; * @author Park Sungyong; * @author Yeonjeong Woo * @author Kwon Hyungjoo * @version 2024-03-19 */ (function(root, factory) { if (typeof define === 'function' && define.amd) { define(['elfinder'], factory); } else if (typeof exports !== 'undefined') { module.exports = factory(require('elfinder')); } else { factory(root.elFinder); } }(this, function(elFinder) { elFinder.prototype.i18.ko = { translator : 'Hwang Ahreum; <luckmagic@naver.com>, Park Sungyong; <sungyong@gmail.com>, Yeonjeong Woo <eat_sweetly@naver.com>, Kwon Hyungjoo <hyung778@gmail.com>', language : 'Korea-한국어', direction : 'ltr', dateFormat : 'Y-m-d H:i', // will show like: 2024-03-19 16:27 fancyDateFormat : '$1 H:i', // will show like: 오늘 16:27 nonameDateFormat : 'ymd-His', // noname upload will show like: 240319-162748 messages : { /********************************** errors **********************************/ 'error' : '오류', 'errUnknown' : '알 수 없는 오류.', 'errUnknownCmd' : '알 수 없는 명령어.', 'errJqui' : 'jQuery UI 설정이 올바르지 않습니다. Selectable, draggable 및 droppable 구성 요소가 포함되어 있어야 합니다.', 'errNode' : 'elFinder를 생성하기 위해서는 DOM Element를 요구합니다.', 'errURL' : 'elFinder 환경설정이 올바르지 않습니다! URL 옵션이 설정되지 않았습니다.', 'errAccess' : '접근 제한.', 'errConnect' : 'Backend에 연결할 수 없습니다.', 'errAbort' : '연결 실패.', 'errTimeout' : '연결시간 초과.', 'errNotFound' : 'Backend를 찾을 수 없습니다.', 'errResponse' : 'Backend가 응답하지 않습니다.', 'errConf' : 'Backend 환경설정이 올바르지 않습니다.', 'errJSON' : 'PHP JSON 모듈이 설치되지 않았습니다.', 'errNoVolumes' : '읽을 수 있는 볼륨이 없습니다.', 'errCmdParams' : '"$1" 명령에 잘못된 매개 변수가 있습니다.', 'errDataNotJSON' : '데이터가 JSON이 아닙니다.', 'errDataEmpty' : '데이터가 비어있습니다.', 'errCmdReq' : 'Backend 요청에는 명령어 이름이 필요합니다.', 'errOpen' : '"$1"을(를) 열 수 없습니다.', 'errNotFolder' : '폴더가 아닙니다.', 'errNotFile' : '파일이 아닙니다.', 'errRead' : '"$1"을(를) 읽을 수 없습니다.', 'errWrite' : '"$1"에 쓸 수 없습니다.', 'errPerm' : '권한이 없습니다.', 'errLocked' : '"$1"이(가) 잠겨 있습니다, 이동, 삭제가 불가능합니다', 'errExists' : '이미 "$1"파일이 존재합니다.', 'errInvName' : '파일명에 올바르지 않은 문자가 포함되었습니다.', 'errInvDirname' : '폴더명에 올바르지 않은 문자가 포함되었습니다.', // from v2.1.24 added 12.4.2017 'errFolderNotFound' : '폴더를 찾을 수 없습니다.', 'errFileNotFound' : '파일을 찾을 수 없습니다.', 'errTrgFolderNotFound' : '"$1" 폴더를 찾을 수 없습니다.', 'errPopup' : '브라우저에서 팝업을 차단하였습니다. 팝업을 허용하려면 브라우저 옵션을 변경하세요.', 'errMkdir' : '"$1" 폴더를 생성할 수 없습니다.', 'errMkfile' : '"$1" 파일을 생성할 수 없습니다.', 'errRename' : '"$1"의 이름을 변경할 수 없습니다.', 'errCopyFrom' : '볼률 "$1"으(로)부터 파일을 복사할 수 없습니다.', 'errCopyTo' : '볼률 "$1"에 파일을 복사할 수 없습니다.', 'errMkOutLink' : 'root 볼륨 외부에 링크를 만들 수 없습니다.', // from v2.1 added 03.10.2015 'errUpload' : '업로드 오류.', // old name - errUploadCommon 'errUploadFile' : '"$1"을(를) 업로드할 수 없습니다.', // old name - errUpload 'errUploadNoFiles' : '업로드할 파일이 없습니다.', 'errUploadTotalSize' : '데이터가 허용된 최대크기를 초과하였습니다.', // old name - errMaxSize 'errUploadFileSize' : '파일이 허용된 최대크기를 초과하였습니다.', // old name - errFileMaxSize 'errUploadMime' : '잘못된 파일형식입니다.', 'errUploadTransfer' : '"$1" 전송 오류.', 'errUploadTemp' : '업로드에 필요한 임시파일 생성을 할 수 없습니다.', // from v2.1 added 26.09.2015 'errNotReplace' : '"$1"개체가 현재 위치에 이미 존재하며 다른 유형의 개체로 대체 할 수 없습니다.', // new 'errReplace' : '"$1"을(를) 변경할 수 없습니다.', 'errSave' : '"$1"을(를) 저장할 수 없습니다.', 'errCopy' : '"$1"을(를) 복사할 수 없습니다.', 'errMove' : '"$1"을(를) 이동할 수 없습니다.', 'errCopyInItself' : '"$1"을(를) 자기 자신에게 복사할 수 없습니다.', 'errRm' : '"$1"의 이름을 변경할 수 없습니다.', 'errTrash' : '휴지통으로 보낼 수 없습니다.', // from v2.1.24 added 30.4.2017 'errRmSrc' : '원본 파일을 제거할 수 없습니다.', 'errExtract' : '"$1"에 압축을 풀 수 없습니다.', 'errArchive' : '압축파일을 생성할 수 없습니다.', 'errArcType' : '지원하지 않는 압축파일 형식입니다.', 'errNoArchive' : '압축파일이 아니거나 지원하지 않는 압축파일 형식입니다.', 'errCmdNoSupport' : 'Backend에서 이 명령을 지원하지 않습니다.', 'errReplByChild' : '"$1" 폴더에 덮어쓸수 없습니다.', 'errArcSymlinks' : '보안상의 이유로 압축파일이 심볼릭 링크를 포함하거나 허용되지 않는 이름이 있을 경우 압축 해제가 불가능합니다.', // edited 24.06.2012 'errArcMaxSize' : '압축파일이 허용된 최대크기를 초과하였습니다.', 'errResize' : '"$1"의 크기 변경을 할 수 없습니다.', 'errResizeDegree' : '회전가능한 각도가 아닙니다.', // added 7.3.2013 'errResizeRotate' : '이미지를 회전할 수 없습니다.', // added 7.3.2013 'errResizeSize' : '올바르지 않은 크기의 이미지입니다.', // added 7.3.2013 'errResizeNoChange' : '이미지 크기가 변경되지 않았습니다.', // added 7.3.2013 'errUsupportType' : '지원하지 않는 파일 형식.', 'errNotUTF8Content' : '파일 "$1"은 UTF-8 형식이 아니어서 편집할 수 없습니다.', // added 9.11.2011 'errNetMount' : '"$1"을(를) 마운트할 수 없습니다.', // added 17.04.2012 'errNetMountNoDriver' : '지원되지 않는 프로토콜.', // added 17.04.2012 'errNetMountFailed' : '마운드 실패.', // added 17.04.2012 'errNetMountHostReq' : '호스트가 필요합니다.', // added 18.04.2012 'errSessionExpires' : '활동이 없어 세션이 만료되었습니다.', 'errCreatingTempDir' : '임시 폴더 생성에 실패했습니다: "$1"', 'errFtpDownloadFile' : 'FTP를 통한 다운로드에 실패했습니다: "$1"', 'errFtpUploadFile' : 'FTP에 업로드 실패했습니다: "$1"', 'errFtpMkdir' : 'FTP에서 폴더 생성에 실패했습니다: "$1"', 'errArchiveExec' : '압축중 오류가 발생했습니다: "$1"', 'errExtractExec' : '압축해제중 오류가 발생했습니다: "$1"', 'errNetUnMount' : '마운트를 해제할 수 없습니다.', // from v2.1 added 30.04.2012 'errConvUTF8' : 'UTF-8로 변환할 수 없습니다.', // from v2.1 added 08.04.2014 'errFolderUpload' : '폴더를 업로드 하려면 최신 브라우저를 사용하세요.', // from v2.1 added 26.6.2015 'errSearchTimeout' : '"$1" 검색중 시간을 초과하였습니다. 일부 결과만 표시됩니다.', // from v2.1 added 12.1.2016 'errReauthRequire' : '재인증이 필요합니다.', // from v2.1.10 added 24.3.2016 'errMaxTargets' : '선택 가능한 최대 개수는 $1개입니다.', // from v2.1.17 added 17.10.2016 'errRestore' : '휴지통에서 복원할 수 없습니다. 복원할 위치를 확인할 수 없습니다.', // from v2.1.24 added 3.5.2017 'errEditorNotFound' : '이 파일 형식을 위한 편집기를 찾지 못했습니다.', // from v2.1.25 added 23.5.2017 'errServerError' : '서버측에서 오류가 발생했습니다.', // from v2.1.25 added 16.6.2017 'errEmpty' : '"$1" 폴더를 비울 수 없습니다.', // from v2.1.25 added 22.6.2017 'moreErrors' : '$1개의 오류가 더 발생했습니다.', // from v2.1.44 added 9.12.2018 'errMaxMkdirs' : 'You can create up to $1 folders at one time.', // from v2.1.58 added 20.6.2021 /******************************* commands names ********************************/ 'cmdarchive' : '압축파일생성', 'cmdback' : '뒤로', 'cmdcopy' : '복사', 'cmdcut' : '자르기', 'cmddownload' : '다운로드', 'cmdduplicate' : '사본', 'cmdedit' : '편집', 'cmdextract' : '압축풀기', 'cmdforward' : '앞으로', 'cmdgetfile' : '선택', 'cmdhelp' : '이 소프트웨어는', 'cmdhome' : '홈', 'cmdinfo' : '파일정보', 'cmdmkdir' : '새 폴더', 'cmdmkdirin' : '새 폴더로', // from v2.1.7 added 19.2.2016 'cmdmkfile' : '새 파일', 'cmdopen' : '열기', 'cmdpaste' : '붙여넣기', 'cmdquicklook' : '미리보기', 'cmdreload' : '새로고침', 'cmdrename' : '이름바꾸기', 'cmdrm' : '삭제', 'cmdtrash' : '휴지통으로', //from v2.1.24 added 29.4.2017 'cmdrestore' : '복원', //from v2.1.24 added 3.5.2017 'cmdsearch' : '파일찾기', 'cmdup' : '상위폴더', 'cmdupload' : '업로드', 'cmdview' : '보기', 'cmdresize' : '이미지 크기 변경 & 회전', 'cmdsort' : '정렬', 'cmdnetmount' : '네트워크 볼륨 마운트', // added 18.04.2012 'cmdnetunmount': '마운트 해제', // from v2.1 added 30.04.2012 'cmdplaces' : '즐겨찾기로', // added 28.12.2014 'cmdchmod' : '모드 변경', // from v2.1 added 20.6.2015 'cmdopendir' : '폴더 열기', // from v2.1 added 13.1.2016 'cmdcolwidth' : '컬럼 넓이 초기화', // from v2.1.13 added 12.06.2016 'cmdfullscreen': '전체 화면', // from v2.1.15 added 03.08.2016 'cmdmove' : '이동', // from v2.1.15 added 21.08.2016 'cmdempty' : '폴더 비우기', // from v2.1.25 added 22.06.2017 'cmdundo' : '실행 취소', // from v2.1.27 added 31.07.2017 'cmdredo' : '다시 실행', // from v2.1.27 added 31.07.2017 'cmdpreference': '환경설정', // from v2.1.27 added 03.08.2017 'cmdselectall' : '전체 선택', // from v2.1.28 added 15.08.2017 'cmdselectnone': '선택 취소', // from v2.1.28 added 15.08.2017 'cmdselectinvert': '선택 반전', // from v2.1.28 added 15.08.2017 'cmdopennew' : '새 창으로 열기', // from v2.1.38 added 3.4.2018 'cmdhide' : '숨기기 (환경설정)', // from v2.1.41 added 24.7.2018 /*********************************** buttons ***********************************/ 'btnClose' : '닫기', 'btnSave' : '저장', 'btnRm' : '삭제', 'btnApply' : '적용', 'btnCancel' : '취소', 'btnNo' : '아니오', 'btnYes' : '예', 'btnDiscard': 'Discard changes', 'btnMount' : '마운트', // added 18.04.2012 'btnApprove': '$1로 이동 및 승인', // from v2.1 added 26.04.2012 'btnUnmount': '마운트 해제', // from v2.1 added 30.04.2012 'btnConv' : '변환', // from v2.1 added 08.04.2014 'btnCwd' : '여기', // from v2.1 added 22.5.2015 'btnVolume' : '볼륨', // from v2.1 added 22.5.2015 'btnAll' : '전체', // from v2.1 added 22.5.2015 'btnMime' : 'MIME 타입', // from v2.1 added 22.5.2015 'btnFileName':'파일 이름', // from v2.1 added 22.5.2015 'btnSaveClose': '저장후 닫기', // from v2.1 added 12.6.2015 'btnBackup' : '백업', // fromv2.1 added 28.11.2015 'btnRename' : '이름변경', // from v2.1.24 added 6.4.2017 'btnRenameAll' : '전체이름 변경', // from v2.1.24 added 6.4.2017 'btnPrevious' : '이전 ($1/$2)', // from v2.1.24 added 11.5.2017 'btnNext' : '다음 ($1/$2)', // from v2.1.24 added 11.5.2017 'btnSaveAs' : '다른 이름으로 저장하기', // from v2.1.25 added 24.5.2017 /******************************** notifications ********************************/ 'ntfopen' : '폴더 열기', 'ntffile' : '파일 열기', 'ntfreload' : '새로고침', 'ntfmkdir' : '폴더 생성', 'ntfmkfile' : '파일 생성', 'ntfrm' : '삭제', 'ntfcopy' : '복사', 'ntfmove' : '이동', 'ntfprepare' : '복사 준비', 'ntfrename' : '이름바꾸기', 'ntfupload' : '업로드', 'ntfdownload' : '다운로드', 'ntfsave' : '저장하기', 'ntfarchive' : '압축파일만들기', 'ntfextract' : '압축풀기', 'ntfsearch' : '검색', 'ntfresize' : '이미지 크기 변경', 'ntfsmth' : '작업중 >_<', 'ntfloadimg' : '이미지 불러오는 중', 'ntfnetmount' : '네트워크 볼륨 마운트 중', // added 18.04.2012 'ntfnetunmount': '네트워크 볼륨 마운트 해제 중', // from v2.1 added 30.04.2012 'ntfdim' : '이미지 해상도 가져오는 중', // added 20.05.2013 'ntfreaddir' : '폴더 정보 읽는 중', // from v2.1 added 01.07.2013 'ntfurl' : '링크 URL 가져오는 중', // from v2.1 added 11.03.2014 'ntfchmod' : '파일 모드 변경하는 중', // from v2.1 added 20.6.2015 'ntfpreupload': '업로드된 파일명 검증 중', // from v2.1 added 31.11.2015 'ntfzipdl' : '다운로드할 파일 생성 중', // from v2.1.7 added 23.1.2016 'ntfparents' : '경로 정보 가져오는 중', // from v2.1.17 added 2.11.2016 'ntfchunkmerge': '업로드된 파일 처리 중', // from v2.1.17 added 2.11.2016 'ntftrash' : '휴지통으로 이동 중', // from v2.1.24 added 2.5.2017 'ntfrestore' : '휴지통에서 복원 중', // from v2.1.24 added 3.5.2017 'ntfchkdir' : '대상 폴더 점검 중', // from v2.1.24 added 3.5.2017 'ntfundo' : '이전 작업 취소 중', // from v2.1.27 added 31.07.2017 'ntfredo' : '취소된 작업 다시 하는 중', // from v2.1.27 added 31.07.2017 'ntfchkcontent' : '내용 확인 중', // from v2.1.41 added 3.8.2018 /*********************************** volumes *********************************/ 'volume_Trash' : '휴지통', //from v2.1.24 added 29.4.2017 /************************************ dates **********************************/ 'dateUnknown' : '알 수 없음', 'Today' : '오늘', 'Yesterday' : '어제', 'msJan' : '1월', 'msFeb' : '2월', 'msMar' : '3월', 'msApr' : '4월', 'msMay' : '5월', 'msJun' : '6월', 'msJul' : '7월', 'msAug' : '8월', 'msSep' : '9월', 'msOct' : '10월', 'msNov' : '11월', 'msDec' : '12월', 'January' : '1월', 'February' : '2월', 'March' : '3월', 'April' : '4월', 'May' : '5월', 'June' : '6월', 'July' : '7월', 'August' : '8월', 'September' : '9월', 'October' : '10월', 'November' : '11월', 'December' : '12월', 'Sunday' : '일요일', 'Monday' : '월요일', 'Tuesday' : '화요일', 'Wednesday' : '수요일', 'Thursday' : '목요일', 'Friday' : '금요일', 'Saturday' : '토요일', 'Sun' : '일', 'Mon' : '월', 'Tue' : '화', 'Wed' : '수', 'Thu' : '목', 'Fri' : '금', 'Sat' : '토', /******************************** sort variants ********************************/ 'sortname' : '이름', 'sortkind' : '종류', 'sortsize' : '크기', 'sortdate' : '날짜', 'sortFoldersFirst' : '폴더 먼저', 'sortperm' : '퍼미션별', // from v2.1.13 added 13.06.2016 'sortmode' : '모드별', // from v2.1.13 added 13.06.2016 'sortowner' : '소유자별', // from v2.1.13 added 13.06.2016 'sortgroup' : '그룹별', // from v2.1.13 added 13.06.2016 'sortAlsoTreeview' : '트리뷰도 같이', // from v2.1.15 added 01.08.2016 /********************************** new items **********************************/ 'untitled file.txt' : '새파일.txt', // added 10.11.2015 'untitled folder' : '새폴더', // added 10.11.2015 'Archive' : '새아카이브', // from v2.1 added 10.11.2015 'untitled file' : '새파일.$1', // from v2.1.41 added 6.8.2018 'extentionfile' : '$1: 파일', // from v2.1.41 added 6.8.2018 'extentiontype' : '$1: $2', // from v2.1.43 added 17.10.2018 /********************************** messages **********************************/ 'confirmReq' : '확인', 'confirmRm' : '이 파일을 정말로 삭제 하겠습니까?
실행 후 되돌릴 수 없습니다!', 'confirmRepl' : '오래된 파일을 새 파일로 바꾸시겠습니까? (폴더가 포함되어 있으면 병합됩니다. 백업 및 교체하려면 백업을 선택하세요.)', 'confirmRest' : '이미 있는 파일을 휴지통에 있는 파일로 교체하시겠습니까?', // fromv2.1.24 added 5.5.2017 'confirmConvUTF8' : 'UTF-8이 아닙니다
UTF-8로 변환할까요?
변환후 저장하면 UTF-8로 바뀝니다.', // from v2.1 added 08.04.2014 'confirmNonUTF8' : '이 파일의 인코딩 타입을 알아내지 못했습니다. 편집하려면 임시로 UTF-8로 변환해야 합니다.
이 파일의 인코딩을 선택해주세요.', // from v2.1.19 added 28.11.2016 'confirmNotSave' : '변경된 부분이 있습니다.
저장하지 않는다면 현재 작업중인 내용을 잃을 수 있습니다.', // from v2.1 added 15.7.2015 'confirmTrash' : '휴지통으로 이동하시겠습니까?', //from v2.1.24 added 29.4.2017 'confirmMove' : '이 파일을 정말 "$1"(으)로 이동하시겠습니까?', //from v2.1.50 added 27.7.2019 'apllyAll' : '모두 적용', 'name' : '이름', 'size' : '크기', 'perms' : '권한', 'modify' : '수정된 시간', 'kind' : '종류', 'read' : '읽기', 'write' : '쓰기', 'noaccess' : '액세스 불가', 'and' : '와', 'unknown' : '알 수 없음', 'selectall' : '모든 파일 선택', 'selectfiles' : '파일 선택', 'selectffile' : '첫번째 파일 선택', 'selectlfile' : '마지막 파일 선택', 'viewlist' : '리스트 보기', 'viewicons' : '아이콘 보기', 'viewSmall' : '작은 아이콘', // from v2.1.39 added 22.5.2018 'viewMedium' : '중간 아이콘', // from v2.1.39 added 22.5.2018 'viewLarge' : '큰 아이콘', // from v2.1.39 added 22.5.2018 'viewExtraLarge' : '아주 큰 아이콘', // from v2.1.39 added 22.5.2018 'places' : '즐겨찾기', 'calc' : '계산', 'path' : '경로', 'aliasfor' : '별명', 'locked' : '잠금', 'dim' : '크기', 'files' : '파일', 'folders' : '폴더', 'items' : '아이템', 'yes' : '예', 'no' : '아니오', 'link' : '링크', 'searcresult' : '검색 결과', 'selected' : '아이템 선택', 'about' : '이 프로그램은..', 'shortcuts' : '단축아이콘', 'help' : '도움말', 'webfm' : '웹 파일매니저', 'ver' : '버전', 'protocolver' : '프로토콜 버전', 'homepage' : '홈페이지', 'docs' : '문서', 'github' : 'Github에서 포크하기', 'twitter' : '트위터에서 팔로우하기', 'facebook' : '페이스북에서 가입하기', 'team' : '팀', 'chiefdev' : '개발팀장', 'developer' : '개발자', 'contributor' : '공헌자', 'maintainer' : '관리자', 'translator' : '번역', 'icons' : '아이콘', 'dontforget' : '그리고 수건 가져가는 것을 잊지 마세요', 'shortcutsof' : '단축아이콘 사용불가', 'dropFiles' : '여기로 이동하기', 'or' : '또는', 'selectForUpload' : '업로드 파일 선택', 'moveFiles' : '파일 이동', 'copyFiles' : '파일 복사', 'restoreFiles' : '복원하기', // from v2.1.24 added 5.5.2017 'rmFromPlaces' : '현재 폴더에서 삭제하기', 'aspectRatio' : '화면비율', 'scale' : '크기', 'width' : '가로', 'height' : '세로', 'resize' : '사이즈 변경', 'crop' : '자르기', 'rotate' : '회전', 'rotate-cw' : '반시계방향 90도 회전', 'rotate-ccw' : '시계방향 90도 회전', 'degree' : '도', 'netMountDialogTitle' : '네트워크 볼륨 마운트', // added 18.04.2012 'protocol' : '프로토콜', // added 18.04.2012 'host' : '호스트', // added 18.04.2012 'port' : '포트', // added 18.04.2012 'user' : '사용자', // added 18.04.2012 'pass' : '비밀번호', // added 18.04.2012 'confirmUnmount' : '$1을(를) 마운트 해제하시겠습니까?', // from v2.1 added 30.04.2012 'dropFilesBrowser': '브라우저에서 파일을 끌어오거나 붙여넣으세요', // from v2.1 added 30.05.2012 'dropPasteFiles' : '파일을 끌어오거나, 클립보드의 URL이나 이미지들을 붙여넣으세요', // from v2.1 added 07.04.2014 'encoding' : '인코딩', // from v2.1 added 19.12.2014 'locale' : '로케일', // from v2.1 added 19.12.2014 'searchTarget' : '대상: $1', // from v2.1 added 22.5.2015 'searchMime' : '입력한 MIME 타입으로 검색하기', // from v2.1 added 22.5.2015 'owner' : '소유자', // from v2.1 added 20.6.2015 'group' : '그룹', // from v2.1 added 20.6.2015 'other' : '그외', // from v2.1 added 20.6.2015 'execute' : '실행', // from v2.1 added 20.6.2015 'perm' : '권한', // from v2.1 added 20.6.2015 'mode' : '모드', // from v2.1 added 20.6.2015 'emptyFolder' : '빈 폴더입니다', // from v2.1.6 added 30.12.2015 'emptyFolderDrop' : '빈 폴더입니다\\A 드래드 앤 드롭으로 파일을 추가하세요', // from v2.1.6 added 30.12.2015 'emptyFolderLTap' : '빈 폴더입니다\\A 길게 눌러 파일을 추가하세요', // from v2.1.6 added 30.12.2015 'quality' : '품질', // from v2.1.6 added 5.1.2016 'autoSync' : '자동 동기', // from v2.1.6 added 10.1.2016 'moveUp' : '위로 이동', // from v2.1.6 added 18.1.2016 'getLink' : 'URL 링크 가져오기', // from v2.1.7 added 9.2.2016 'selectedItems' : '선택된 항목 ($1)', // from v2.1.7 added 2.19.2016 'folderId' : '폴더 ID', // from v2.1.10 added 3.25.2016 'offlineAccess' : '오프라인 접근 허용', // from v2.1.10 added 3.25.2016 'reAuth' : '재인증하기', // from v2.1.10 added 3.25.2016 'nowLoading' : '로딩중...', // from v2.1.12 added 4.26.2016 'openMulti' : '여러 파일 열기', // from v2.1.12 added 5.14.2016 'openMultiConfirm': '$1 파일을 열려고 합니다. 브라우저에서 열겠습니까?', // from v2.1.12 added 5.14.2016 'emptySearch' : '검색결과가 없습니다.', // from v2.1.12 added 5.16.2016 'editingFile' : '편집중인 파일입니다.', // from v2.1.13 added 6.3.2016 'hasSelected' : '$1개를 선택했습니다.', // from v2.1.13 added 6.3.2016 'hasClipboard' : '클립보드에 $1개가 있습니다.', // from v2.1.13 added 6.3.2016 'incSearchOnly' : '증분 검색은 현재 보기에서만 가능합니다.', // from v2.1.13 added 6.30.2016 'reinstate' : '복원', // from v2.1.15 added 3.8.2016 'complete' : '$1 완료', // from v2.1.15 added 21.8.2016 'contextmenu' : '컨텍스트 메뉴', // from v2.1.15 added 9.9.2016 'pageTurning' : '페이지 전환', // from v2.1.15 added 10.9.2016 'volumeRoots' : '볼륨 루트', // from v2.1.16 added 16.9.2016 'reset' : '초기화', // from v2.1.16 added 1.10.2016 'bgcolor' : '배경색', // from v2.1.16 added 1.10.2016 'colorPicker' : '색 선택기', // from v2.1.16 added 1.10.2016 '8pxgrid' : '8px 그리드', // from v2.1.16 added 4.10.2016 'enabled' : '활성', // from v2.1.16 added 4.10.2016 'disabled' : '비활성', // from v2.1.16 added 4.10.2016 'emptyIncSearch' : '현재 보기에는 검색결과가 없습니다.\\A[Enter]를 눌러 검색 대상을 확장하세요.', // from v2.1.16 added 5.10.2016 'emptyLetSearch' : '현재 보기에는 첫 글자 검색 결과가 없습니다.', // from v2.1.23 added 24.3.2017 'textLabel' : '텍스트 라벨', // from v2.1.17 added 13.10.2016 'minsLeft' : '$1 분 남았습니다', // from v2.1.17 added 13.11.2016 'openAsEncoding' : '선택한 인코딩으로 다시 열기', // from v2.1.19 added 2.12.2016 'saveAsEncoding' : '선택한 인코딩으로 저장하기', // from v2.1.19 added 2.12.2016 'selectFolder' : '폴더 선택', // from v2.1.20 added 13.12.2016 'firstLetterSearch': '첫 글자 검색', // from v2.1.23 added 24.3.2017 'presets' : '프리셋', // from v2.1.25 added 26.5.2017 'tooManyToTrash' : '휴지통으로 옮기기엔 항목이 너무 많습니다.', // from v2.1.25 added 9.6.2017 'TextArea' : '글자영역', // from v2.1.25 added 14.6.2017 'folderToEmpty' : '"$1" 폴더를 비우세요.', // from v2.1.25 added 22.6.2017 'filderIsEmpty' : '"$1" 폴더에 아무것도 없습니다.', // from v2.1.25 added 22.6.2017 'preference' : '환경설정', // from v2.1.26 added 28.6.2017 'language' : '언어 설정', // from v2.1.26 added 28.6.2017 'clearBrowserData': '이 브라우저에 저장된 설정값 초기화하기', // from v2.1.26 added 28.6.2017 'toolbarPref' : '툴바 설정', // from v2.1.27 added 2.8.2017 'charsLeft' : '... $1 글자 남았습니다.', // from v2.1.29 added 30.8.2017 'linesLeft' : '... $1 줄 남았습니다.', // from v2.1.52 added 16.1.2020 'sum' : '합계', // from v2.1.29 added 28.9.2017 'roughFileSize' : '대략적인 파일 크기', // from v2.1.30 added 2.11.2017 'autoFocusDialog' : '마우스를 가져갈 때 대화창 요소에 초점 맞추기', // from v2.1.30 added 2.11.2017 'select' : '선택', // from v2.1.30 added 23.11.2017 'selectAction' : '파일 선택시 동작', // from v2.1.30 added 23.11.2017 'useStoredEditor' : '마지막 사용한 편집기로 열기', // from v2.1.30 added 23.11.2017 'selectinvert' : '선택 반전', // from v2.1.30 added 25.11.2017 'renameMultiple' : '선택한 $1을(를) $2와 같이 바꾸겠습니까?
이 작업은 되돌릴 수 없습니다!', // from v2.1.31 added 4.12.2017 'batchRename' : '일괄 이름 바꾸기', // from v2.1.31 added 8.12.2017 'plusNumber' : '+ 숫자', // from v2.1.31 added 8.12.2017 'asPrefix' : '접두사 추가', // from v2.1.31 added 8.12.2017 'asSuffix' : '접미사 추가', // from v2.1.31 added 8.12.2017 'changeExtention' : '확장자 변경', // from v2.1.31 added 8.12.2017 'columnPref' : '사이드바 설정 (리스트 보기)', // from v2.1.32 added 6.2.2018 'reflectOnImmediate' : '모든 변경은 아카이브에 즉시 반영됩니다.', // from v2.1.33 added 2.3.2018 'reflectOnUnmount' : '이 볼륨의 마운트를 해제할 때까지는 어떠한 변경사항도 반영되지 않습니다.', // from v2.1.33 added 2.3.2018 'unmountChildren' : '아래의 볼륨들도 이 볼륨과 함께 마운트가 해제됩니다. 계속하시겠습니까?', // from v2.1.33 added 5.3.2018 'selectionInfo' : '선택 정보', // from v2.1.33 added 7.3.2018 'hashChecker' : '파일 해쉬 알고리즘', // from v2.1.33 added 10.3.2018 'infoItems' : '정보 (선택 정보 패널)', // from v2.1.38 added 28.3.2018 'pressAgainToExit': '나가기 위해서 한 번 더 누르세요.', // from v2.1.38 added 1.4.2018 'toolbar' : '툴바', // from v2.1.38 added 4.4.2018 'workspace' : '작업공간', // from v2.1.38 added 4.4.2018 'dialog' : '대화상자', // from v2.1.38 added 4.4.2018 'all' : '전체', // from v2.1.38 added 4.4.2018 'iconSize' : '아이콘 크기 (아이콘 보기)', // from v2.1.39 added 7.5.2018 'editorMaximized' : '최대화된 편집기 창을 엽니다', // from v2.1.40 added 30.6.2018 'editorConvNoApi' : '현재 API를 통한 변환이 불가능하므로 웹 사이트에서 변환하시기 바랍니다.', //from v2.1.40 added 8.7.2018 'editorConvNeedUpload' : '변환 후 변환된 파일을 저장하기 위해서는 파일 URL이나 다운로드받은 파일을 업로드 해야 합니다.', //from v2.1.40 added 8.7.2018 'convertOn' : '$1 사이트에서 변환하시기 바랍니다.', // from v2.1.40 added 10.7.2018 'integrations' : '통합', // from v2.1.40 added 11.7.2018 'integrationWith' : 'elFinder에는 다음과 같은 외부 서비스가 통합되어 있습니다. 이용하기 전에 이용 약관, 개인정보 보호정책 등을 확인하시기 바랍니다.', // from v2.1.40 added 11.7.2018 'showHidden' : '숨겨진 파일 표시', // from v2.1.41 added 24.7.2018 'hideHidden' : '숨겨진 파일 숨기기', // from v2.1.41 added 24.7.2018 'toggleHidden' : '숨겨진 항목 표시/숨기기', // from v2.1.41 added 24.7.2018 'makefileTypes' : '"새 파일"에서 사용할 파일 형식', // from v2.1.41 added 7.8.2018 'typeOfTextfile' : '텍스트 파일 유형', // from v2.1.41 added 7.8.2018 'add' : '추가', // from v2.1.41 added 7.8.2018 'theme' : '테마', // from v2.1.43 added 19.10.2018 'default' : '기본값', // from v2.1.43 added 19.10.2018 'description' : '설명', // from v2.1.43 added 19.10.2018 'website' : '웹사이트', // from v2.1.43 added 19.10.2018 'author' : '저자', // from v2.1.43 added 19.10.2018 'email' : '이메일', // from v2.1.43 added 19.10.2018 'license' : '라이선스', // from v2.1.43 added 19.10.2018 'exportToSave' : '이 파일은 저장될 수 없습니다. 편집한 내용을 유지하려면 PC로 내보내시기 바랍니다.', // from v2.1.44 added 1.12.2018 'dblclickToSelect': '파일을 두 번 클릭하여 선택하세요.', // from v2.1.47 added 22.1.2019 'useFullscreen' : '전체 화면 모드 사용', // from v2.1.47 added 19.2.2019 /********************************** mimetypes **********************************/ 'kindUnknown' : '알 수 없음', 'kindRoot' : 'Root 볼륨', // from v2.1.16 added 16.10.2016 'kindFolder' : '폴더', 'kindSelects' : '선택', // from v2.1.29 added 29.8.2017 'kindAlias' : '별칭', 'kindAliasBroken' : '손상된 별칭', // applications 'kindApp' : '응용프로그램', 'kindPostscript' : 'Postscript 문서', 'kindMsOffice' : 'Microsoft Office 문서', 'kindMsWord' : 'Microsoft Word 문서', 'kindMsExcel' : 'Microsoft Excel 문서', 'kindMsPP' : 'Microsoft Powerpoint 프레젠테이션', 'kindOO' : 'Open Office 문서', 'kindAppFlash' : '플래쉬 파일', 'kindPDF' : 'PDF 문서', 'kindTorrent' : '비트토렌트 파일', 'kind7z' : '7z 압축파일', 'kindTAR' : 'TAR 압축파일', 'kindGZIP' : 'GZIP 압축파일', 'kindBZIP' : 'BZIP 압축파일', 'kindXZ' : 'XZ 압축파일', 'kindZIP' : 'ZIP 압축파일', 'kindRAR' : 'RAR 압축파일', 'kindJAR' : '자바 JAR 파일', 'kindTTF' : '트루 타입 글꼴', 'kindOTF' : '오픈 타입 글꼴', 'kindRPM' : 'RPM 패키지', // fonts 'kindFont' : '글꼴', 'kindSFNT' : 'SFNT 글꼴', 'kindEOT' : 'Embedded Open Type 글꼴', 'kindWOFF' : 'Web Open Font Format 글꼴', 'kindWOFF2' : 'Web Open Font Format 2 글꼴', // texts 'kindText' : '텍스트 문서', 'kindTextPlain' : '일반 텍스트', 'kindPHP' : 'PHP 소스', 'kindCSS' : 'CSS 문서', 'kindHTML' : 'HTML 문서', 'kindJS' : '자바스크립트 소스', 'kindRTF' : 'RTF 형식', 'kindC' : 'C 소스', 'kindCHeader' : 'C 헤더 소스', 'kindCPP' : 'C++ 소스', 'kindCPPHeader' : 'C++ 헤더 소스', 'kindShell' : '유닉스 쉘 스크립트', 'kindPython' : '파이썬 소스', 'kindJava' : '자바 소스', 'kindRuby' : '루비 소스', 'kindPerl' : '펄 스크립트', 'kindSQL' : 'SQL 소스', 'kindXML' : 'XML 문서', 'kindAWK' : 'AWK 소스', 'kindCSV' : 'CSV 파일', 'kindDOCBOOK' : '닥북 XML 문서', 'kindMarkdown' : '마크다운 문서', // added 20.7.2015 // images 'kindImage' : '이미지', 'kindBMP' : 'BMP 이미지', 'kindJPEG' : 'JPEG 이미지', 'kindGIF' : 'GIF 이미지', 'kindPNG' : 'PNG 이미지', 'kindTIFF' : 'TIFF 이미지', 'kindTGA' : 'TGA 이미지', 'kindPSD' : 'Adobe Photoshop 이미지', 'kindXBITMAP' : 'X 비트맵 이미지', 'kindPXM' : 'Pixelmator 이미지', // media 'kindAudio' : '오디오 미디어', 'kindAudioMPEG' : 'MPEG 오디오', 'kindAudioMPEG4' : 'MPEG-4 오디오', 'kindAudioMIDI' : 'MIDI 오디오', 'kindAudioOGG' : 'Ogg Vorbis 오디오', 'kindAudioWAV' : 'WAV 오디오', 'AudioPlaylist' : 'MP3 플레이 리스트', 'kindVideo' : '동영상 미디어', 'kindVideoDV' : 'DV 동영상', 'kindVideoMPEG' : 'MPEG 동영상', 'kindVideoMPEG4' : 'MPEG-4 동영상', 'kindVideoAVI' : 'AVI 동영상', 'kindVideoMOV' : '퀵 타임 동영상', 'kindVideoWM' : '윈도우 미디어 플레이어 동영상', 'kindVideoFlash' : '플래쉬 동영상', 'kindVideoMKV' : 'Matroska 동영상', 'kindVideoOGG' : 'Ogg 동영상' } }; }));
Picture of a flower

Tell your story

Like flowers that bloom in unexpected places, every story unfolds with beauty and resilience, revealing hidden wonders.

Schedule Your Free ​Consultation

Your Canadian Source for Compressed Air Solutions

 

Head Office

480 Newbold Street 

London, Ontario, N6E 1K6

Offices in Cambridge, Mississauga, and Sudbury

NCA Ltd. is a distributor of air compressor systems serving the Greater Toronto Area and South Western Ontario.

NCA LTD is an authorized distributor for the following manufacturers:

Request Consultation

    Frequently Asked Questions

    A common question we often get asked is what CFM and PSI do I need for my air compressor system? The short answer, the tools you plan to run dictate what airflow (CFM) and pressure (PSI) the compressor must provide to be efficient and effective.

    CFM stands for Cubic Feet per Minute and is a volumetric measurement that indicates the volume of air a compressor can deliver in one minute (60 seconds). CFM describes how many cubic feet of compressed air exit a machine and travel toward the point of use (i.e., pneumatic tool, equipment etc.)

    It is important for determining the compressor's flow rate and its suitability for specific air tools and tasks. A higher CFM rating means the compressor can supply more air, which is essential for efficient operation of air-powered/pneumatic tools.

    CFM is a very important metric in compressed air systems. CFM directly impacts the efficiency and effectiveness of your compressor. It is essential for ensuring that your compressor system can supply the correct volume of air to things like power tools, equipment, or any system that relies on compressed air to operate. CFM dictates whether a compressor can sustain the operation of a pneumatic tool without performance drops or constant cycling.

    A higher CFM rating means a greater capacity for air delivery which is important for operating tools (often multiple) or for any application that requires continuous air flow.

    It is crucial to understand CFM to be able to make an informed decision as it relates to your compressor system/needs. To operate efficiently, you need to match the CFM rating to the requirements of the tools/equipment you are using at your facility or job site. Optimal performance occurs when you have the correct CFM requirements for your specific application.

    CFM is intrinsically tied to the pressure at which the air is delivered, measured in Pounds per Square Inch (PSI). A compressor’s CFM rating is always specified at a corresponding PSI value, for example, 6 CFM at 100 PSI. The relationship between flow rate (CFM) and pressure (PSI) is inverse—as the required discharge pressure increases, your compressor’s ability to maintain that CFM decreases. As such, when deciding on the right compressed air system for your application, it is important to look at the CFM rating at the same pressure level.

    If you want more information about CFM as it relates to your specific application, feel free to reach out to info@ncaltd.ca today!

    A common question we often get asked is what CFM and PSI do I need for my air compressor system? The short answer, the tools you plan to run dictate what airflow (CFM) and pressure (PSI) the compressor must provide to be efficient and effective.

    Pounds per square inch (PSI) is a unit of pressure that measures the force exerted by compressed air in an air compressor system. It quantifies how much pressure the air inside the compressor exerts on a given area, which is important for determining the performance and efficiency of the compressor.

    PSI tells you how much force the compressed air system can exert, which impacts your tool’s performance and safety. For example, an air compressor output rated at 200 PSI means it provides 200 pounds of pressure per square inch. There are a few different variations of PSI that may be relevant to your specific application. Below are a few different terms you may want to know to ensure you are making the best decision for your facility or job site.

    PSIA - Pounds per square inch absolute

    PSIA is often referred to as total pressure, PSIA refers to pressure relative to zero or a perfect vacuum. For example, in a vacuum, if a tire were empty of air, it would measure 0 PSIA. PSIA measurement includes atmospheric pressure in its reading. At sea level, the atmospheric pressure is approximately 14.7 PSI, so a reading of 30 PSIA includes this atmospheric pressure.

    PSIG - Pounds per square inch gauge

    PSIG measures the pressure relative to the ambient atmospheric pressure. Unlike PSIA, PSIG does not account for atmospheric pressure. Therefore, PSIG is always lower than PSIA by the amount of ambient atmospheric pressure. For example, a vessel completely void of any air molecules at sea level would read roughly -14.7 PSIG, and ambient air pressure is always measured as 0 PSIG.

    Higher PSI allows a compressor system to power tools that require more force, enabling efficient operation of demanding tasks. Accurate PSI settings ensure your compressor system delivers optimal performance and prevents damage from over-pressurizing.

    Pneumatic tools require specific PSI levels to work correctly, and PSI levels vary by tool, equipment, and application. For example, a paint sprayer may need 60 PSI, while a heavy-duty impact wrench might need 90 PSI or more to be efficient and effective. Using the right PSI prevents tool damage and ensures efficient work.

    If you want more information about PSI as it relates to your specific application, feel free to reach out to info@ncaltd.ca today!

    An important consideration when building a compressed air system is deciding if an air receiver is required and if so, what size is appropriate. Incorrect tank sizing can lead to inefficient and unsteady air to your tools/equipment which can create a number of (avoidable) problems for your facility.

    When considering what size tank/air receiver is required for your specific application, you must recognize that the tank size affects how long you can run your tools without the compressor kicking in, and how steady the air supply is to your tools/equipment.

     

    Determining the tank size for a compressor system involves a number of steps to ensure the right balance between storage capacity and the demand required for your tools to be efficient and effective. Below is a list of things you may want to consider when determining tank sizing for your plant/facility/job site:

     

    • Identify the Highest CFM Requirement: Determine the CFM (cubic feet per minute) requirement of your tool(s) with the highest demand at the required PSI (pounds per square inch)
    • Calculate the Minimum Tank Size: Multiply the CFM requirement by 1.25 or 1.5 and round up to the nearest gallon size.
    • Consider Duty Cycle: If the compressor runs continuously, a larger tank may be necessary to prevent wear and overheating.
    • Space Constraints: If space is limited, you may want to consider vertical tanks for stability or smaller tanks for mobility.
    • Utilization Factor: For stationary applications, consider the utilization factor of the tools and the control system strategy.
    • Consult a Professional: For complex applications, consult a qualified engineer or sales representative to ensure the tank size meets the specific demands of the system.

    By following these steps, you can ensure that your compressor system has the right tank size to meet the air demands of your tools without overworking your compressor or wasting any energy.

    It is important to note that the above is not an exhaustive list but a starting point for you to work towards making an informed decision for your compressed air system. NCA Ltd. has extensive experience with sizing air receivers for all types of applications and as such, can help you/your facility make an informed decision to ensure you are sizing your air receiver appropriately for your system.

    If you want more information about appropriate tank sizing as it relates to your specific application, feel free to reach out to info@ncaltd.ca today!

    These choices impact maintenance, durability, noise, cost, and suitability for different usage levels.

    Oil-free vs oil-lubricated

    When comparing oil-lubricated and oil-free compressors, it's essential to consider the specific application and your organizations environmental requirements.

    • Oil-lubricated compressors are often preferred in industrial settings where they provide a longer service life and are cost-effective. However, they require regular maintenance and can be noisy.
    • Oil-free compressors are ideal for sensitive applications where contamination is a concern, offering clean air and meeting strict environmental standards. They are also more portable and less prone to oil contamination. The choice between the two depends on the operational needs and the specific industry requirements.

    Single stage vs three stage

    Single-Stage Compressors

    • In a single-stage compressor, air is compressed in one stroke. The piston draws in air and compresses it in a single cylinder before sending it to the storage tank. This type of compressor is simpler and typically used for lower pressure applications.
    • Commonly used in smaller applications such as home workshops, automotive repair, and light industrial tasks. They are ideal for tasks that require lower air pressure and volume.
    • Single-stage compressors are generally less efficient than multi-stage compressors, especially in high-demand scenarios. They can overheat with prolonged use due to the lack of cooling between compression stages.
    • Typically, single-stage compressors are less expensive due to their simpler design and fewer components.

    Three-Stage Compressors

    • Three-stage compressors compress air in three distinct stages, allowing for more efficient compression. After each stage, the air is cooled, which reduces the temperature and increases efficiency. This process allows for higher pressure outputs.
    • These compressors are used in heavy-duty applications such as industrial manufacturing, refrigeration, and processes requiring high pressure and large volumes of compressed air.
    • The multi-stage design, including three stages, significantly improves efficiency by reducing the work done in each stage and minimizing heat buildup. This results in better performance and longevity.
    • Three-stage compressors are generally more expensive due to their complex design and additional components, but they provide better performance for demanding applications.

     

    In summary, single-stage compressors are more suitable for light-duty applications with lower pressure requirements, while three-stage compressors are designed for high-demand industrial applications that require efficient and high-pressure air delivery. The choice between the two depends on the specific needs of the application, including required pressure, volume, and budget considerations.

    Belt drive versus direct drive

    When comparing single-stage belt drive and direct drive compressors, it's essential to consider the specific needs of your project. Belt-driven compressors are ideal for applications requiring adjustable pressure or speed, such as inflating tires or operating tools that need more PSI. They are also more economical and easier to maintain, with regular checks like lubrication and belt tension. However, they may not be suitable for all environments and can be more expensive upfront.

    Direct-drive compressors, on the other hand, are better for high-pressure applications and industrial use. They offer increased efficiency, reduced maintenance, and lower noise levels. They are also more tolerant of extreme conditions and have fewer moving parts, leading to lower maintenance costs. However, they can be more expensive to purchase initially and may be louder to operate.

    Ultimately, the choice between a single-stage belt drive and direct drive compressor depends on your specific operational requirements, budget, and maintenance capabilities.

    If you want more information about compressor options for your specific application, feel free to reach out to info@ncaltd.ca today!

    The short answer is yes. The desired location of your compressed air system in your facility/shop and the power availability (230v vs 575v, etc.) affect what compressors you can use, and the installation cost(s) associated with getting that system up and running. Available power supply and location of the compressor in your facility are important factors when deciding on the right system for your specific application.

    Location:

    The location of your compressed air system is crucial. Location affects the compressor's performance, efficiency, and the overall productivity of your facility/shop. Proper placement ensures that the compressor operates smoothly, which in turn avoids overheating/breakdowns, and minimizes maintenance costs. Understanding how the location of your compressed air system impacts what configuration/set-up are most appropriate is important to ensure the effectiveness and efficiency of your system.

    Location also impacts employee productivity and safety by working to reduce noise and vibration disruptions. At NCA Ltd., we offer a number of acoustic configurations to fit your facilities needs as it relates to noise and vibration.

    Additionally, location can influence energy efficiency and the overall lifespan of your compressor. Careful consideration of the compressor's location is essential for optimal performance and cost-effectiveness. We work with clients to ensure proper compressor placement to maximise efficiency and minimize issues/down-time. Appropriate compressor placement (including air lines, filters, and air receivers) can save your facility thousands of dollars by ensuring maximum efficiency and energy usage.

    Voltage:

    The voltage in a compressed air systems is crucial for the efficient operation and management of energy. It directly affects the power supply required for the compressor to operate effectively. The voltage level is designed to align with the operational standards of the electrical grid. This alignment is essential for ensuring the system's capacity and efficiency, as well as for maintaining grid compatibility. The voltage levels are also critical for the transformation of air pressure to electrical energy, which is necessary for the energy storage and conversion processes.

    Proper voltage management is integral to the overall performance of your compressed air system. NCA offers a number of voltage options ranging from 208v to 575v and works with each client to ensure their system has the correct voltage to achieve maximum efficiency and energy usage. Deciding on what voltage your system will need is crucial to ensure reliable, efficient air supply to your tools and machinery. Incorrect voltage may lead to downtime, unsteady air, and maintenance related issues; all of which cost money and decrease your compressors overall output.

    If you want more information about compressor location, power source and voltage for your specific application, feel free to reach out to info@ncaltd.ca today!

    Understanding a compressors duty cycle is an important factor when considering a new compressed air system.  If your facility or shop runs tools continuously (or multiple tools) you’ll need a compressor with a higher duty cycle and better performance to ensure you are getting reliable air flow. Choosing between a fixed speed and variable speed compressor system is an essential factor to ensure appropriate performance of your compressed air system.

     

    Duty Cycle:

     

    An air compressor's duty cycle refers to how long it takes its pump (driven by a motor) to fill up its tank. If the compressor does not have a tank (like your lungs), it will always have a 100% duty cycle. If the compressor has a tank, it just means that one full cycle is the total time it takes to fill the tank, or when the compressor runs, stops, and runs again. This 'on-off-on,' or duty cycle is sometimes referred to as run-time vs rest time.

     

    The duty cycle is very important when it comes to understanding how a reciprocating air compressor functions by cycling on and off. The ratio between the run time and the rest time is the duty cycle rating, which helps you understand how the compressor will operate and if it will fulfill your air needs when sizing a compressed air system. A duty cycle rating indicates how long a compressor should be working and how long it should be resting between cycles, and it’s your responsibility not to overwork your compressor.

     

    Intermittent vs Continuous:

     

    Often, an intermittent duty cycle will be enough to help you complete the task at hand without losing productivity. For example:

    • Filling a tire or other kind of inflatable with air
    • Powering mechanics’ tools, such as pneumatic wrenches and nailers, which only need power for seconds at a time every few minutes
    • Completing do-it-yourself home projects

     

    Quincy compressor models that are suitable for intermittent duty:

    • QT Series, QP Series, QR-25

     

    Continuous duty cycles allow you to provide constant power to machinery and tools without experiencing downtime. Here are some applications where that may be useful:

    • Powering tools used in manufacturing electronics
    • Lifting heavy in-process works in furniture factories and automobile manufacturing facilities
    • Operating conveyor belt systems in bottling plants

     

    Quincy compressor models that are suitable for continuous duty:

    • QGS, QGD, QSI, QGDV, QGV, QR-25

     

    At NCA Ltd., we work with each client to understand their air/energy requirements and craft a system that will ensure appropriate duty cycling and efficiency to maximise productivity and minimize down time/maintenance/issues.

    When considering compressors for noise, space, portability, and location constraints, there are many factors to consider to ensure you are selecting an appropriate compressed air system for your facility/shop.

    Noise Reduction: Ensure the compressor is placed in a designated area to minimize noise levels, especially in confined spaces. At NCA Ltd., we work with clients to build a compressor system that works for their facility and this often includes acoustical enclosures and noise management.

    Space Requirements: Adequate space around the compressor is essential for proper ventilation and maintenance. Ensure there is enough room for the compressor to operate safely and for access during maintenance. Where a compressor system is located has immense implications for efficiency and maintenance.

    Portability: Choose compressors that are lightweight and easy to transport, especially if you need to move them between different locations. Portability impacts which compressor will work for you and as such it is important to consider how often it will be moved and what power sources are available in the places the compressor is operating.

    Location Considerations: Optimal placement is crucial for efficiency. Consider factors like accessibility for maintenance, proximity to air-using processes, and environmental conditions. Location is often an overlooked aspect of a compressor system but it is crucial to ensure proper placement to maximise your investment and energy consumption.

    When deciding upon location for your compressed air system, NCA takes into account factors such as: air compressor ventilation requirements, potential noise disturbance, physical risks, overheating risks, condensation drainage, surrounding hazards (e.g., dust, flammable substances), aggressive substances in the air, space requirements for future expansion, and accessibility for maintenance.

    The compressor room is where the largest part of the compressed air system is located. It can be a dedicated room designed specifically for the compressor or a multi-purpose area. In both cases, certain conditions must be met to get the most out of your compressor installation.

    Centralization: It is often advisable to arrange a separate compressor central plant. This centralized approach offers numerous benefits across various industries. Not only does it enhance the operating economy, but it also leads to a better-designed compressed air system. Centralization improves service and user-friendliness, safeguards against unauthorized access, ensures proper noise control, and simplifies controlled ventilation.

    Noise, space, portability, and location constraints are all important factors to consider when choosing and building your compressed air system. At NCA Ltd., we work with our clients to ensure all of these considerations factor into the system we suggest ensuring maximum ROI, efficiency and performance of your compressed air system.

    If you want more information about noise, space, portability and location constraints for your specific application, feel free to reach out to info@ncaltd.ca today!

    Beyond the initial price of a compressed air system, the running costs (electricity, preventative maintenance, repairs, filters, oil) can add up quickly; especially with an incorrectly sized/inefficient system. Things such as compressor model (fixed vs variable speed), configuration, air receivers, air lines, filters, drains etc. can all have an impact on your systems efficiency/output. Making the wrong decision at the outset can end up costing you thousands of dollars in energy and maintenance costs, which is why it is essential to make the right decision from the start.

     

    Energy efficiency is a crucial consideration to ensure maximum ROI. At NCA Ltd., we work with each client to maximise energy efficiency which includes finding any rebates or government incentives that may apply to your facility/shop. We believe that energy efficiency in compressed air systems is crucial for many reasons. That’s why we’ve worked with companies just like yours to save over 1.5 million dollars in energy costs to date.

     

    Cost Savings: Energy-efficient systems can significantly reduce utility bills and operating costs, leading to long-term financial benefits. To achieve energy efficiency, things like the location of your compressed air system and its configuration/layout are important factors to consider. Factors to consider as it relates to energy efficiency:

    • Compressor system location (including air receivers, air lines, filters etc.)
    • Voltage
    • Duty cycle – continuous versus intermittent (Fixed vs variable speed units)

     

    Environmental Impact: By reducing energy consumption, your business can lower its carbon emissions, aligning with your sustainability goals and government regulations. Less energy usage also means lower energy bills/operating costs!

     

    Increased Reliability: Efficient systems are less prone to breakdowns and require fewer emergency interventions, ensuring continuous operation. Less breakdowns means less maintenance costs and less downtime!

     

    Improved Return on Investment (ROI): Investments in energy-saving compressors and system upgrades often pay for themselves through reduced energy use over time. Implementing energy-efficient practices in your compressed air system not only benefits the environment and your bottom line but also enhances the overall performance and reliability of your system, potentially saving you thousands a year.

     

    We recognize that energy efficiency, maintenance requirements, and total lifetime costs are of the utmost importance to anyone considering a new compressed air system. Energy usage and maintenance account for the majority of your compressed air system’s costs and ensuring you choose the right system for your application and budget is crucial as the wrong decision could cost you thousands. If you want more information about energy efficiency, maintenance and lifetime costs for your specific application, feel free to reach out to info@ncaltd.ca today!

     

    In the compressor industry, a good brand with local support and proven performance reduces risk of downtime and repair headaches. At NCA Ltd., we recognize the importance a compressor system to your operations and as such we only sell and maintain the best brands in the industry.

     

    At NCA Ltd., we proudly carry Quincy compressors. Quincy compressors are chosen for their reliability, efficiency, and durability. They are known for their robust construction, quiet operation, and energy efficiency, which significantly reduce operational expenses. Quincy compressors are designed to meet the demands of various industries, including automotive, manufacturing, and construction, and are backed by decades of experience and a commitment to quality.

     

    NCA Ltd. offers a variety of compressor models to suit different needs and applications, from portable options to heavy-duty units. Our commitment to quality ensures that each compressor delivers consistent performance and meets rigorous standards. Investing in a Quincy Air Compressor from NCA Ltd. means choosing reliability and efficiency, enhancing productivity in any work environment.

     

    At NCA Ltd., we back our most reliable air compressor systems with the industry’s best extended warranties. We recognize that a warranty program is an important factor when considering a new compressed air system and we strive to be industry leaders in that category.

     

    NCA Ltd. also offers 24-hour on-site Emergency Service to limit potential downtime to a minimum. We know how important your compressed air system is to your business and we are always ready to help, around the clock. 24-hour emergency service offers you piece of mind that if an issue arises, NCA will be there to help get you back up and running quickly.

     

    NCA Ltd. offers a variety of Preventive Maintenance Programs to keep your compressed air equipment running efficiently and reduce the chances of an unscheduled shutdown. Our PM Programs can be tailored to work with your existing programs, or we can take on the full responsibility of maintaining your compressed air system. Preventative maintenance is a key component of your overall compressed air system management and we are here to facilitate those needs to ensure your system is always performing at its best.

     

    Benefits of a Preventive Maintenance Program include:

    • Maintaining the overall Efficiency and Performance of the Compressed Air system
    • Improving the Systems overall Reliability
    • Reducing the chances of Downtime
    • Extending the life of the Equipment
    • Reducing the need to replace Equipment or Parts Prematurely
    • Keeping the Maintenance Costs of the Equipment to a minimum

     

    If you want more information about the brands NCA carries, the associated warranties and preventative maintenance programs, feel free to reach out to info@ncaltd.ca today!

    Choosing the right size air compressor for your application is an extremely important decision. An undersized compressor may struggle to keep up with demand, leading to pressure drops, production delays, and potential equipment damage. An oversized unit, while it may get the job done, may be inefficient – wasting energy and money. Many buyers later wish they had bought a bit larger so they wouldn’t outgrow it quickly. Before deciding what size unit to purchase, you should consider the following:

     

    • What tools will this unit be powering?
    • What air consumption will these tools require?
    • How many tools will be running?
    • What duty cycle is required?
    • What are the CFM and PSI requirements?

     

    Planning for future expansion/growth is also important. If you expect your business to expand or your air needs to increase for any reason, choosing a compressor with more capacity than your current calculations suggest may be ideal to ensure your system will be able to handle higher air requirements.

     

    Sizing for current needs only:

     

    Pros:

    • Lower initial cost for your compressed air system
    • Potentially smaller footprint and lower energy use/consumption

    Cons:

    • No room for expansion/growth, if you add equipment or increase production, the compressor system may not be equipped to handle the increased air requirements
    • Can lead to frequent cycling, overheating, or wear if pushed beyond its limits; all of which could lead to potential issues for your compressed air system

     

    Sizing for future expansion/heavier use:

     

    Pros:

    • Handles new equipment, higher production, or peak demands without stress
    • Longer lifespan and better reliability (less wear from constant full-load operation)
    • Often improves energy efficiency at partial load if you use multiple compressors staged properly

    Cons:

    • Higher initial investment
    • Slightly higher energy use if the system is oversized without proper staging or controls

     

    If you have questions about sizing your compressed air system appropriately, our experienced team is here to help you with that decision. Call us today to get your questions answered in full detail and feel confident in your decision. Experts at NCA Ltd. can walk you through all of your options to ensure you are choosing a compressed air system that is going to meet your needs now and in the future. Get in touch with us today! info@ncaltd.ca

    When building an effective compressed air system, there are a number of components that you will want to consider to ensure your system is operating at peak performance and efficiency. Depending on your compressor model and specific configuration, there are different factors to consider to guarantee you are producing clean, efficient air for your pneumatic application(s). The following accessories and components are essential and can significantly impact the overall performance and efficiency of your compressed air system:

    Dryers: Air dryers remove moisture from compressed air, which is important for pneumatic tools like powder coating and sandblasting. They help maintain the quality of the air and prevent equipment degradation. The most common types are refrigerated and desiccant.

    Air Receivers: Air receivers (AKA storage tanks) are an essential component in your compressed air systems because they store air produced by your compressor and ensure a steady air supply during sudden demand and preventing continuous compressor operation. Air receivers help to stabilize your system pressure, maintaining consistent airflow for your tools and equipment, while reducing compressor start-stop cycles, which improves efficiency and reduces wear on your machine(s).

    Filters: Filters remove contaminants from the air, ensuring the air output is clean and pure. They are critical for maintaining the efficiency of the compressor and prolonging the life of the system. There are many types of filters and the right filter is extremely important for the quality of your air and the longevity of your equipment.

    Oil/Water Separators (OWS): An oil-water separator is a device designed to remove oil and other contaminants from water, preventing pollution and ensuring compliance with environmental regulations. There are many different types of oil water separators, including coalescing plate separators, hydrocyclone separators, and API separators, each with its unique way of facilitating the separation process.

    Air Hoses: Essential for carrying compressed air from the compressor to the tools or equipment. They come in various types, including nylon, rubber, PVC, and polyurethane, each with its own benefits and limitations. The right hose choice ensures consistent pressure and prevents leaks, which is crucial for the system's safety and efficiency.

    Regulators: These devices adjust the air pressure from the compressor to match the requirements of the tools or equipment. Proper regulation prevents energy wastage and reduces pressure on hoses and fittings, extending their lifespan significantly.

    Piping: The distribution system of the air compressor is crucial for delivering clean, high-quality air to your tools. The choice of piping material, such as aluminum or black iron, affects the flow rate and resistance to corrosion.

    Controls and Automation: These components help optimize and visualize the performance of the air compressor system, reducing waste and energy consumption. They are essential for managing the system effectively.

    By selecting the right accessories and components, you can ensure that your compressed air system operates efficiently and effectively, meeting the demands of your pneumatic tools and equipment now and in the future.

    For more information on compressor components and how they can impact your compressed air system, get in touch with NCA Ltd., today to get all of your questions answered and make your decision with confidence! Email: info@ncaltd.ca

    Client Feedback