/* Общий компонент: шрифт наследуется от сайта, палитра задаётся его темой. */
#ea-cookies {
    --cookie-accent: #286bc0; --cookie-on-accent: #fff;
    --cookie-bg: #fff; --cookie-ink: #243446; --cookie-muted: #617083;
    --cookie-line: #dbe3ec; --cookie-soft: #f4f7fb; --cookie-radius: 12px;
    font-family: inherit; font-size: 15px; line-height: 1.55; letter-spacing: normal;
    color: var(--cookie-ink); text-align: left;
}
#ea-cookies *, #ea-cookies *::before, #ea-cookies *::after { box-sizing:border-box; }
#ea-cookies [hidden] { display:none !important; }
#ea-cookies button, #ea-cookies a { font:inherit; letter-spacing:normal; text-transform:none; }
#ea-cookies button { cursor:pointer; }
#ea-cookies a, #ea-cookies .ea-cookie-link { color:var(--cookie-link, var(--cookie-accent)); text-decoration:underline; text-underline-offset:3px; }
#ea-cookies .ea-cookie-link { border:0; background:none; border-radius:0; padding:0; min-height:0; box-shadow:none; display:inline; }
#ea-cookies :is(button,a):focus-visible { outline:2px solid var(--cookie-accent); outline-offset:4px; }
#ea-cookies p { font:inherit; color:inherit; margin:0 0 12px; }
#ea-cookies .ea-cookie-banner { position:fixed; z-index:10000; right:24px; bottom:max(24px, env(safe-area-inset-bottom)); width:min(580px, calc(100% - 48px)); display:flex; align-items:center; gap:24px; padding:24px; background:var(--cookie-bg); background:color-mix(in srgb, var(--cookie-bg) 88%, transparent); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); border:1px solid var(--cookie-line); border-top:3px solid var(--cookie-accent); border-radius:var(--cookie-radius); box-shadow:0 12px 48px #0002; }
#ea-cookies .ea-cookie-heading { font-weight:700; font-size:17px; line-height:1.3; margin-bottom:8px; }
#ea-cookies .ea-cookie-copy > p:last-child { margin:0; color:var(--cookie-muted); font-size:14px; }
#ea-cookies .ea-cookie-accept { flex-shrink:0; width:auto; min-height:44px; padding:11px 22px; border:1px solid transparent; border-radius:var(--cookie-radius); background:var(--cookie-accent); color:var(--cookie-on-accent); font-weight:600; line-height:1.4; box-shadow:none; }
#ea-cookies .ea-cookie-accept:hover { filter:brightness(.94); }
#ea-cookies .ea-cookie-dialog { padding:0; margin:auto; width:min(700px, calc(100vw - 32px)); max-width:none; max-height:calc(100vh - 40px); max-height:calc(100dvh - 40px); border:1px solid var(--cookie-line); border-radius:var(--cookie-radius); background:var(--cookie-bg); color:var(--cookie-ink); font:inherit; box-shadow:0 24px 90px #0004; overflow:hidden; }
#ea-cookies .ea-cookie-dialog[open] { display:flex; flex-direction:column; }
#ea-cookies .ea-cookie-dialog::backdrop { background:rgba(12,20,30,.6); backdrop-filter:blur(4px); }
#ea-cookies .ea-cookie-dialog-head { flex-shrink:0; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:28px 28px 20px; border-bottom:1px solid var(--cookie-line); }
#ea-cookies .ea-cookie-eyebrow { color:var(--cookie-muted); font-size:12px; margin:0 0 6px; }
#ea-cookies h2 { color:inherit; font-family:inherit; font-size:25px; font-weight:600; line-height:1.25; margin:0; letter-spacing:normal; text-transform:none; }
#ea-cookies .ea-cookie-close { display:block; flex-shrink:0; width:40px; height:40px; padding:0; margin:-6px -8px 0 0; border:0; background:transparent; color:var(--cookie-muted); font:30px/1 Arial,sans-serif; }
#ea-cookies .ea-cookie-details { min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:24px 28px 12px; }
#ea-cookies h3 { font-family:inherit; font-size:19px; font-weight:600; line-height:1.4; color:inherit; margin:24px 0 12px; text-transform:none; letter-spacing:normal; }
#ea-cookies h4 { font-family:inherit; font-size:16px; font-weight:600; color:inherit; margin:0 0 6px; text-transform:none; letter-spacing:normal; }
#ea-cookies .ea-cookie-category { padding:16px; margin:10px 0; background:var(--cookie-soft); border:1px solid var(--cookie-line); border-radius:var(--cookie-radius); }
#ea-cookies .ea-cookie-category h3 { font-size:16px; margin:0 0 6px; }
#ea-cookies .ea-cookie-category p:last-child { margin:0; }
#ea-cookies code { background:transparent; color:inherit; padding:0; font-size:.92em; overflow-wrap:anywhere; }
#ea-cookies .ea-cookie-dialog-foot { flex-shrink:0; display:flex; align-items:center; justify-content:flex-end; padding:18px 28px; border-top:1px solid var(--cookie-line); }
@media (max-width:600px) {
    #ea-cookies .ea-cookie-banner { right:12px; bottom:max(12px, env(safe-area-inset-bottom)); width:calc(100% - 24px); padding:18px; gap:14px; flex-wrap:wrap; }
    #ea-cookies .ea-cookie-accept { width:100%; }
    #ea-cookies .ea-cookie-dialog-head { padding:20px 20px 16px; }
    #ea-cookies h2 { font-size:22px; }
    #ea-cookies .ea-cookie-details { padding:18px 20px 8px; }
    #ea-cookies .ea-cookie-dialog-foot { padding:14px 20px; flex-wrap:wrap; gap:10px; }
}


/* Палитры взяты из оформления сайтов группы. */
#ea-cookies[data-theme="tdm"] { --cookie-accent:#579931; --cookie-link:#356520; --cookie-on-accent:#fff; --cookie-radius:4px; }
#ea-cookies[data-theme="commerce-tdm"] { --cookie-accent:#82cc5b; --cookie-link:#366d20; --cookie-on-accent:#172a10; --cookie-radius:4px; }
#ea-cookies[data-theme="crimea-tdm"] { --cookie-accent:#f2963c; --cookie-link:#94500e; --cookie-on-accent:#30200e; --cookie-radius:4px; }
#ea-cookies[data-theme="bath"] { --cookie-accent:#dd6b4d; --cookie-link:#a3432c; --cookie-on-accent:#27110c; --cookie-radius:4px; }
#ea-cookies[data-theme="korsunka"] { --cookie-accent:#947054; --cookie-link:#78583f; --cookie-on-accent:#fff; --cookie-radius:0px; }
#ea-cookies[data-theme="bath"] { font-family:"Open Sans",Arial,sans-serif; }
#ea-cookies[data-theme="korsunka"] { font-family:"Nunito Sans",Arial,sans-serif; --cookie-bg:#fffdf9; --cookie-soft:#f6f1eb; }
#ea-cookies h2::before,#ea-cookies h2::after { display:none; }
#ea-cookies h2 { border:0; padding:0; }

/* Старые стили Bootstrap не должны показывать закрытый dialog. */
#ea-cookies .ea-cookie-dialog:not([open]) { display:none !important; }
#ea-cookies .ea-cookie-link { border:0 !important; background:transparent !important; box-shadow:none !important; }

/* Изолируем кнопки и ссылки от общих правил BurnEngine с !important. */
#ea-cookies .ea-cookie-link,
#ea-cookies .ea-cookie-link:hover,
#ea-cookies .ea-cookie-link:focus {
    color:var(--cookie-link) !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    padding:0 !important;
    margin:0 !important;
    min-width:0 !important;
    min-height:0 !important;
    width:auto !important;
    height:auto !important;
    display:inline !important;
    font:inherit !important;
    text-transform:none !important;
    text-decoration:underline !important;
}
#ea-cookies .ea-cookie-details a { color:var(--cookie-link) !important; }
#ea-cookies .ea-cookie-accept {
    background:var(--cookie-accent) !important;
    color:var(--cookie-on-accent) !important;
    border:1px solid transparent !important;
}
/* Баннер перекрывает кнопку UpToCall (слой 200998), не меняя её положение. */
#ea-cookies .ea-cookie-banner {
    bottom:max(24px, env(safe-area-inset-bottom, 0px));
    z-index:201000;
}
@media (max-width:600px) {
    #ea-cookies .ea-cookie-banner {
        bottom:max(12px, env(safe-area-inset-bottom, 0px));
        max-height:calc(100dvh - 40px);
        overflow-y:auto;
    }
}
