[data-voyger-media] {
    --voyger-media-backplate: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(241, 245, 249, 0.94));
    --voyger-media-ring: rgba(148, 163, 184, 0.28);
    --voyger-media-highlight: rgba(255, 255, 255, 0.62);
    --voyger-media-filter: drop-shadow(0 10px 18px rgba(15, 23, 42, 0.16));
    --voyger-media-pad: clamp(6px, 12%, 14px);
    position: relative;
    isolation: isolate;
}

[data-voyger-media].has-voyger-media-image {
    background: transparent !important;
}

[data-voyger-media].has-voyger-media-image::before,
[data-voyger-media].has-voyger-media-image::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
}

[data-voyger-media].has-voyger-media-image::before {
    z-index: 0;
    background: var(--voyger-media-backplate);
    box-shadow: inset 0 1px 0 var(--voyger-media-highlight), inset 0 0 0 1px var(--voyger-media-ring);
}

[data-voyger-media].has-voyger-media-image::after {
    z-index: 2;
    box-shadow: inset 0 18px 26px rgba(255, 255, 255, 0.08), inset 0 -18px 26px rgba(15, 23, 42, 0.08);
}

[data-voyger-media].has-voyger-media-image > img,
[data-voyger-media].has-voyger-media-image .voyger-media-image {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    padding: var(--voyger-media-pad) !important;
    border-radius: inherit;
    background: transparent !important;
    filter: var(--voyger-media-filter);
}

[data-voyger-media][data-media-fit="cover"].has-voyger-media-image > img,
[data-voyger-media][data-media-fit="cover"].has-voyger-media-image .voyger-media-image {
    object-fit: cover;
    padding: 0 !important;
}

[data-voyger-media][data-media-alpha="transparent"] {
    --voyger-media-pad: clamp(8px, 15%, 16px);
}

[data-voyger-media][data-media-fit="cover"] {
    --voyger-media-filter: saturate(1.03) contrast(1.03);
}

[data-voyger-media][data-contrast-tone="light"] {
    --voyger-media-backplate: radial-gradient(circle at 50% 42%, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0.08) 18%, rgba(30, 41, 59, 0.88) 72%, rgba(2, 6, 23, 0.96) 100%);
    --voyger-media-ring: rgba(255, 255, 255, 0.14);
    --voyger-media-highlight: rgba(255, 255, 255, 0.16);
    --voyger-media-filter: drop-shadow(0 0 1px rgba(15, 23, 42, 0.82)) drop-shadow(0 12px 18px rgba(15, 23, 42, 0.28));
}

[data-voyger-media][data-contrast-tone="dark"] {
    --voyger-media-backplate: linear-gradient(145deg, rgba(255, 255, 255, 0.99) 0%, rgba(248, 250, 252, 0.98) 56%, rgba(226, 232, 240, 0.98) 100%);
    --voyger-media-ring: rgba(148, 163, 184, 0.3);
    --voyger-media-highlight: rgba(255, 255, 255, 0.8);
    --voyger-media-filter: drop-shadow(0 1px 0 rgba(255, 255, 255, 0.45)) drop-shadow(0 10px 16px rgba(15, 23, 42, 0.12));
}

[data-voyger-media][data-contrast-tone="balanced"] {
    --voyger-media-backplate: linear-gradient(135deg, rgba(255, 255, 255, 0.99) 0%, rgba(241, 245, 249, 0.96) 42%, rgba(203, 213, 225, 0.92) 100%);
    --voyger-media-ring: rgba(148, 163, 184, 0.28);
    --voyger-media-highlight: rgba(255, 255, 255, 0.72);
    --voyger-media-filter: drop-shadow(0 10px 16px rgba(15, 23, 42, 0.15));
}

[data-voyger-media][data-media-fit="cover"][data-contrast-tone="light"] {
    --voyger-media-backplate: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.08), rgba(15, 23, 42, 0.7) 100%);
}

[data-voyger-media][data-media-fit="cover"][data-contrast-tone="dark"] {
    --voyger-media-backplate: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(226, 232, 240, 0.9));
}