/* WebCreator - cookie consent: banner and click-to-load placeholders. Colours come from the theme variables. */
.wc-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

.wc-consent {
    position: fixed; z-index: 10000; left: 0; right: 0; bottom: 0;
    max-height: 100vh; overflow-y: auto;
    background: var(--color-bg, #fff); color: var(--color-text, #1f2937);
    border-top: 1px solid var(--color-border, #e5e7eb);
    box-shadow: 0 -4px 16px rgba(0, 0, 0, .12);
    font-family: var(--font-family, inherit); font-size: var(--font-size-sm, .875rem); line-height: 1.5;
}
.wc-consent[hidden] { display: none; }
.wc-consent:focus { outline: none; }
.wc-consent:focus-visible { outline: 3px solid var(--wc-focus-ring, var(--color-primary, #27ae60)); outline-offset: -3px; }
.wc-consent-inner { max-width: var(--container-max, 1200px); margin: 0 auto; padding: 1rem; }
.wc-consent-title { margin: 0 0 .25rem; font-size: 1.05rem; font-family: var(--font-family-heading, inherit); color: inherit; }
.wc-consent-text { margin: 0 0 .75rem; }
.wc-consent-text a { color: var(--wc-primary-text, #1e8449); text-decoration: underline; }
.wc-consent-settings { margin: 0 0 .75rem; padding: 0; border: 0; }
.wc-consent-option { display: flex; gap: .6rem; align-items: flex-start; margin: 0 0 .5rem; cursor: pointer; }
.wc-consent-option input { margin-top: .25rem; flex: none; width: 1.1rem; height: 1.1rem; accent-color: var(--color-primary, #27ae60); }
.wc-consent-actions { display: flex; flex-wrap: wrap; gap: .5rem; }

.wc-btn, .wc-embed-load {
    appearance: none; cursor: pointer; font: inherit; font-weight: 600;
    padding: .6rem 1.1rem; min-height: 44px;
    border: 2px solid var(--color-primary, #27ae60); border-radius: var(--radius-md, .5rem);
    background: var(--color-primary, #27ae60); color: var(--wc-on-primary, #fff);
}
.wc-btn:hover, .wc-embed-load:hover { background: var(--color-primary-dark, #219150); border-color: var(--color-primary-dark, #219150); color: var(--wc-on-primary-hover, #fff); }
.wc-btn:focus-visible, .wc-embed-load:focus-visible, .wc-consent-open:focus-visible, .wc-embed-privacy:focus-visible { outline: 3px solid var(--color-text, #1f2937); outline-offset: 2px; }
.wc-btn-link { background: transparent; color: var(--wc-primary-text, #1e8449); }
.wc-btn-link:hover { background: var(--color-primary-50, rgba(39, 174, 96, .1)); color: var(--wc-primary-text-hover, #186a3a); }
.wc-btn[hidden] { display: none; }
@media (max-width: 480px) {
    .wc-consent-inner { padding: .85rem; }
    .wc-btn { flex: 1 1 100%; }
}

/* the link in the footer */
.cookie-settings { margin: 0; }
.wc-consent-open { appearance: none; background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; cursor: pointer; }
.wc-consent-open:hover { text-decoration: none; }

/* click-to-load placeholder: the box keeps the size of the iframe (no layout shift when it loads) */
.wc-embed { font-family: var(--font-family, inherit); position: relative; width: 100%; min-height: 220px; margin: 1rem 0; background: var(--color-bg-tertiary, #f3f4f6); border: 1px solid var(--color-border, #e5e7eb); border-radius: var(--radius-md, .5rem); overflow: hidden; color: var(--color-text, #1f2937); }
.wc-embed.is-loaded { background: none; border: 0; }
.wc-embed > iframe { display: block; width: 100%; height: 100%; border: 0; }
.wc-embed-box { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5rem; padding: 1rem; text-align: center; overflow: auto; }
.wc-embed-title { margin: 0; font-weight: 700; }
.wc-embed-text { margin: 0; max-width: 34rem; font-size: .875rem; }
.wc-embed-privacy { color: var(--wc-primary-text-hover, #186a3a); font-size: .875rem; text-decoration: underline; }
@media (max-width: 480px) {
    .wc-embed-text { display: none; }
    .wc-embed-load { padding: .5rem .8rem; }
}

/* room for the banner at the bottom of the page while it is visible (consent.js sets --wc-consent-h) */
.wc-consent-visible body { padding-bottom: var(--wc-consent-h, 0); }

/* the plain link for visitors without JavaScript */
.wc-embed-open { font-size: .875rem; color: var(--wc-primary-text-hover, #186a3a); text-decoration: underline; }
.wc-js .wc-embed-open { display: none; }

/* without JavaScript the button cannot do anything: only the plain link is shown */
html:not(.wc-js) .wc-embed-load { display: none; }

/* With scripting the button shows and the plain link hides at once, from the stylesheet (this used to be an inline script that added the
   class wc-js before the placeholders; the Content-Security-Policy allows no inline script). The browsers that do not know this media
   feature (before 2023) keep the two rules above and get the class wc-js from consent.js. The selector is as specific as the rule above,
   and later. */
@media (scripting: enabled) {
    .wc-embed-open { display: none; }
    html:not(.wc-js) .wc-embed-load { display: inline-block; }
}
