/**
 * PS Advanced GDPR Cookies Law
 *
 * Cookie consent banner based on Klaro (self-hosted), automatic script blocking,
 * Google Consent Mode v2 and consent log.
 * 
 * Copyright 2017 PS The Web Solution
 * @author    PS The Web Solution
 * @copyright psitsolution.com - PS The Web Solution all rights reserved.
 * @license   PS Unique License - according Terms and Conditions (on our website)
 *
 * Compatible with PrestaShop 1.6.x, 1.7.x, 8.x, 9.x and thirty bees (PHP 5.4+).
 * Klaro (c) KIProtect GmbH, BSD-3-Clause license (see vendor/klaro/LICENSE).
 * PS Advanced GDPR Cookies Law - Accept and Reject buttons with equal prominence. 
   Colors are generated by the module (see back office) and forced inline with !important. 
 */
.klaro .cookie-notice .cm-btn,
.klaro .cookie-modal .cm-btn,
.klaro .context-notice .cm-btn {
    border-radius: 4px !important;
    padding: 9px 18px !important;
    font-size: 1em !important;
    font-weight: 600 !important;
    cursor: pointer;
}
.klaro .cookie-notice .cm-btn.cn-decline:hover,
.klaro .cookie-notice .cm-btn.cm-btn-success:hover,
.klaro .cookie-modal .cm-btn:hover {
    opacity: .88;
}
.klaro .cookie-notice .cm-btn:focus-visible,
.klaro .cookie-modal .cm-btn:focus-visible {
    outline: 3px solid #f5a623 !important;
    outline-offset: 2px;
}
.klaro .cookie-notice,
.klaro .cookie-modal { z-index: 2147483000; }
.psagc-float {
    position: fixed;
    left: 12px;
    bottom: 12px;
    z-index: 999;
    background: #fafafa;
    color: #444;
    border: 0;
    border-radius: 20px;
    padding: 8px 14px;
    font-size: 13px;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0,0,0,.3);
}

/* ------------------------------------------------------------------
   Layout hardening of the preferences window.
   Themes with aggressive global CSS (e.g. thirty bees / PS 1.6 default theme) can move
   or resize the switches so that they overlap the titles. Klaro's intended layout is
   enforced here: list item = positioned box with 60px left padding, switch = absolute
   box at its left edge (50x30), label = static block.
   ------------------------------------------------------------------ */
.klaro .cookie-modal .cm-modal .cm-body ul.cm-purposes li.cm-purpose,
.klaro .cookie-modal .cm-modal .cm-body ul.cm-services li.cm-service {
    position: relative !important;
    padding-left: 60px !important;
    min-height: 40px !important;
    margin-left: 0 !important;
    list-style: none !important;
    box-sizing: border-box !important;
}
.klaro .cookie-modal .cm-list-label {
    position: static !important;
    display: block !important;
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.klaro .cookie-modal .cm-list-label .cm-switch {
    position: absolute !important;
    display: block !important;
    float: none !important;
    left: 0 !important;
    top: auto !important;
    width: 50px !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
}
.klaro .cookie-modal .cm-list-label .cm-switch .slider {
    position: absolute !important;
    display: block !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 50px !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
}
.klaro .cookie-modal .cm-list-label .cm-switch .slider::before {
    position: absolute !important;
    content: '' !important;
    top: auto !important;
    left: 5px !important;
    bottom: 5px !important;
    width: 20px !important;
    height: 20px !important;
    box-sizing: border-box !important;
}
.klaro .cookie-modal .cm-list-input {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 50px !important;
    height: 30px !important;
    margin: 0 !important;
    opacity: 0 !important;
}
