/* Interdigitale AddVisualSet — central modal presentation */
/* Only presentation changes: the same nodes, requests and infinite-scroll state are used. */
[data-panel-layout="center"] .avs-panel:not([hidden]) {
  top:50%;left:50%;right:auto;bottom:auto;
  width:max-content;max-width:max-content;min-width:0;
  height:min(600px, calc(100dvh - 24px));max-height:600px;
  padding:24px 30px;border-radius:18px;
  box-shadow:0 16px 65px rgba(0,0,0,.23);
  background:var(--avs-center-panel-background,#fff8fa);
  animation:avs-center-enter .22s ease-out both;
}
[data-panel-layout="center"] .avs-panel.avs-closing:not([hidden]) {
  animation:avs-center-leave .22s ease-in both;
}
[data-panel-layout="center"] .avs-panel .avs-grid {
  grid-template-columns:repeat(4,minmax(125px,145px));gap:10px;
}
@keyframes avs-center-enter {
  from{opacity:0;transform:translate(-50%,-48%) scale(.975)}
  to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}
@keyframes avs-center-leave {
  from{opacity:1;transform:translate(-50%,-50%) scale(1)}
  to{opacity:0;transform:translate(-50%,-48%) scale(.975)}
}
@media(max-width:640px){
 [data-panel-layout="center"] .avs-panel:not([hidden]){padding:16px;width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:min(600px,calc(100dvh - 16px))}
 [data-panel-layout="center"] .avs-panel .avs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){
 [data-panel-layout="center"] .avs-panel:not([hidden]),
 [data-panel-layout="center"] .avs-panel.avs-closing:not([hidden]){animation:none;transform:translate(-50%,-50%)}
}

/* Central modal: fixed dimensions from first paint; scroll the page underneath. */
body.avs-modal-open { overflow-y:auto !important; }
[data-panel-layout="center"] .avs-overlay:not([hidden]) { touch-action:auto; }

@media (min-width:641px) and (max-width:760px){
 [data-panel-layout="center"] .avs-panel:not([hidden]){width:calc(100vw - 24px);max-width:calc(100vw - 24px)}
 [data-panel-layout="center"] .avs-panel .avs-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* Override the desktop four-column layout on mobile, including the centered modal. */
@media (max-width: 640px) {
    [data-panel-layout="center"] .avs-panel:not([hidden]) {
        box-sizing: border-box;
        width: 100vw;
        max-width: 100vw;
        min-width: 0;
        padding: 16px;
        border-radius: 0;
        max-height: 100dvh;
        height: min(600px, 100dvh);
    }
    [data-panel-layout="center"] .avs-panel .avs-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }
}
