.cookie-bar {

    font-family: var(--eyect-font, inherit);
    font-size: var(--eyect-font-size, inherit);
    line-height: var(--eyect-line-height, inherit);
    position: fixed;
    z-index: 9990;
    background: var(--eyect-surface, #fff);
    color: var(--eyect-ink, #26333d);
    box-shadow: 0 -4px 24px color-mix(in srgb, var(--eyect-brand, #0C4668) 18%, transparent);
    animation: cookie-in .3s ease-out;
}
@keyframes cookie-in {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
}

.cookie-bar--bottom {
    left: 0;
    right: 0;
    bottom: 0;
    border-top: 3px solid var(--eyect-accent, #0C4668);
}
.cookie-bar--corner {
    right: 20px;
    bottom: 20px;
    width: min(400px, calc(100vw - 40px));
    border-radius: var(--eyect-radius, 14px);
    border: 1px solid var(--eyect-line, #e7ebf2);
    box-shadow: var(--eyect-shadow-lg, 0 12px 40px rgba(12, 17, 71, .22));
}

.cookie-inner {
    max-width: 1100px;
    margin: 0 auto;
    padding: 20px 22px;
}
.cookie-bar--bottom .cookie-inner {
    display: flex;
    align-items: center;
    gap: 26px;
    flex-wrap: wrap;
}
.cookie-bar--bottom .cookie-text { flex: 1 1 380px; min-width: 0; }

.cookie-title {
    margin: 0 0 5px;
    font-size: 16px;
    font-weight: 800;
    color: var(--eyect-brand, #0C4668);
}
.cookie-body {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: var(--eyect-ink-soft, #55606b);
}
.cookie-policy {
    color: var(--eyect-accent-strong, #0a3853);
    font-weight: 600;
    text-decoration: underline;
}

.cookie-choices {
    flex: 1 1 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--eyect-line, #eef1f6);
}
.cookie-choices[hidden] { display: none; }
.cookie-choice {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    cursor: pointer;
    font-size: 13.5px;
}
.cookie-choice.is-locked { cursor: default; opacity: .8; }
.cookie-choice input {
    width: 17px;
    height: 17px;
    margin: 2px 0 0;
    flex-shrink: 0;
    accent-color: var(--eyect-accent, #0C4668);
}
.cookie-choice-body { display: flex; flex-direction: column; gap: 2px; }
.cookie-choice-label { font-weight: 700; color: var(--eyect-brand, #0C4668); }
.cookie-choice-label em { font-weight: 400; font-style: normal; color: var(--eyect-muted, #8a97a3); }
.cookie-choice-desc { color: var(--eyect-muted, #7d8b96); line-height: 1.5; }

.cookie-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    flex-shrink: 0;
}
.cookie-bar--corner .cookie-actions { margin-top: 16px; }
.cookie-btn {
    border: none;
    border-radius: var(--eyect-radius-sm, 9px);
    padding: 12px 20px;
    font-family: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background .18s, box-shadow .18s, transform .18s;
}
.cookie-btn[hidden] { display: none; }
.cookie-btn--accept {
    background: linear-gradient(135deg, var(--eyect-gradient-from, #0a3853) 0%, var(--eyect-gradient-to, #2f7fbf) 100%);
    color: var(--eyect-button-cta-text, #fff);
    box-shadow: 0 4px 14px color-mix(in srgb, var(--eyect-accent-strong, #0a3853) 25%, transparent);
}
.cookie-btn--accept:hover { transform: translateY(-1px); box-shadow: var(--eyect-shadow-accent, 0 8px 20px color-mix(in srgb, var(--eyect-accent-strong, #0a3853) 30%, transparent)); }
.cookie-btn--save {
    background: var(--eyect-button-bg, #0C4668);
    color: var(--eyect-button-text, #fff);
}
.cookie-btn--save:hover { background: var(--eyect-button-hover, #0e527a); }
.cookie-btn--quiet {
    background: var(--eyect-surface-soft, #f1f4f8);
    color: var(--eyect-ink-soft, #445);
}
.cookie-btn--quiet:hover { background: var(--eyect-surface-sunken, #e5eaf1); }
.cookie-btn--text {
    background: none;
    color: var(--eyect-ink-soft, #55606b);
    text-decoration: underline;
    padding: 12px 8px;
}
.cookie-btn--text:hover { color: var(--eyect-brand, #0C4668); }

@media (max-width: 700px) {
    .cookie-inner { padding: 16px 16px 18px; }
    .cookie-bar--corner { right: 10px; left: 10px; bottom: 10px; width: auto; }
    .cookie-actions { width: 100%; }
    .cookie-actions .cookie-btn { flex: 1 1 130px; }
    .cookie-btn--text { flex-basis: 100%; }
}
