diff --git a/src/Resources/public/scripts/cookiebar.js b/src/Resources/public/scripts/cookiebar.js index 0c2ee5b..753ef48 100644 --- a/src/Resources/public/scripts/cookiebar.js +++ b/src/Resources/public/scripts/cookiebar.js @@ -675,6 +675,7 @@ let ContaoCookiebar = (function () { if (state) { document.addEventListener('keydown', focusTrap); cookiebar.dom.querySelector('.cc-inner').onanimationend = () => { + cookiebar.focused = false cookiebar.firstFocus?.classList.add('cc-hide-focus') cookiebar.firstFocus?.focus() } diff --git a/src/Resources/public/scripts/cookiebar.min.js b/src/Resources/public/scripts/cookiebar.min.js index 5f6dc27..56e1b2d 100644 --- a/src/Resources/public/scripts/cookiebar.min.js +++ b/src/Resources/public/scripts/cookiebar.min.js @@ -1 +1 @@ -let ContaoCookiebar=function(){"use strict";return function(e){let c={},r={},t={selector:".contao-cookiebar",token:"ccb_contao_token",configId:null,pageId:null,hideOnInit:!1,blocking:!1,focusTrap:!0,version:null,lifetime:63072e3,consentLog:!1,cookies:null,configs:null,doNotTrack:!1,currentPageId:0,excludedPageIds:null,texts:{acceptAndDisplay:"Accept"},classes:{onSave:"cc-saved",onShow:"cc-active",onGroupToggle:"cc-active",onGroupSplitSelection:"cc-group-half"}};function i(e){var t=N();t.cookies.includes(e)||(t.cookies.push(parseInt(e)),O(t),r.settings.cookies["_"+e].confirmed=!0,p())}function n(e,t){let o=[];for(var n in r.settings.cookies){var s,c=parseInt(n.replace("_",""));r.settings.cookies.hasOwnProperty(n)&&(s=!!r.settings.cookies[n].confirmed!==(c=e.includes(c))&&!c,r.settings.cookies[n].confirmed=c,!0===t)&&s&&null!==(c=r.settings.cookies[n].token)&&c.forEach(function(e){o.push(e)})}var i;!0===t&&o.length&&((i=new XMLHttpRequest).open("POST","/cookiebar/delete",!0),i.send(I({tokens:o})))}function s(){let e;for(e in r.settings.configs)if(r.settings.configs.hasOwnProperty(e)){let o=r.settings.configs[e],n=k(o.cookies);null!==o.resources&&o.resources.forEach(function(e,t){!(1===e.mode&&n||2===e.mode&&!n||3===e.mode)||v(b(o,t),"config_resource")||m(e)}),null!==o.scripts&&o.scripts.forEach(function(e,t){1===e.mode!==n&&2===e.mode!=!n&&3!==e.mode||v(b(o,t),"config_script")||h(e)})}}function a(){let e;for(e in r.settings.cookies)if(r.settings.cookies.hasOwnProperty(e)){let o=r.settings.cookies[e];null!==o.resources&&o.resources.forEach(function(e,t){!(1===e.mode&&o.confirmed||2===e.mode&&!o.confirmed||3===e.mode)||v(b(o,t),"resource")||m(e)}),null!==o.scripts&&o.scripts.forEach(function(e,t){1===e.mode!==o.confirmed&&2===e.mode!=!o.confirmed&&3!==e.mode||v(b(o,t),"script")||h(e)})}}function l(e){var t=document.querySelectorAll('.cc-module[data-ccb-id="'+e+'"]');t&&t.forEach(function(e){e.parentNode.removeChild(e)}),r.modules["_"+e].forEach(function(e){e()}),delete r.modules["_"+e],u()}function d(e){(e=document.querySelectorAll('iframe[data-ccb-id="'+e+'"]')).length&&e.forEach(function(e){e.src=e.src,e.removeAttribute("data-ccb-id")}),u()}function u(e){var t=N();let o=[];if(r.show||!0===e){if(t.cookies&&t.cookies.length)o=t.cookies;else if(-1===t.version)for(var n in r.settings.cookies){var s=parseInt(n.replace("_",""));r.settings.cookies[n].checked&&o.push(s)}o.length&&o.forEach(function(e,t){e=r.dom.querySelector('[id="c'+e+'"]');e&&(e.checked=!0)});e=r.dom.querySelectorAll('input[name="group[]"]');e&&e.forEach(function(e){if(!e.disabled){e.checked=!1,e.classList.remove(r.settings.classes.onGroupSplitSelection);var o=e.parentElement.querySelectorAll('input[name="cookie[]"]');let t=[];o&&(o.forEach(function(e){e.disabled||t.push(!!e.checked)}),-1===t.indexOf(!1)?e.checked=!0:-1!==t.indexOf(!0)&&-1!==t.indexOf(!1)&&e.classList.add(r.settings.classes.onGroupSplitSelection))}})}}function f(t){r.settings.blocking&&r.dom?.parentElement.querySelectorAll(":scope >:not(script):not(.contao-cookiebar)")?.forEach(e=>{t?e.setAttribute("inert",""):e.removeAttribute("inert")}),r.settings.focusTrap&&(t?(document.addEventListener("keydown",E),r.dom.querySelector(".cc-inner").onanimationend=()=>{r.firstFocus?.classList.add("cc-hide-focus"),r.firstFocus?.focus()}):document.removeEventListener("keydown",E))}function o(){r.show?(r.dom.classList.remove(r.settings.classes.onSave),r.dom.classList.add(r.settings.classes.onShow),f(!0)):(r.dom.classList.remove(r.settings.classes.onShow),f(!1))}function p(){var e,t;r.settings.consentLog&&(e=new XMLHttpRequest,t={referrer:window.location.pathname,configId:r.settings.configId,pageId:r.settings.pageId,cookies:N().cookies},e.open("GET","/cookiebar/log?"+I(t),!0),e.send())}const g=function(e){let t=[];e=e.currentTarget;let o=0;e.hasAttribute("data-accept-all")?o=1:e.hasAttribute("data-deny-all")&&(o=2),f(!1),r.inputs.forEach(function(e){2===o?e.checked=!1:1!==o&&!e.checked||(t.push(parseInt(e.value)),e.checked=!0)}),O({configId:r.settings.configId,pageId:r.settings.pageId,version:r.settings.version,saved:T(),cookies:t}),n(t,!0),s(),a(),p(),t.length&&t.forEach(function(e){r.settings.cookies.hasOwnProperty("_"+e)&&"iframe"===r.settings.cookies["_"+e].type&&d(e),r.modules.hasOwnProperty("_"+e)&&l(e)}),r.dom.classList.add(r.settings.classes.onSave);e=new CustomEvent("cookiebar_save",{detail:{cookiebar:r}});window.dispatchEvent(e),u(!0)},h=function(e){e.script=function(e){let t=document.createElement("script");return t.type="text/javascript",t.innerHTML=e,t}(e.script);var t=e.script;switch(e.position){case 1:document.body.append(t);break;case 2:document.body.prepend(t);break;case 3:document.head.append(t)}},m=function(e){try{var t=document.querySelectorAll("script[src]"),o=function(e){let t=e.match(/^https?\:\/\/([^\/?#]+)(?:[\/?#]|$)/i);return t&&t[1]}(e.src);for(let e=t.length;e--;)if(-1!==t[e].src.indexOf(o)&&o!==window.location.host)return!1}catch(e){}let n=document.createElement("script");n.type="text/javascript",n.src=e.src,n.onload=()=>{r.loadedResources.push(e.src),r.resourcesEvents.length&&r.resourcesEvents.forEach(function(e,t){if(-1===r.loadedResources.indexOf(e.src))return!1;e.callback(),delete r.resourcesEvents[t]})},null!==e.flags&&e.flags.length&&e.flags.forEach(function(e){"object"==typeof e?n.setAttribute(e[0],e[1]):n[e]=!0}),document.head.append(n)},k=function(e){let t=!1,o;for(o in e)if(r.settings.cookies.hasOwnProperty(o))if(r.settings.cookies[o].confirmed){t=!0;break}return t},v=function(e,t){return r.cache[t]||(r.cache[t]=[]),-1!==r.cache[t].indexOf(e)||(r.cache[t].push(e),!1)},b=function(e,t){return e.id+""+t},y=function(t){t.addEventListener("click",function(e){e.preventDefault(),c.show(t.classList.contains("ccb-prefill"))})},E=function(e){"Tab"!==e.key&&9!==e.keyCode||(r.focused||(r.focused=!0,r.firstFocus?.classList.remove("cc-hide-focus")),document.activeElement!==r.lastFocus||e.shiftKey||(e.preventDefault(),r.firstFocus?.focus()),document.activeElement===r.firstFocus&&e.shiftKey&&(e.preventDefault(),r.lastFocus?.focus()),document.activeElement!==r.toggleOpener)||function(e){for(;e;){if("none"===window.getComputedStyle(e).display)return!1;e=e.parentElement}return!0}(r.lastFocus)||"false"!==r.toggleOpener.ariaExpanded||e.shiftKey||(e.preventDefault(),r.firstFocus?.focus())},w=function(){let o=this.checked;var e=this.parentElement.querySelectorAll('input[name="cookie[]"]');e&&e.forEach(function(e,t){e.disabled||(e.checked=o)}),this.classList.remove(r.settings.classes.onGroupSplitSelection)},S=function(){let o=!this.classList.contains(r.settings.classes.onGroupToggle);this.setAttribute("aria-expanded",o?"true":"false");try{var e=this.parentElement.querySelectorAll(":scope > .toggle-group");e&&e.forEach(function(e,t){e.style.display=o?"block":"none"})}catch(e){this.parentElement.querySelector("[data-toggle-group] ~ .toggle-group").style.display=o?"block":"none"}this.classList.toggle(r.settings.classes.onGroupToggle)};function O(e){localStorage.setItem(A(),JSON.stringify(e))}const I=function(e,t){let o=[],n;for(n in e){var s,c;e.hasOwnProperty(n)&&(s=t?t+"["+n+"]":n,c=e[n],o.push(null!==c&&"object"==typeof c?I(c,s):encodeURIComponent(s)+"="+encodeURIComponent(c)))}return o.join("&")},L=function(){let e={},t=!1,o=0;var n=arguments.length;for("[object Boolean]"===Object.prototype.toString.call(arguments[0])&&(t=arguments[0],o++);o"+n.message+"

"),"object"==typeof n.button&&!0===n.button.show&&((o=document.createElement("button")).innerHTML=n.button.text||r.settings.texts.acceptAndDisplay,o.type=n.button.type||"button",n.button.classes&&(o.className=n.button.classes),o.addEventListener("click",function(){i(t),l(t)}),s.append(o)),e.appendChild(s))}},c.onResourceLoaded=function(e,t){var o;return r.settings.cookies.hasOwnProperty(e)?r.settings.cookies[e].resources.length?(o=r.settings.cookies[e].resources[0].src,void(-1!==r.loadedResources.indexOf(o)?t():r.resourcesEvents.push({src:o,callback:t}))):(console.warn(`The cookie ID ${e} does not contain any resources.`),!1):(console.warn(`Cookie ID ${e} does not exists.`),!1)},c.show=function(e){r.show=!0,o(),e&&u()},c.hide=function(){r.show=!1,o()},window.document.documentMode&&(window.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach),[Element.prototype,Document.prototype,DocumentFragment.prototype].forEach(function(e){e.hasOwnProperty("append")||Object.defineProperty(e,"append",{configurable:!0,enumerable:!0,writable:!0,value:function(){var e=Array.prototype.slice.call(arguments),o=document.createDocumentFragment();e.forEach(function(e){var t=e instanceof Node;o.appendChild(t?e:document.createTextNode(String(e)))}),this.appendChild(o)}})}),[Element.prototype,Document.prototype,DocumentFragment.prototype].forEach(function(e){e.hasOwnProperty("prepend")||Object.defineProperty(e,"prepend",{configurable:!0,enumerable:!0,writable:!0,value:function(){var e=Array.prototype.slice.call(arguments),o=document.createDocumentFragment();e.forEach(function(e){var t=e instanceof Node;o.appendChild(t?e:document.createTextNode(String(e)))}),this.insertBefore(o,this.firstChild)}})}),"function"!=typeof window.CustomEvent)&&(x.prototype=window.Event.prototype,window.CustomEvent=x),r.settings=L(!0,t,e),r.dom=document.querySelector(r.settings.selector),r.cache={},r.modules={},r.loadedResources=[],r.resourcesEvents=[],r.show=!1;var e=N(),C=(r.settings.hideOnInit||parseInt(e.version)===parseInt(r.settings.version)&&parseInt(e.configId)===parseInt(r.settings.configId)&&!function(e){let t=parseInt(e),o=parseInt(r.settings.lifetime);if(isNaN(t)||t===-1||o===0)return false;return t+o{for(const t of e)"childList"===t.type&&0{!r.show||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains(".contao-cookiebar")||e.hasAttribute("inert")||e.setAttribute("inert","")})}).observe(r.dom,{childList:!0,subtree:!1}),Object.entries(r.settings.cookies??{}).sort(([,e],[,t])=>t.priority-e.priority)),_=(r.settings.cookies=Array.from(P).reduce((e,[t,o])=>Object.assign(e,{["_"+t]:o}),{}),n(e.cookies),o(),s(),a(),u(),new CustomEvent("cookiebar_init",{detail:{visibility:r.show,cookiebar:r}}));return window.dispatchEvent(_),c}}(); \ No newline at end of file +let ContaoCookiebar=function(){"use strict";return function(e){let c={},r={},t={selector:".contao-cookiebar",token:"ccb_contao_token",configId:null,pageId:null,hideOnInit:!1,blocking:!1,focusTrap:!0,version:null,lifetime:63072e3,consentLog:!1,cookies:null,configs:null,doNotTrack:!1,currentPageId:0,excludedPageIds:null,texts:{acceptAndDisplay:"Accept"},classes:{onSave:"cc-saved",onShow:"cc-active",onGroupToggle:"cc-active",onGroupSplitSelection:"cc-group-half"}};function i(e){var t=N();t.cookies.includes(e)||(t.cookies.push(parseInt(e)),O(t),r.settings.cookies["_"+e].confirmed=!0,p())}function n(e,t){let o=[];for(var n in r.settings.cookies){var s,c=parseInt(n.replace("_",""));r.settings.cookies.hasOwnProperty(n)&&(s=!!r.settings.cookies[n].confirmed!==(c=e.includes(c))&&!c,r.settings.cookies[n].confirmed=c,!0===t)&&s&&null!==(c=r.settings.cookies[n].token)&&c.forEach(function(e){o.push(e)})}var i;!0===t&&o.length&&((i=new XMLHttpRequest).open("POST","/cookiebar/delete",!0),i.send(I({tokens:o})))}function s(){let e;for(e in r.settings.configs)if(r.settings.configs.hasOwnProperty(e)){let o=r.settings.configs[e],n=k(o.cookies);null!==o.resources&&o.resources.forEach(function(e,t){!(1===e.mode&&n||2===e.mode&&!n||3===e.mode)||v(b(o,t),"config_resource")||m(e)}),null!==o.scripts&&o.scripts.forEach(function(e,t){1===e.mode!==n&&2===e.mode!=!n&&3!==e.mode||v(b(o,t),"config_script")||h(e)})}}function a(){let e;for(e in r.settings.cookies)if(r.settings.cookies.hasOwnProperty(e)){let o=r.settings.cookies[e];null!==o.resources&&o.resources.forEach(function(e,t){!(1===e.mode&&o.confirmed||2===e.mode&&!o.confirmed||3===e.mode)||v(b(o,t),"resource")||m(e)}),null!==o.scripts&&o.scripts.forEach(function(e,t){1===e.mode!==o.confirmed&&2===e.mode!=!o.confirmed&&3!==e.mode||v(b(o,t),"script")||h(e)})}}function l(e){var t=document.querySelectorAll('.cc-module[data-ccb-id="'+e+'"]');t&&t.forEach(function(e){e.parentNode.removeChild(e)}),r.modules["_"+e].forEach(function(e){e()}),delete r.modules["_"+e],u()}function d(e){(e=document.querySelectorAll('iframe[data-ccb-id="'+e+'"]')).length&&e.forEach(function(e){e.src=e.src,e.removeAttribute("data-ccb-id")}),u()}function u(e){var t=N();let o=[];if(r.show||!0===e){if(t.cookies&&t.cookies.length)o=t.cookies;else if(-1===t.version)for(var n in r.settings.cookies){var s=parseInt(n.replace("_",""));r.settings.cookies[n].checked&&o.push(s)}o.length&&o.forEach(function(e,t){e=r.dom.querySelector('[id="c'+e+'"]');e&&(e.checked=!0)});e=r.dom.querySelectorAll('input[name="group[]"]');e&&e.forEach(function(e){if(!e.disabled){e.checked=!1,e.classList.remove(r.settings.classes.onGroupSplitSelection);var o=e.parentElement.querySelectorAll('input[name="cookie[]"]');let t=[];o&&(o.forEach(function(e){e.disabled||t.push(!!e.checked)}),-1===t.indexOf(!1)?e.checked=!0:-1!==t.indexOf(!0)&&-1!==t.indexOf(!1)&&e.classList.add(r.settings.classes.onGroupSplitSelection))}})}}function f(t){r.settings.blocking&&r.dom?.parentElement.querySelectorAll(":scope >:not(script):not(.contao-cookiebar)")?.forEach(e=>{t?e.setAttribute("inert",""):e.removeAttribute("inert")}),r.settings.focusTrap&&(t?(document.addEventListener("keydown",E),r.dom.querySelector(".cc-inner").onanimationend=()=>{r.focused=!1,r.firstFocus?.classList.add("cc-hide-focus"),r.firstFocus?.focus()}):document.removeEventListener("keydown",E))}function o(){r.show?(r.dom.classList.remove(r.settings.classes.onSave),r.dom.classList.add(r.settings.classes.onShow),f(!0)):(r.dom.classList.remove(r.settings.classes.onShow),f(!1))}function p(){var e,t;r.settings.consentLog&&(e=new XMLHttpRequest,t={referrer:window.location.pathname,configId:r.settings.configId,pageId:r.settings.pageId,cookies:N().cookies},e.open("GET","/cookiebar/log?"+I(t),!0),e.send())}const g=function(e){let t=[];e=e.currentTarget;let o=0;e.hasAttribute("data-accept-all")?o=1:e.hasAttribute("data-deny-all")&&(o=2),f(!1),r.inputs.forEach(function(e){2===o?e.checked=!1:1!==o&&!e.checked||(t.push(parseInt(e.value)),e.checked=!0)}),O({configId:r.settings.configId,pageId:r.settings.pageId,version:r.settings.version,saved:T(),cookies:t}),n(t,!0),s(),a(),p(),t.length&&t.forEach(function(e){r.settings.cookies.hasOwnProperty("_"+e)&&"iframe"===r.settings.cookies["_"+e].type&&d(e),r.modules.hasOwnProperty("_"+e)&&l(e)}),r.dom.classList.add(r.settings.classes.onSave);e=new CustomEvent("cookiebar_save",{detail:{cookiebar:r}});window.dispatchEvent(e),u(!0)},h=function(e){e.script=function(e){let t=document.createElement("script");return t.type="text/javascript",t.innerHTML=e,t}(e.script);var t=e.script;switch(e.position){case 1:document.body.append(t);break;case 2:document.body.prepend(t);break;case 3:document.head.append(t)}},m=function(e){try{var t=document.querySelectorAll("script[src]"),o=function(e){let t=e.match(/^https?\:\/\/([^\/?#]+)(?:[\/?#]|$)/i);return t&&t[1]}(e.src);for(let e=t.length;e--;)if(-1!==t[e].src.indexOf(o)&&o!==window.location.host)return!1}catch(e){}let n=document.createElement("script");n.type="text/javascript",n.src=e.src,n.onload=()=>{r.loadedResources.push(e.src),r.resourcesEvents.length&&r.resourcesEvents.forEach(function(e,t){if(-1===r.loadedResources.indexOf(e.src))return!1;e.callback(),delete r.resourcesEvents[t]})},null!==e.flags&&e.flags.length&&e.flags.forEach(function(e){"object"==typeof e?n.setAttribute(e[0],e[1]):n[e]=!0}),document.head.append(n)},k=function(e){let t=!1,o;for(o in e)if(r.settings.cookies.hasOwnProperty(o))if(r.settings.cookies[o].confirmed){t=!0;break}return t},v=function(e,t){return r.cache[t]||(r.cache[t]=[]),-1!==r.cache[t].indexOf(e)||(r.cache[t].push(e),!1)},b=function(e,t){return e.id+""+t},y=function(t){t.addEventListener("click",function(e){e.preventDefault(),c.show(t.classList.contains("ccb-prefill"))})},E=function(e){"Tab"!==e.key&&9!==e.keyCode||(r.focused||(r.focused=!0,r.firstFocus?.classList.remove("cc-hide-focus")),document.activeElement!==r.lastFocus||e.shiftKey||(e.preventDefault(),r.firstFocus?.focus()),document.activeElement===r.firstFocus&&e.shiftKey&&(e.preventDefault(),r.lastFocus?.focus()),document.activeElement!==r.toggleOpener)||function(e){for(;e;){if("none"===window.getComputedStyle(e).display)return!1;e=e.parentElement}return!0}(r.lastFocus)||"false"!==r.toggleOpener.ariaExpanded||e.shiftKey||(e.preventDefault(),r.firstFocus?.focus())},w=function(){let o=this.checked;var e=this.parentElement.querySelectorAll('input[name="cookie[]"]');e&&e.forEach(function(e,t){e.disabled||(e.checked=o)}),this.classList.remove(r.settings.classes.onGroupSplitSelection)},S=function(){let o=!this.classList.contains(r.settings.classes.onGroupToggle);this.setAttribute("aria-expanded",o?"true":"false");try{var e=this.parentElement.querySelectorAll(":scope > .toggle-group");e&&e.forEach(function(e,t){e.style.display=o?"block":"none"})}catch(e){this.parentElement.querySelector("[data-toggle-group] ~ .toggle-group").style.display=o?"block":"none"}this.classList.toggle(r.settings.classes.onGroupToggle)};function O(e){localStorage.setItem(A(),JSON.stringify(e))}const I=function(e,t){let o=[],n;for(n in e){var s,c;e.hasOwnProperty(n)&&(s=t?t+"["+n+"]":n,c=e[n],o.push(null!==c&&"object"==typeof c?I(c,s):encodeURIComponent(s)+"="+encodeURIComponent(c)))}return o.join("&")},L=function(){let e={},t=!1,o=0;var n=arguments.length;for("[object Boolean]"===Object.prototype.toString.call(arguments[0])&&(t=arguments[0],o++);o"+n.message+"

"),"object"==typeof n.button&&!0===n.button.show&&((o=document.createElement("button")).innerHTML=n.button.text||r.settings.texts.acceptAndDisplay,o.type=n.button.type||"button",n.button.classes&&(o.className=n.button.classes),o.addEventListener("click",function(){i(t),l(t)}),s.append(o)),e.appendChild(s))}},c.onResourceLoaded=function(e,t){var o;return r.settings.cookies.hasOwnProperty(e)?r.settings.cookies[e].resources.length?(o=r.settings.cookies[e].resources[0].src,void(-1!==r.loadedResources.indexOf(o)?t():r.resourcesEvents.push({src:o,callback:t}))):(console.warn(`The cookie ID ${e} does not contain any resources.`),!1):(console.warn(`Cookie ID ${e} does not exists.`),!1)},c.show=function(e){r.show=!0,o(),e&&u()},c.hide=function(){r.show=!1,o()},window.document.documentMode&&(window.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach),[Element.prototype,Document.prototype,DocumentFragment.prototype].forEach(function(e){e.hasOwnProperty("append")||Object.defineProperty(e,"append",{configurable:!0,enumerable:!0,writable:!0,value:function(){var e=Array.prototype.slice.call(arguments),o=document.createDocumentFragment();e.forEach(function(e){var t=e instanceof Node;o.appendChild(t?e:document.createTextNode(String(e)))}),this.appendChild(o)}})}),[Element.prototype,Document.prototype,DocumentFragment.prototype].forEach(function(e){e.hasOwnProperty("prepend")||Object.defineProperty(e,"prepend",{configurable:!0,enumerable:!0,writable:!0,value:function(){var e=Array.prototype.slice.call(arguments),o=document.createDocumentFragment();e.forEach(function(e){var t=e instanceof Node;o.appendChild(t?e:document.createTextNode(String(e)))}),this.insertBefore(o,this.firstChild)}})}),"function"!=typeof window.CustomEvent)&&(x.prototype=window.Event.prototype,window.CustomEvent=x),r.settings=L(!0,t,e),r.dom=document.querySelector(r.settings.selector),r.cache={},r.modules={},r.loadedResources=[],r.resourcesEvents=[],r.show=!1;var e=N(),C=(r.settings.hideOnInit||parseInt(e.version)===parseInt(r.settings.version)&&parseInt(e.configId)===parseInt(r.settings.configId)&&!function(e){let t=parseInt(e),o=parseInt(r.settings.lifetime);if(isNaN(t)||t===-1||o===0)return false;return t+o{for(const t of e)"childList"===t.type&&0{!r.show||e.nodeType!==Node.ELEMENT_NODE||e.classList.contains(".contao-cookiebar")||e.hasAttribute("inert")||e.setAttribute("inert","")})}).observe(r.dom,{childList:!0,subtree:!1}),Object.entries(r.settings.cookies??{}).sort(([,e],[,t])=>t.priority-e.priority)),_=(r.settings.cookies=Array.from(P).reduce((e,[t,o])=>Object.assign(e,{["_"+t]:o}),{}),n(e.cookies),o(),s(),a(),u(),new CustomEvent("cookiebar_init",{detail:{visibility:r.show,cookiebar:r}}));return window.dispatchEvent(_),c}}(); \ No newline at end of file diff --git a/src/Resources/public/styles/_cookiebar.scss b/src/Resources/public/styles/_cookiebar.scss index 0967c90..7248325 100644 --- a/src/Resources/public/styles/_cookiebar.scss +++ b/src/Resources/public/styles/_cookiebar.scss @@ -143,7 +143,7 @@ } } - &:focus-visible { + &:focus-visible:not(.cc-hide-focus) { + label { diff --git a/src/Resources/public/styles/cookiebar_default.css b/src/Resources/public/styles/cookiebar_default.css index f6d5211..1661c89 100644 --- a/src/Resources/public/styles/cookiebar_default.css +++ b/src/Resources/public/styles/cookiebar_default.css @@ -1 +1 @@ -.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-group{display:flex;flex-wrap:wrap;justify-content:space-between;align-content:center}.cc-group>label{flex-grow:1;margin:5px 0 5px 10px}.cc-cookies{display:none;width:100%}.cc-detail-btn{padding:8px 10px;line-height:1.2rem}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px}.cc-detail-btn,.cc-detail-btn-details{display:inline-block;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn span:nth-child(2),.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn.cc-active span:nth-child(1),.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn.cc-active span:nth-child(2),.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn:hover,.cc-detail-btn-details:hover{background:rgba(0,0,0,0);color:var(--ccb-detail-clr-hvr, #717171)} \ No newline at end of file +.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible:not(.cc-hide-focus)+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-group{display:flex;flex-wrap:wrap;justify-content:space-between;align-content:center}.cc-group>label{flex-grow:1;margin:5px 0 5px 10px}.cc-cookies{display:none;width:100%}.cc-detail-btn{padding:8px 10px;line-height:1.2rem}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px}.cc-detail-btn,.cc-detail-btn-details{display:inline-block;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn span:nth-child(2),.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn.cc-active span:nth-child(1),.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn.cc-active span:nth-child(2),.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn:hover,.cc-detail-btn-details:hover{background:rgba(0,0,0,0);color:var(--ccb-detail-clr-hvr, #717171)} \ No newline at end of file diff --git a/src/Resources/public/styles/cookiebar_simple.css b/src/Resources/public/styles/cookiebar_simple.css index 4ad1cea..5420062 100644 --- a/src/Resources/public/styles/cookiebar_simple.css +++ b/src/Resources/public/styles/cookiebar_simple.css @@ -1 +1 @@ -.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-groups{display:none;padding-top:15px}.cc-group{text-align:left}.cc-group>label{margin:5px 130px 5px 10px}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn-details:hover{color:var(--ccb-detail-clr-hvr, #717171)} \ No newline at end of file +.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible:not(.cc-hide-focus)+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-groups{display:none;padding-top:15px}.cc-group{text-align:left}.cc-group>label{margin:5px 130px 5px 10px}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn-details:hover{color:var(--ccb-detail-clr-hvr, #717171)} \ No newline at end of file