.chrome-extension-notice {
    --cen-blue: #4d73c0;
    --cen-blue-dark: #36599f;
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 3500;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 17px;
    width: min(430px, calc(100vw - 48px));
    padding: 22px 22px 18px;
    overflow: hidden;
    border: 1px solid rgba(77, 115, 192, .2);
    border-radius: 20px;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 24px 70px rgba(28, 44, 75, .22), 0 4px 16px rgba(28, 44, 75, .08);
    opacity: 0;
    transform: translateY(18px) scale(.98);
    transition: opacity .32s ease, transform .4s cubic-bezier(.2, .8, .2, 1);
    isolation: isolate;
}

.chrome-extension-notice[hidden] { display: none; }

.chrome-extension-notice.cen-visible {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.chrome-extension-notice.cen-leaving {
    opacity: 0;
    transform: translateY(12px) scale(.98);
}

.cen-glow {
    position: absolute;
    z-index: -1;
    top: -110px;
    left: -85px;
    width: 250px;
    height: 250px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(109, 145, 219, .22), rgba(109, 145, 219, 0) 68%);
    pointer-events: none;
}

.cen-close {
    position: absolute;
    top: 11px;
    right: 11px;
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #8791a2;
    cursor: pointer;
    transition: color .16s ease, background .16s ease, transform .16s ease;
}

.cen-close:hover { color: #344054; background: #f0f3f8; transform: rotate(4deg); }
.cen-close:focus-visible { outline: 3px solid rgba(77, 115, 192, .3); outline-offset: 2px; }

.cen-icon {
    position: relative;
    display: grid;
    place-items: center;
    width: 64px;
    height: 64px;
    margin-top: 4px;
    border: 1px solid #dce5f5;
    border-radius: 18px;
    background: linear-gradient(145deg, #f8faff, #eaf0fb);
    color: var(--cen-blue);
    box-shadow: 0 10px 24px rgba(77, 115, 192, .16);
    font-size: 2rem;
}

.cen-spark {
    position: absolute;
    right: -6px;
    bottom: -5px;
    display: grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #f5b942;
    color: #fff;
    font-size: .58rem;
}

.cen-content { min-width: 0; }

.cen-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 34px 5px 0;
    color: var(--cen-blue-dark);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1;
    text-transform: uppercase;
}

.cen-eyebrow i { color: #e2a52e; }

.chrome-extension-notice h2 {
    margin: 0 32px 7px 0;
    color: #202a3a;
    font-size: 1.18rem;
    font-weight: 800;
    letter-spacing: -.015em;
    line-height: 1.25;
}

.chrome-extension-notice p {
    margin: 0 8px 15px 0;
    color: #5f6b7c;
    font-size: .88rem;
    line-height: 1.55;
}

.cen-actions { display: flex; align-items: center; gap: 13px; }

.cen-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 10px 14px;
    border-radius: 11px;
    background: linear-gradient(135deg, #557bc8, #4167b4);
    box-shadow: 0 8px 18px rgba(77, 115, 192, .28);
    color: #fff;
    font-size: .86rem;
    font-weight: 800;
    text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.cen-primary:hover {
    background: linear-gradient(135deg, #496fbc, #365ca8);
    box-shadow: 0 10px 22px rgba(77, 115, 192, .36);
    color: #fff;
    transform: translateY(-1px);
}

.cen-primary:focus-visible, .cen-secondary:focus-visible {
    outline: 3px solid rgba(77, 115, 192, .3);
    outline-offset: 3px;
}

.cen-arrow { font-size: .72rem; transition: transform .16s ease; }
.cen-primary:hover .cen-arrow { transform: translateX(2px); }

.cen-secondary {
    color: #526175;
    font-size: .83rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.cen-secondary:hover { color: var(--cen-blue-dark); text-decoration: underline; }

.cen-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 15px;
    margin-top: 13px;
    color: #7b8594;
    font-size: .72rem;
    font-weight: 600;
}

.cen-trust span { display: inline-flex; align-items: center; gap: 5px; }
.cen-trust i { color: #4f9a6b; }

@media (max-width: 1023px), (hover: none), (pointer: coarse) {
    .chrome-extension-notice { display: none !important; }
}

@media (prefers-reduced-motion: reduce) {
    .chrome-extension-notice, .cen-close, .cen-primary, .cen-arrow { transition: none; }
}
