.elc-banner, .elc-modal-overlay, .elc-overlay, .elc-floating-icon{box-sizing:border-box;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;line-height:1.5;}
.elc-banner *,
.elc-modal *{box-sizing:border-box;margin:0;padding:0;}
.elc-btn, .elc-banner__close, .elc-modal__close, .elc-floating-icon{font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif !important;letter-spacing:normal !important;text-transform:none !important;text-decoration:none !important;box-shadow:none !important;outline:none;-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;}
.elc-banner{position:fixed;z-index:999999;background:var(--elc-bg);color:var(--elc-text);padding:0;}
.elc-banner--bar{bottom:0;left:0;right:0;border-radius:0;box-shadow:0 -4px 20px rgba(0, 0, 0, 0.1);min-height:64px;animation:elcSlideUp 0.3s ease-out;}
.elc-banner--bar .elc-banner__inner{display:flex;align-items:center;gap:30px;padding:20px 40px;max-width:1200px;margin:0 auto;}
.elc-banner--bar .elc-banner__text{flex:1;}
.elc-banner--bar .elc-banner__actions{display:flex;flex-direction:column;gap:8px;flex-shrink:0;min-width:240px;align-items:stretch;}
.elc-banner--modal{top:50%;left:50%;transform:translate(-50%, -50%);max-width:620px;width:calc(100% - 32px);border-radius:20px;box-shadow:0 20px 60px rgba(0, 0, 0, 0.2);animation:elcScaleIn 0.3s ease;}
.elc-banner--modal .elc-banner__inner{padding:28px 28px 24px;display:flex;flex-direction:column;gap:16px;}
.elc-banner--card{bottom:20px;right:20px;width:380px;max-height:520px;overflow-y:auto;border-radius:20px;box-shadow:0 12px 40px rgba(0, 0, 0, 0.18);animation:elcSlideUp 0.3s ease-out;}
.elc-banner--card .elc-banner__inner{padding:24px;display:flex;flex-direction:column;gap:16px;}
.elc-banner--card-left{left:20px;right:auto;}
.elc-banner-overlay{position:fixed;inset:0;z-index:999998;background:rgba(0, 0, 0, 0.5);animation:elcFadeIn 0.2s ease-out;}
.elc-banner__close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:0 !important;background:none !important;background-color:transparent !important;border:none !important;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity 0.2s;z-index:1;font-size:22px;font-weight:700;line-height:1;color:var(--elc-text, #333);opacity:0.5;padding:0 !important;margin:0 !important;min-height:0 !important;min-width:0 !important;}
.elc-banner__close:hover{opacity:1;background:none !important;background-color:transparent !important;}
.elc-banner__close:focus-visible{outline:2px solid var(--elc-primary);outline-offset:2px;}
.elc-banner__logo{max-height:32px;width:auto;margin-bottom:4px;}
.elc-banner__text{flex:1;}
.elc-banner__title{font-size:17px;font-weight:700;margin-bottom:6px;color:var(--elc-text);}
.elc-banner__desc{font-size:14px;color:var(--elc-text);opacity:0.75;line-height:1.5;}
.elc-policy-link{color:var(--elc-primary);text-decoration:underline;}
.elc-policy-link:hover, .elc-policy-link:focus{opacity:0.8;}
.elc-banner__actions{display:flex;flex-direction:column;gap:8px;}
.elc-btn{display:inline-flex !important;align-items:center !important;justify-content:center !important;padding:10px 22px !important;font-size:14px !important;font-weight:600 !important;border-radius:var(--elc-btn-radius, 8px) !important;border:var(--elc-btn-border-width, 2px) solid transparent !important;cursor:pointer !important;transition:opacity 0.2s, transform 0.2s, background-color 0.2s !important;white-space:nowrap !important;min-height:44px !important;line-height:1.4 !important;width:100% !important;text-align:center !important;background-image:none !important;text-shadow:none !important;box-sizing:border-box !important;vertical-align:middle !important;margin:0 !important;}
.elc-btn:focus-visible{outline:2px solid var(--elc-primary);outline-offset:2px;}
.elc-btn:focus:not(:focus-visible){outline:none !important;}
.elc-btn--accept, .elc-btn--reject{background:var(--elc-primary) !important;background-color:var(--elc-primary) !important;color:var(--elc-btn-accept-text, #fff) !important;border-color:var(--elc-btn-border-color, var(--elc-primary)) !important;font-weight:600 !important;text-decoration:none !important;opacity:1 !important;}
.elc-btn--accept:hover, .elc-btn--reject:hover{opacity:0.88 !important;transform:translateY(-1px);}
.elc-banner__link, .elc-banner .elc-banner__link{color:var(--elc-primary) !important;text-decoration:underline !important;text-underline-offset:3px !important;font-weight:500 !important;transition:opacity 0.2s;}
.elc-banner__link:hover{opacity:0.75;text-decoration:underline !important;}
.elc-banner__link:focus-visible{outline:2px solid var(--elc-primary);outline-offset:2px;border-radius:2px;}
.elc-btn--customize{background:transparent !important;background-color:transparent !important;color:var(--elc-primary) !important;border:none !important;text-decoration:underline !important;text-underline-offset:3px !important;font-weight:400 !important;padding:6px 14px !important;min-height:auto !important;}
.elc-btn--customize:hover{opacity:0.7 !important;text-decoration:underline !important;}
.elc-btn--secondary{background:transparent !important;background-color:transparent !important;color:var(--elc-btn-reject-text, var(--elc-primary)) !important;border:var(--elc-btn-border-width, 2px) solid var(--elc-btn-border-color, var(--elc-primary)) !important;font-weight:500 !important;}
.elc-btn--secondary:hover, .elc-btn--save:hover{opacity:0.85;transform:translateY(-1px);}
.elc-btn--settings{background:transparent !important;background-color:transparent !important;color:var(--elc-text) !important;border:none !important;opacity:0.6;font-size:13px !important;padding:8px 12px !important;min-height:auto !important;}
.elc-btn--settings:hover{opacity:1;text-decoration:underline;}
.elc-btn--save{background:var(--elc-primary) !important;background-color:var(--elc-primary) !important;color:var(--elc-btn-accept-text, #fff) !important;border:var(--elc-btn-border-width, 2px) solid var(--elc-btn-border-color, var(--elc-primary)) !important;}
.elc-overlay{position:fixed;inset:0;z-index:999998;background:rgba(0, 0, 0, 0.5);backdrop-filter:blur(2px);}
body.elc-locked{overflow:hidden !important;}
body.elc-consent-open{overflow:hidden !important;}
.elc-modal-overlay{position:fixed;inset:0;z-index:1000000;background:rgba(0, 0, 0, 0.5);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;animation:elcFadeIn 0.2s ease-out;}
.elc-modal{background:var(--elc-bg);color:var(--elc-text);border-radius:20px;max-width:620px;width:100%;max-height:85vh;overflow-y:auto;padding:32px;position:relative;box-shadow:0 20px 60px rgba(0, 0, 0, 0.2);animation:elcModalIn 0.3s ease;}
.elc-modal__close{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:0 !important;background:none !important;background-color:transparent !important;border:none !important;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;line-height:1;color:var(--elc-text, #333);opacity:0.5;cursor:pointer;transition:opacity 0.2s;padding:0 !important;margin:0 !important;min-height:0 !important;min-width:0 !important;}
.elc-modal__close:hover{opacity:1;background:none !important;background-color:transparent !important;}
.elc-modal__header{display:flex;align-items:center;gap:10px;margin-bottom:8px;}
.elc-modal__logo{max-height:28px;width:auto;}
.elc-modal__title{font-size:22px;font-weight:700;color:var(--elc-primary);}
.elc-modal__categories{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;}
.elc-category{border:1px solid #eee;border-radius:12px;padding:16px;transition:border-color 0.2s;}
.elc-category:hover{border-color:var(--elc-primary);}
.elc-category__header{display:flex;align-items:center;justify-content:space-between;}
.elc-category__label{font-weight:600;font-size:15px;display:flex;align-items:center;gap:8px;cursor:pointer;}
.elc-category__checkbox{width:18px;height:18px;accent-color:var(--elc-primary);cursor:pointer;}
.elc-category__checkbox:disabled{opacity:0.6;cursor:not-allowed;}
.elc-category__badge{font-size:11px;background:color-mix(in srgb, var(--elc-primary) 12%, transparent);color:var(--elc-primary);padding:2px 8px;border-radius:4px;font-weight:500;}
.elc-category__desc{font-size:13px;opacity:0.6;margin-top:6px;line-height:1.4;}
.elc-modal__footer{padding:12px 20px;border-top:1px solid rgba(0,0,0,0.08);text-align:center;font-size:0.82em;}
.elc-modal__footer .elc-policy-link{color:inherit;opacity:0.6;text-decoration:underline;}
.elc-modal__footer .elc-policy-link:hover{opacity:1;}
.elc-modal__actions{display:flex;gap:10px;flex-wrap:wrap;}
.elc-floating-icon{position:fixed !important;bottom:20px !important;left:20px !important;z-index:99998 !important;width:48px !important;height:48px !important;border-radius:50% !important;background:var(--elc-icon-bg, var(--elc-primary)) !important;background-color:var(--elc-icon-bg, var(--elc-primary)) !important;opacity:0.85;border:var(--elc-icon-border-width, 0) solid var(--elc-icon-border-color, transparent) !important;cursor:pointer !important;display:flex !important;align-items:center !important;justify-content:center !important;box-shadow:0 4px 12px rgba(0, 0, 0, 0.2) !important;transition:opacity 0.2s ease, transform 0.2s ease !important;animation:elcIconIn 0.3s ease-out;padding:0 !important;margin:0 !important;min-height:0 !important;min-width:0 !important;max-height:none !important;max-width:none !important;text-indent:0 !important;text-align:center !important;background-image:none !important;text-shadow:none !important;text-transform:none !important;text-decoration:none !important;}
.elc-floating-icon:hover{opacity:1;transform:scale(1.1);box-shadow:0 6px 20px rgba(0, 0, 0, 0.3);}
.elc-floating-icon:focus-visible{outline:2px solid var(--elc-primary);outline-offset:3px;}
.elc-floating-icon__svg{width:22px;height:22px;fill:var(--elc-icon-svg, #fff);}
.elc-floating-icon--right{right:20px;left:auto;}
.elc-floating-icon__tooltip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:#333;color:#fff;font-size:12px;font-weight:500;padding:6px 12px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.2s;}
.elc-floating-icon__tooltip::after{content:'';position:absolute;left:-4px;top:50%;transform:translateY(-50%);border:4px solid transparent;border-right-color:#333;}
.elc-floating-icon:hover .elc-floating-icon__tooltip{opacity:1;}
.elc-floating-icon--right .elc-floating-icon__tooltip{right:calc(100% + 10px);left:auto;}
.elc-floating-icon--right .elc-floating-icon__tooltip::after{left:auto;right:-4px;border-right-color:transparent;border-left-color:#333;}
@keyframes elcSlideUp {
from{transform:translateY(20px);opacity:0;}
to{transform:translateY(0);opacity:1;}
}
@keyframes elcScaleIn {
from{transform:translate(-50%, -50%) scale(0.95);opacity:0;}
to{transform:translate(-50%, -50%) scale(1);opacity:1;}
}
@keyframes elcFadeIn {
from{opacity:0;}
to{opacity:1;}
}
@keyframes elcModalIn {
from{transform:translateY(20px);opacity:0;}
to{transform:translateY(0);opacity:1;}
}
@keyframes elcIconIn {
from{transform:translateY(10px);opacity:0;}
to{transform:translateY(0);opacity:1;}
} @media(max-width:600px){ .elc-banner--bar .elc-banner__inner{flex-direction:column;align-items:stretch;text-align:left;padding:16px 20px;gap:16px;}
.elc-banner--bar .elc-banner__actions{min-width:unset;width:100%;}
.elc-banner--modal{width:calc(100% - 24px);max-width:none;}
.elc-banner--modal .elc-banner__inner{padding:20px 16px;}
.elc-banner--card{left:0;right:0;bottom:0;width:100%;max-width:none;border-radius:20px 20px 0 0;max-height:80vh;}
.elc-btn{width:100%;justify-content:center;}
.elc-banner__actions{flex-direction:column;}
.elc-modal{padding:24px 16px 16px;border-radius:20px 20px 0 0;max-height:90vh;}
.elc-modal__actions{flex-direction:column;}
.elc-floating-icon{width:42px;height:42px;bottom:16px;left:16px;}
.elc-floating-icon--right{right:16px;left:auto;}
} .elc-open-settings{cursor:pointer;}
.elc-embed-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:220px;padding:24px;background:#f2f2f2;border:1px dashed #c3c3c3;border-radius:8px;text-align:center;box-sizing:border-box;}
.elc-embed-placeholder__text{margin:0;font-size:14px;line-height:1.5;color:#555;max-width:420px;}
.elc-embed-placeholder__btn.elc-btn{background-color:var(--elc-primary, #FFD20A);color:var(--elc-btn-accept-text, #1A1A1A);border:none;border-radius:var(--elc-btn-radius, 8px);padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;}
.elc-embed-placeholder__btn.elc-btn:hover{filter:brightness(1.08);}
.elc-banner--portal{top:50%;left:50%;transform:translate(-50%, -50%);width:calc(100% - 32px);max-width:960px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column;border-radius:4px;box-shadow:0 24px 64px rgba(0, 0, 0, 0.28);animation:elcScaleIn 0.25s ease;}
.elc-banner--portal .elc-banner__inner{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:14px;padding:28px 32px 24px;}
.elc-banner--portal .elc-banner__logo{display:block;align-self:flex-start;max-height:40px;max-width:240px;width:auto;height:auto;margin:0;}
.elc-banner--portal .elc-banner__title{font-size:24px;font-weight:800;line-height:1.25;margin:0;color:var(--elc-text);}
.elc-banner--portal .elc-banner__body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-right:6px;font-size:13.5px;line-height:1.5;color:var(--elc-text);}
.elc-banner--portal .elc-banner__body p, .elc-banner--portal .elc-banner__body ul, .elc-banner--portal .elc-banner__body ol{margin:0 0 10px;}
.elc-banner--portal .elc-banner__title, .elc-banner--portal .elc-banner__body p, .elc-banner--portal .elc-banner__body li{font-family:inherit;letter-spacing:normal;text-transform:none;}
.elc-banner--portal .elc-banner__body p, .elc-banner--portal .elc-banner__body li{font-size:inherit;line-height:inherit;color:inherit;}
.elc-banner--portal .elc-banner__body ul, .elc-banner--portal .elc-banner__body ol{padding-left:20px;}
.elc-banner--portal .elc-banner__body > :last-child{margin-bottom:0;}
.elc-banner--portal .elc-banner__body strong, .elc-banner--portal .elc-banner__body b{font-weight:700;}
.elc-banner--portal .elc-banner__link, .elc-banner--portal .elc-policy-link, .elc-banner--portal .elc-banner__body a{color:var(--elc-text) !important;font-weight:700 !important;text-decoration:underline !important;text-underline-offset:2px !important;}
.elc-banner--portal .elc-banner__actions{display:flex;flex-direction:row;gap:16px;padding-top:6px;}
.elc-banner--portal .elc-btn, .elc-modal-overlay--portal .elc-btn{flex:1 1 0;width:auto !important;min-height:46px !important;font-size:13px !important;font-weight:700 !important;letter-spacing:0.04em !important;text-transform:uppercase !important;white-space:normal !important;}
.elc-banner--portal .elc-btn--accept, .elc-modal-overlay--portal .elc-btn--accept{border-color:var(--elc-primary) !important;}
.elc-banner--portal .elc-btn--advanced, .elc-modal-overlay--portal .elc-btn--reject, .elc-modal-overlay--portal .elc-btn--save{background:transparent !important;background-color:transparent !important;color:var(--elc-btn-reject-text, var(--elc-text)) !important;border:var(--elc-btn-border-width, 2px) solid var(--elc-btn-border-color, var(--elc-text)) !important;}
.elc-banner--portal .elc-btn--advanced:hover, .elc-modal-overlay--portal .elc-btn--reject:hover, .elc-modal-overlay--portal .elc-btn--save:hover{background-color:rgba(0, 0, 0, 0.05) !important;opacity:1 !important;transform:translateY(-1px);}
.elc-banner--portal .elc-btn:focus-visible, .elc-banner--portal a:focus-visible, .elc-modal-overlay--portal .elc-btn:focus-visible, .elc-modal-overlay--portal .elc-modal__close:focus-visible{outline:2px solid var(--elc-text) !important;outline-offset:2px;}
.elc-modal-overlay--portal .elc-modal{max-width:680px;border-radius:4px;}
.elc-modal-overlay--portal .elc-modal__header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:10px;padding-right:32px;}
.elc-modal-overlay--portal .elc-modal__logo{max-height:36px;max-width:220px;}
.elc-modal-overlay--portal .elc-modal__title{color:var(--elc-text);font-family:inherit;font-weight:800;line-height:1.25;letter-spacing:normal;text-transform:none;margin:0;}
.elc-modal-overlay--portal .elc-modal__intro{margin:0 0 18px;font-size:14px;line-height:1.5;opacity:0.8;}
.elc-modal-overlay--portal .elc-category{border-radius:4px;}
.elc-modal-overlay--portal .elc-category:hover{border-color:rgba(0, 0, 0, 0.3);}
.elc-modal-overlay--portal .elc-category__label{gap:12px;}
.elc-modal-overlay--portal .elc-category__badge{background:rgba(0, 0, 0, 0.06);color:var(--elc-text);}
.elc-modal-overlay--portal .elc-category__checkbox{-webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;position:relative;flex:0 0 auto;width:42px !important;height:24px !important;margin:0 !important;border:0 !important;border-radius:12px !important;background:#8c8c8c !important;box-shadow:inset 0 0 0 1px rgba(0, 0, 0, 0.35) !important;cursor:pointer;transition:background-color 0.2s;}
.elc-modal-overlay--portal .elc-category__checkbox::before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0, 0, 0, 0.35);transition:transform 0.2s;}
.elc-modal-overlay--portal .elc-category__checkbox:checked{background:var(--elc-primary) !important;}
.elc-modal-overlay--portal .elc-category__checkbox:checked::before{transform:translateX(18px);}
.elc-modal-overlay--portal .elc-category__checkbox:disabled{opacity:0.55;cursor:not-allowed;}
.elc-modal-overlay--portal .elc-category__checkbox:focus-visible{outline:2px solid var(--elc-text);outline-offset:2px;}
.elc-modal-overlay--portal .elc-modal__actions{flex-wrap:nowrap;gap:12px;}
@media(max-width:600px){
.elc-banner--portal{width:calc(100% - 16px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);}
.elc-banner--portal .elc-banner__inner{gap:12px;padding:18px 16px 16px;}
.elc-banner--portal .elc-banner__logo{max-height:32px;}
.elc-banner--portal .elc-banner__title{font-size:19px;}
.elc-banner--portal .elc-banner__body{font-size:13px;}
.elc-banner--portal .elc-banner__actions, .elc-modal-overlay--portal .elc-modal__actions{flex-direction:column;gap:10px;}
.elc-banner--portal .elc-btn, .elc-modal-overlay--portal .elc-btn{flex:0 0 auto;width:100% !important;}
.elc-modal-overlay--portal .elc-modal{border-radius:4px;}
} @media (max-height: 520px) {
.elc-banner--portal .elc-banner__logo {
display: none;
}
.elc-banner--portal .elc-banner__actions {
flex-direction: row;
}
.elc-banner--portal .elc-btn {
flex: 1 1 0;
width: auto !important;
min-height: 40px !important;
}
}