:where(.evoque-cookie-consent, .evoque-cookie-manage) {
    --evoque-consent-bg: #fff;
    --evoque-consent-text: #172126;
    --evoque-consent-border: color-mix(in srgb, var(--evoque-consent-text) 18%, transparent);
    --evoque-consent-accent: #145b62;
    --evoque-consent-accent-text: #fff;
    --evoque-consent-secondary: #eef3f2;
    --evoque-consent-secondary-text: #172126;
}
.evoque-cookie-consent {
    position: fixed;
    z-index: 99990;
    inset: auto 1rem 1rem;
    color: var(--evoque-consent-text);
    font: 400 1rem/1.5 system-ui, sans-serif;
}
.evoque-cookie-consent[hidden],
.evoque-cookie-manage[hidden] { display: none !important; }
.evoque-cookie-consent__panel {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem 1.5rem;
    width: min(100%, 72rem);
    margin-inline: auto;
    padding: 1.15rem;
    border: 1px solid var(--evoque-consent-border);
    border-radius: .8rem;
    background: var(--evoque-consent-bg);
    box-shadow: 0 .8rem 3rem rgb(0 0 0 / .18);
}
.evoque-cookie-consent h2 { margin: 0 0 .25rem; color: inherit; font: 700 1.1rem/1.3 system-ui, sans-serif; }
.evoque-cookie-consent p { max-width: 58rem; margin: 0; color: inherit; font-size: .9rem; }
.evoque-cookie-consent a { color: inherit; text-decoration: underline; text-underline-offset: .15em; }
.evoque-cookie-consent__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .55rem; }
.evoque-cookie-consent button,
.evoque-cookie-manage {
    min-height: 2.75rem;
    padding: .65rem .9rem;
    border: 1px solid var(--evoque-consent-border);
    border-radius: .5rem;
    color: var(--evoque-consent-secondary-text);
    background: var(--evoque-consent-secondary);
    font: 650 .9rem/1 system-ui, sans-serif;
    cursor: pointer;
}
.evoque-cookie-consent [data-evoque-consent-accept],
.evoque-cookie-consent [data-evoque-consent-save] { border-color: var(--evoque-consent-accent); color: var(--evoque-consent-accent-text); background: var(--evoque-consent-accent); }
.evoque-cookie-consent button:focus-visible,
.evoque-cookie-manage:focus-visible { outline: 3px solid color-mix(in srgb, var(--evoque-consent-accent) 45%, transparent); outline-offset: 2px; }
.evoque-cookie-consent__details { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); gap: .65rem; }
.evoque-cookie-consent__details[hidden] { display: none; }
.evoque-cookie-consent__details label { display: flex; gap: .6rem; padding: .75rem; border: 1px solid var(--evoque-consent-border); border-radius: .55rem; cursor: pointer; }
.evoque-cookie-consent__details input { width: 1.15rem; height: 1.15rem; margin-top: .15rem; accent-color: var(--evoque-consent-accent); }
.evoque-cookie-consent__details span { display: grid; gap: .15rem; }
.evoque-cookie-consent__details small { font-size: .78rem; }
.evoque-cookie-manage { position: fixed; z-index: 99980; inset: auto auto .75rem .75rem; box-shadow: 0 .25rem 1rem rgb(0 0 0 / .15); }
.evoque-cookie-noscript { padding: .75rem; color: #172126; background: #fff; font: 400 .9rem/1.5 system-ui, sans-serif; }
@media (max-width: 760px) {
    .evoque-cookie-consent__panel { grid-template-columns: 1fr; }
    .evoque-cookie-consent__actions { justify-content: stretch; }
    .evoque-cookie-consent__actions button { flex: 1 1 9rem; }
}
@media (forced-colors: active) {
    .evoque-cookie-consent__panel, .evoque-cookie-consent button { border: 1px solid CanvasText; }
}
