#ic-analytics-consent {
    --ic-ac-navy: #0b2431;
    --ic-ac-orange: #ff9800;
    --ic-ac-turquoise: #35c5c0;
    color: #fff;
    font: 14px/1.45 "Open Sans", sans-serif;
    text-align: center;
    padding: 0;
}
#ic-analytics-consent *, #ic-analytics-consent *::before, #ic-analytics-consent *::after { box-sizing: border-box; }
#ic-analytics-consent[hidden], #ic-analytics-consent [hidden], #ic-analytics-preferences[hidden] { display: none !important; }
#ic-analytics-consent .ic-ac-panel {
    position: fixed;
    z-index: 10020;
    left: max(16px, env(safe-area-inset-left));
    bottom: max(16px, env(safe-area-inset-bottom));
    width: min(400px, calc(100vw - 32px));
    max-height: calc(100vh - 32px);
    max-height: calc(100dvh - 32px);
    margin: 0;
    padding: 18px 16px 12px;
    overflow-x: hidden;
    overflow-y: auto;
    background: #123747;
    color: #fff;
    border: 1px solid #315c6e;
    border-radius: 14px;
    box-shadow: 0 8px 28px #00151d40;
    text-align: left;
    animation: ic-ac-enter 160ms ease-out;
}
#ic-analytics-consent .ic-ac-panel::before { content: ""; position: absolute; inset: 0 0 auto; height: 3px; background: linear-gradient(90deg, #35c5c0 0 28%, #ff9800 28% 53%, #e84393 53% 76%, #9342b7 76%); }
#ic-analytics-consent .ic-ac-title { margin: 0 64px 8px 0; font: 700 18px/1.3 "Open Sans", sans-serif; color: #ffb447 !important; }
#ic-analytics-consent .ic-ac-text { margin: 0 0 8px; font: 14px/1.45 "Open Sans", sans-serif; color: #fff !important; }
#ic-analytics-consent .ic-ac-status { margin: 0 0 12px; font: 12px/1.4 "Open Sans", sans-serif; color: #bfd6df !important; }
#ic-analytics-consent .ic-ac-status:empty { display: none; }
#ic-analytics-consent button {
    appearance: none;
    cursor: pointer;
    min-height: 44px;
    margin: 0;
    font: 700 14px/1.4 "Open Sans", sans-serif;
    letter-spacing: normal;
    text-transform: none;
    white-space: normal;
    text-align: center;
    box-shadow: none;
}
#ic-analytics-consent .ic-ac-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
#ic-analytics-consent .ic-ac-action { width: 100%; padding: 10px; border: 1px solid #ff9800; border-radius: 9px; color: #0b2431 !important; background: #ff9800; }
#ic-analytics-consent .ic-ac-action:hover { background: #ffb447; border-color: #ffb447; }
#ic-analytics-consent .ic-ac-links { display: flex; align-items: center; margin-top: 4px; }
#ic-analytics-consent .ic-ac-links a { display: inline-flex; align-items: center; min-height: 32px; font: 12px/1.4 "Open Sans", sans-serif; color: #6de0db !important; text-decoration: underline; text-underline-offset: 3px; }
#ic-analytics-consent .ic-ac-close { position: absolute; top: 6px; right: 8px; padding: 8px; border: 0; background: transparent; color: #d8e8ee !important; font-size: 12px; font-weight: 400; }
#ic-analytics-preferences {
    display: inline-block;
    vertical-align: baseline;
    position: relative;
    min-height: 0;
    min-width: 0;
    margin: 0 0 0 8px;
    padding: 0;
    border: 0;
    border-radius: 0;
    appearance: none;
    background: transparent;
    color: inherit;
    font: inherit;
    text-transform: none;
    letter-spacing: normal;
    text-decoration: none;
    cursor: pointer;
    box-shadow: none;
}
#ic-analytics-preferences::before { content: "·"; margin-right: 10px; color: #62c8c6; }
#ic-analytics-preferences::after { content: ""; position: absolute; inset: -10px -6px; }
footer.element-footer #ic-analytics-preferences { color: #d8e8ee; }
#ic-analytics-consent button:focus, #ic-analytics-consent a:focus, #ic-analytics-preferences:focus { outline: none; box-shadow: none; }
#ic-analytics-consent button:focus-visible, #ic-analytics-consent a:focus-visible { outline: 2px solid #6de0db; outline-offset: 2px; }
#ic-analytics-preferences:hover, #ic-analytics-preferences:focus-visible { text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 2px; }
@keyframes ic-ac-enter { from { opacity: 0; transform: translateX(-12px); } to { opacity: 1; transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { #ic-analytics-consent .ic-ac-panel { animation: none; } }