.vi-media-preview .vi-mp-card{position:relative;box-sizing:border-box;background:var(--vi-mp-background,#fff);padding:var(--vi-mp-padding,0);border-radius:var(--vi-mp-radius,8px);color:var(--vi-mp-text-color,#333);max-width:100%}
.vi-media-preview .vi-mp-link{display:block;color:inherit;text-decoration:none}.vi-media-preview .vi-mp-window,.vi-mp-popup .vi-mp-window{--vi-mp-effective-height:var(--vi-mp-height,320px);box-sizing:border-box!important;display:block!important;flex:none!important;min-height:0!important;max-height:none!important;height:var(--vi-mp-effective-height)!important;width:100%!important;overflow:hidden!important;border:var(--vi-mp-border-width,1px) solid var(--vi-mp-border-color,#ddd);border-radius:var(--vi-mp-radius,8px);background:var(--vi-mp-frame-background,#f4f4f4);position:relative}
.vi-media-preview .vi-mp-media,.vi-mp-popup .vi-mp-media{display:block!important;max-width:none!important;margin:0!important;will-change:transform}
.vi-media-preview img.vi-mp-media{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;object-fit:contain;object-position:top}
.vi-media-preview video.vi-mp-media{width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover;object-position:top}
.vi-media-preview .vi-mp-title{font-size:var(--vi-mp-title-size,22px);color:var(--vi-mp-title-color,#193247);margin:18px 0 4px}.vi-media-preview .vi-mp-description{font-size:var(--vi-mp-text-size,16px);color:var(--vi-mp-text-color,#333);margin:0 0 10px}
.vi-media-preview .vi-mp-link:focus-visible,.vi-media-preview .vi-mp-card:focus-visible{outline:3px solid #1e87f0;outline-offset:4px}
.vi-mp-error,.vi-mp-note{font-size:12px;margin:8px 0;color:var(--vi-mp-text-color,#333)}.vi-mp-error[hidden],.vi-mp-panel[hidden]{display:none!important}
.vi-media-preview iframe.vi-mp-website,.vi-mp-popup iframe.vi-mp-website{border:0!important;pointer-events:none;transform-origin:top left;min-height:0!important;max-height:none!important}
.vi-mp-popup{position:fixed!important;z-index:2147483600;box-sizing:border-box;padding:12px;background:var(--vi-mp-background,#fff);color:var(--vi-mp-text-color,#333);border:var(--vi-mp-border-width,1px) solid var(--vi-mp-border-color,#ddd);border-radius:var(--vi-mp-radius,8px);box-shadow:0 4px 22px #0003;pointer-events:none;max-width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px);overflow:hidden}.vi-mp-popup-title{display:block;margin-bottom:10px}.vi-mp-popup .vi-mp-window{--vi-mp-effective-height:var(--vi-mp-popup-surface-height,280px)}
@media(max-width:639px){.vi-media-preview .vi-mp-window{--vi-mp-effective-height:var(--vi-mp-mobile,240px)}}
@media(prefers-reduced-motion:reduce){.vi-mp-media{will-change:auto}}

.vi-media-preview .vi-mp-trigger{display:inline-block!important;text-decoration:underline;cursor:pointer}

.vi-media-preview .vi-mp-texts{display:flex;flex-direction:column;gap:var(--vi-mp-text-gap,8px)}
.vi-media-preview .vi-mp-texts-above{margin-bottom:16px}.vi-media-preview .vi-mp-texts-below{margin-top:16px}
.vi-media-preview .vi-mp-texts>.vi-mp-title,.vi-media-preview .vi-mp-texts>.vi-mp-description,.vi-media-preview .vi-mp-texts>.vi-mp-meta{margin:0!important}
.vi-media-preview .vi-mp-meta{font-size:var(--vi-mp-meta-size,14px);color:var(--vi-mp-meta-color,#666)}
.vi-media-preview .vi-mp-text-left{text-align:left}.vi-media-preview .vi-mp-text-center{text-align:center}.vi-media-preview .vi-mp-text-right{text-align:right}
.vi-media-preview .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-texts-overlay-bottom{position:absolute;left:16px;right:16px;z-index:2;pointer-events:none}
.vi-media-preview .vi-mp-texts-overlay-top{top:16px}.vi-media-preview .vi-mp-texts-overlay-center{top:50%;transform:translateY(-50%)}.vi-media-preview .vi-mp-texts-overlay-bottom{bottom:16px}

.vi-media-preview .vi-mp-text-surface{box-sizing:border-box;max-width:100%;overflow-wrap:anywhere}.vi-media-preview .vi-mp-surface-full{display:block}.vi-media-preview .vi-mp-surface-content{display:inline-block}
.vi-media-preview .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-texts-overlay-bottom{opacity:1;transition:opacity var(--vi-mp-overlay-fade,220ms) ease}
.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="bottom"] .vi-mp-texts-overlay-bottom,.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="all"] .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="all"] .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="all"] .vi-mp-texts-overlay-bottom{opacity:0}
@media(prefers-reduced-motion:reduce){.vi-media-preview .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-texts-overlay-bottom{transition:none}}

.vi-media-preview .vi-mp-card[data-vi-mp-shadow]{isolation:isolate;transition:box-shadow .25s ease}
.vi-media-preview .vi-mp-card[data-vi-mp-shadow="soft"]{box-shadow:0 4px 16px -4px var(--vi-mp-shadow-color)}
.vi-media-preview .vi-mp-card[data-vi-mp-shadow="strong"]{box-shadow:0 12px 30px -5px var(--vi-mp-shadow-color)}
.vi-media-preview .vi-mp-card[data-vi-mp-shadow="custom"]{box-shadow:var(--vi-mp-shadow-custom)}
.vi-media-preview .vi-mp-card[data-vi-mp-shadow="floating"]{box-shadow:0 5px 16px -8px var(--vi-mp-shadow-color);margin-bottom:24px}
.vi-media-preview .vi-mp-card[data-vi-mp-shadow="floating"]::after{content:"";position:absolute;left:9%;right:9%;height:18px;bottom:-23px;border-radius:50%;background:var(--vi-mp-shadow-color);filter:blur(9px);z-index:-1;pointer-events:none;transform:scaleX(.94);transition:transform .25s ease,opacity .25s ease;opacity:.8}
.vi-media-preview .vi-mp-card[data-vi-mp-shadow-hover="1"]>.vi-mp-panel,.vi-media-preview .vi-mp-card[data-vi-mp-shadow-hover="1"]>.vi-mp-link>.vi-mp-panel{transition:transform .25s ease}
@media(hover:hover) and (pointer:fine){.vi-media-preview .vi-mp-card:not([data-vi-mp-shadow="none"])[data-vi-mp-shadow-hover="1"]:hover{box-shadow:0 16px 36px -8px var(--vi-mp-shadow-color)}.vi-media-preview .vi-mp-card:not([data-vi-mp-shadow="none"])[data-vi-mp-shadow-hover="1"]:hover>.vi-mp-panel,.vi-media-preview .vi-mp-card:not([data-vi-mp-shadow="none"])[data-vi-mp-shadow-hover="1"]:hover>.vi-mp-link>.vi-mp-panel{transform:translateY(calc(-1 * var(--vi-mp-shadow-lift,4px)))}.vi-media-preview .vi-mp-card[data-vi-mp-shadow="floating"]:hover::after{transform:scaleX(.82);opacity:.55}}
@media(prefers-reduced-motion:reduce){.vi-media-preview .vi-mp-card[data-vi-mp-shadow],.vi-media-preview .vi-mp-card[data-vi-mp-shadow]::after,.vi-media-preview .vi-mp-card[data-vi-mp-shadow-hover="1"] .vi-mp-panel{transition:none!important;transform:none!important}}

/* Slide down at the end; slide back up only after the pointer/focus leaves. */
.vi-media-preview .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-texts-overlay-bottom{translate:0 0;transition:opacity var(--vi-mp-overlay-fade,220ms) ease,translate var(--vi-mp-overlay-fade,220ms) ease}
.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="bottom"] .vi-mp-texts-overlay-bottom,.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="all"] .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="all"] .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-card[data-vi-mp-end-reveal="all"] .vi-mp-texts-overlay-bottom{translate:0 calc(100% + 20px);opacity:0}
@media(prefers-reduced-motion:reduce){.vi-media-preview .vi-mp-texts-overlay-top,.vi-media-preview .vi-mp-texts-overlay-center,.vi-media-preview .vi-mp-texts-overlay-bottom{translate:none!important;transition:none!important}}

/* Card text has its own inset, independent of media or background padding. */
.vi-media-preview .vi-mp-texts-above,.vi-media-preview .vi-mp-texts-below,.vi-media-preview .vi-mp-texts-outside-above,.vi-media-preview .vi-mp-texts-outside-below,.vi-media-preview .vi-mp-texts-outside-left,.vi-media-preview .vi-mp-texts-outside-right{box-sizing:border-box;min-width:0;padding:var(--vi-mp-text-padding-y,12px) var(--vi-mp-text-padding-x,16px)}
.vi-media-preview .vi-mp-texts-above{margin-bottom:var(--vi-mp-text-media-gap,12px)}.vi-media-preview .vi-mp-texts-below{margin-top:var(--vi-mp-text-media-gap,12px)}
.vi-media-preview .vi-mp-layout{display:grid;gap:var(--vi-mp-outside-gap,20px);align-items:center;max-width:100%;min-width:0}
.vi-media-preview .vi-mp-layout>.vi-mp-card{grid-area:media;width:100%!important;min-width:0}
.vi-media-preview .vi-mp-texts-outside-above{grid-area:above}.vi-media-preview .vi-mp-texts-outside-below{grid-area:below}.vi-media-preview .vi-mp-texts-outside-left{grid-area:left}.vi-media-preview .vi-mp-texts-outside-right{grid-area:right}
@media(max-width:639px){.vi-media-preview .vi-mp-layout{display:flex;flex-direction:column;align-items:stretch}.vi-media-preview .vi-mp-texts-outside-above{order:0}.vi-media-preview .vi-mp-texts-outside-left{order:1}.vi-media-preview .vi-mp-layout>.vi-mp-card{order:2}.vi-media-preview .vi-mp-texts-outside-right{order:3}.vi-media-preview .vi-mp-texts-outside-below{order:4}}

.vi-mp-lightbox{position:fixed;inset:0;box-sizing:border-box;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:48px 24px 24px;border:0;background:transparent;color:white;overflow:auto}
.vi-mp-lightbox::backdrop{background:rgba(0,0,0,.88)}
.vi-mp-lightbox-content{display:flex;align-items:center;justify-content:center;min-height:100%;pointer-events:none}
.vi-mp-lightbox-image{display:block;max-width:100%!important;max-height:calc(100dvh - 72px)!important;width:auto!important;height:auto!important;object-fit:contain;transform:none!important;pointer-events:auto;border-radius:4px;box-shadow:0 8px 40px #0008}
.vi-mp-lightbox-close{position:fixed;right:16px;top:10px;z-index:1;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #ffffff66;border-radius:50%;background:#111b;color:#fff;font:32px/1 system-ui;cursor:pointer;pointer-events:auto}
.vi-mp-lightbox-close:focus-visible{outline:3px solid white;outline-offset:3px}
.vi-media-preview a.vi-mp-link[aria-haspopup="dialog"]{cursor:zoom-in}

/* Configurable image dialog: isolated from the page and card styles. */
.vi-mp-lightbox{padding:24px;overflow:hidden;align-items:center;justify-content:center}
.vi-mp-lightbox[open]{display:flex}
.vi-mp-lightbox::backdrop{background:color-mix(in srgb,var(--lb-backdrop,#080d18) calc(var(--lb-opacity,.85)*100%),transparent);backdrop-filter:blur(var(--lb-blur,8px));-webkit-backdrop-filter:blur(var(--lb-blur,8px))}
.vi-mp-lightbox-content{position:relative;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;max-height:min(var(--lb-height,90dvh),calc(100dvh - 48px));width:max-content;max-width:min(var(--lb-width,1100px),100%);padding:var(--lb-padding,18px);border:var(--lb-border,1px) solid var(--lb-border_color,#ffffff26);border-radius:var(--lb-radius,16px);background:var(--lb-background,#151922);pointer-events:auto;box-shadow:0 28px 90px -16px #000b,0 6px 24px #0005;animation:vi-mp-modal-in .22s ease-out}
.vi-mp-lightbox-stage{min-height:0;overflow:auto;overscroll-behavior:contain;border-radius:max(0px,calc(var(--lb-radius,16px) - var(--lb-padding,18px)/2));scrollbar-width:thin}
.vi-mp-lightbox-image{max-width:100%!important;max-height:max(60px,calc(min(var(--lb-height,90dvh),100dvh - 48px) - var(--lb-padding,18px)*2 - 56px))!important;border-radius:0;box-shadow:none;margin:auto}
.vi-mp-lightbox[data-display="scroll"] .vi-mp-lightbox-content{width:var(--lb-width,1100px)}
.vi-mp-lightbox[data-display="scroll"] .vi-mp-lightbox-image{width:100%!important;max-height:none!important;height:auto!important}
.vi-mp-lightbox-caption{flex:none;max-width:100%;box-sizing:border-box;padding:14px 44px 0 2px;color:#fff;font:400 14px/1.5 system-ui;overflow-wrap:anywhere;max-height:80px;overflow:auto;text-align:left}
.vi-mp-lightbox-close{position:absolute;top:10px;right:10px;width:36px;height:36px;z-index:2;background:#101521de;border:1px solid #ffffff40;font:26px/1 system-ui;box-shadow:0 3px 12px #0004;transition:background .15s,transform .15s}
.vi-mp-lightbox-close:hover{background:#303b50;transform:scale(1.06)}
.vi-mp-lightbox[data-shadow="none"] .vi-mp-lightbox-content{box-shadow:none}
.vi-mp-lightbox[data-shadow="soft"] .vi-mp-lightbox-content{box-shadow:0 8px 32px #0005}
@keyframes vi-mp-modal-in{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:600px){.vi-mp-lightbox{padding:12px}.vi-mp-lightbox-content{max-height:min(var(--lb-height,90dvh),calc(100dvh - 24px))}}
@media(prefers-reduced-motion:reduce){.vi-mp-lightbox-content{animation:none}.vi-mp-lightbox-close{transition:none}}
