.fmt-mf-wrap{display:flex;width:100%;}
.fmt-mf-stage{max-width:100%;display:flex;flex-direction:column;}
.fmt-mf-stage--height{width:auto;}
.fmt-mf-frame{position:relative;max-width:100%;line-height:0;transform-origin:center;}
.fmt-mf-mat{position:relative;box-sizing:border-box;line-height:0;}
.fmt-mf-mat--off{padding:0!important;background:transparent!important;}
.fmt-mf-image-button{position:relative;display:block;width:100%;max-width:100%;padding:0;margin:0;border:0;background:transparent;text-decoration:none;line-height:0;color:inherit;cursor:default;overflow:hidden;}
a.fmt-mf-image-button.is-lightbox-enabled{cursor:pointer;}
.fmt-mf-image{display:block;max-width:100%;height:auto;object-fit:contain;}
.fmt-mf-stage--width .fmt-mf-image{width:100%;height:auto;}
.fmt-mf-stage--height .fmt-mf-image-button{width:auto;}
.fmt-mf-stage--height .fmt-mf-image{max-width:min(100%,100vw);object-fit:contain;}
.fmt-mf-view-icon{position:absolute;right:14px;bottom:14px;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease;pointer-events:none;line-height:1;}
.fmt-mf-image-button:hover .fmt-mf-view-icon,.fmt-mf-image-button:focus-visible .fmt-mf-view-icon{opacity:1;transform:translateY(0);}
.fmt-mf-view-icon svg{width:1em;height:1em;fill:currentColor;}
.fmt-mf-info-button{position:absolute;right:14px;top:14px;z-index:4;width:36px;height:36px;border:0;border-radius:999px;display:flex;align-items:center;justify-content:center;font:600 18px/1 Georgia,serif;cursor:pointer;padding:0;}
.fmt-mf-caption{line-height:1.45;width:100%;}

/* Fullscreen information layer: native dialog enters the browser top layer. */
dialog.fmt-mf-info-panel{box-sizing:border-box;position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:color-mix(in srgb,var(--fmt-panel-bg,#36373B) 88%,transparent);color:inherit;overflow:auto;z-index:2147483000;}
dialog.fmt-mf-info-panel:not([open]){display:none;}
dialog.fmt-mf-info-panel::backdrop{background:rgba(0,0,0,.12);}

.fmt-mf-info-content{position:relative;z-index:1;box-sizing:border-box;width:min(760px,calc(100% - 48px));min-height:100%;margin:0 auto;padding:72px 0 64px;line-height:1.55;display:flex;flex-direction:column;justify-content:center;}
.fmt-mf-info-title{margin:0 0 12px;line-height:1.2;}
.fmt-mf-info-artist{margin:0 0 8px;}
.fmt-mf-info-meta{display:flex;flex-wrap:wrap;gap:.35em 1em;margin:0 0 28px;}
.fmt-mf-info-description{margin-top:24px;}
.fmt-mf-info-description p:first-child{margin-top:0;}
.fmt-mf-info-close{position:fixed;right:max(18px,env(safe-area-inset-right));top:max(14px,env(safe-area-inset-top));z-index:3;width:44px;height:44px;border:0;border-radius:999px;background:rgba(255,255,255,.18);color:currentColor;font:300 34px/1 Arial,sans-serif;cursor:pointer;backdrop-filter:blur(5px);}
body.fmt-mf-dialog-open{overflow:hidden;}
@media (max-width:767px){
  .fmt-mf-info-content{width:calc(100% - 36px);padding-top:max(72px,env(safe-area-inset-top));padding-bottom:max(48px,env(safe-area-inset-bottom));}
  .fmt-mf-info-button{right:10px;top:10px;}
  .fmt-mf-view-icon{right:10px;bottom:10px;}
}
@media (prefers-reduced-motion:reduce){.fmt-mf-frame,.fmt-mf-view-icon{transition:none!important;animation:none!important;}}


/* Audio is deliberately icon-only: theme-independent and unobtrusive. */
.fmt-mf-audio-button{
  position:absolute;right:14px;top:14px;z-index:4;
  width:36px;height:36px;margin:0;padding:0;
  border:0!important;border-radius:999px;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;line-height:1!important;
  text-decoration:none!important;
  box-shadow:none;
  -webkit-appearance:none;appearance:none;
}
.fmt-mf-audio-button:hover,
.fmt-mf-audio-button:focus,
.fmt-mf-audio-button:active{
  border:0!important;text-decoration:none!important;
}
.fmt-mf-audio-icon{display:flex;align-items:center;justify-content:center;line-height:1;}
.fmt-mf-audio-icon svg{width:18px;height:18px;fill:currentColor;}
.fmt-mf-audio-icon--on{display:none;}
.fmt-mf-audio-button.is-playing .fmt-mf-audio-icon--off{display:none;}
.fmt-mf-audio-button.is-playing .fmt-mf-audio-icon--on{display:flex;}
.fmt-mf-audio-element{display:none!important;}
@media (max-width:767px){
  .fmt-mf-audio-button{right:10px;top:10px;}
}

/* 0.2.2 – protect the info close control from Hello Elementor button styles. */
dialog.fmt-mf-info-panel .fmt-mf-info-close{
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  background:rgba(255,255,255,.18)!important;
  color:var(--fmt-close-color,#fff)!important;
  font-family:Arial,sans-serif!important;
  font-size:32px!important;
  font-weight:300!important;
  line-height:1!important;
  text-align:center!important;
  text-decoration:none!important;
  text-indent:0!important;
  letter-spacing:0!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
dialog.fmt-mf-info-panel .fmt-mf-info-close:hover,
dialog.fmt-mf-info-panel .fmt-mf-info-close:focus,
dialog.fmt-mf-info-panel .fmt-mf-info-close:active{
  color:var(--fmt-close-color,#fff)!important;
  background:rgba(255,255,255,.25)!important;
  border:0!important;
  outline-offset:2px;
}

/* 0.2.3 – vaste museale overlaytransparantie:
   88% dekking zodat het onderliggende beeld heel licht zichtbaar blijft. */


/* 0.2.5 – infopaneel: Elementor-kleur direct op het native dialog.
   Fallback is Rijksmuseum-grijs op 88%; moderne browsers gebruiken de gekozen kleur. */
dialog.fmt-mf-info-panel{
  background:rgba(54,55,59,.88);
  background:color-mix(in srgb,var(--fmt-panel-bg,#36373B) 88%,transparent);
}
