/* S Media Gallery frontend */
.smg-wrap{width:100%;box-sizing:border-box}
.smg-view-trigger{
  width:100%;display:flex;align-items:center;justify-content:space-between;
  border:0;background:#00AD94;color:#fff;padding:14px 18px;border-radius:8px;
  font-size:16px;font-weight:700;cursor:pointer;box-sizing:border-box;
}
.smg-chevron{font-size:22px;line-height:1;transition:transform .2s}
.smg-view-trigger[aria-expanded="true"] .smg-chevron{transform:rotate(180deg)}
.smg-panel{padding-top:14px}
.smg-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:thin}
.smg-tab{
  flex:0 0 auto;border:1px solid #e5e7eb;background:#f7f7f7;color:#333;
  padding:10px 15px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;
}
.smg-tab.is-active{background:#00AD94;color:#fff;border-color:#00AD94}
.smg-description{margin:0 0 10px;color:#666;font-size:14px}
.smg-grid{
  display:grid;grid-template-columns:repeat(var(--smg-cols),minmax(0,1fr));
  gap:10px;min-height:10px
}
.smg-card{
  position:relative;display:block;padding:0;border:0;border-radius:7px;overflow:hidden;
  aspect-ratio:3/2;background:#eee;cursor:pointer;box-shadow:none;
}
.smg-thumb{display:block;width:100%;height:100%;object-fit:cover}
.smg-play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:38px;height:38px;border-radius:50%;background:rgba(0,0,0,.68);color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:15px;padding-left:2px
}
.smg-video-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;background:#222;font-size:28px}
.smg-loading{text-align:center;padding:18px;color:#777;font-size:14px}
.smg-load-more{
  display:block;margin:16px auto 0;border:1px solid #00AD94;background:#fff;color:#00AD94;
  border-radius:6px;padding:9px 16px;cursor:pointer;font-weight:600
}
.smg-lightbox{
  position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;
}
.smg-lightbox[hidden],.smg-panel[hidden],.smg-category-panel[hidden],.smg-load-more[hidden],.smg-loading[hidden]{display:none!important}
.smg-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.86)}
.smg-viewer{position:relative;z-index:2;width:min(94vw,1200px);height:min(92vh,900px);display:flex;align-items:center;justify-content:center}
.smg-media-stage{max-width:88%;max-height:84%;display:flex;align-items:center;justify-content:center}
.smg-media-stage img,.smg-media-stage video{display:block;max-width:100%;max-height:80vh;width:auto;height:auto;object-fit:contain;border-radius:4px}
.smg-close,.smg-prev,.smg-next{
  position:absolute;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(20,20,20,.62);
  color:#fff;
  cursor:pointer;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  margin:0;
  font-family:Arial,sans-serif;
  font-weight:400;
  box-shadow:0 2px 12px rgba(0,0,0,.28);
  transition:background .15s ease,transform .15s ease,opacity .15s ease;
  -webkit-tap-highlight-color:transparent;
  box-sizing:border-box;
}
.smg-close{
  right:0;
  top:0;
  width:40px;
  height:40px;
  border-radius:50%;
}
.smg-prev,.smg-next{
  top:50%;
  width:44px;
  height:56px;
  border-radius:10px;
}
.smg-prev{left:0;transform:translateY(-50%)}
.smg-next{right:0;transform:translateY(-50%)}
.smg-icon{
  display:block;
  flex:0 0 auto;
  width:24px;
  height:24px;
  margin:0;
  padding:0;
  overflow:visible;
  pointer-events:none;
}
.smg-icon path{
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.smg-icon-close{width:27px;height:27px}
.smg-icon-arrow{width:31px;height:31px}
.smg-close:hover,.smg-prev:hover,.smg-next:hover{background:rgba(20,20,20,.86)}
.smg-close:active{transform:scale(.94)}
.smg-prev:active{transform:translateY(-50%) scale(.94)}
.smg-next:active{transform:translateY(-50%) scale(.94)}
.smg-close:focus-visible,.smg-prev:focus-visible,.smg-next:focus-visible{
  outline:2px solid #fff;
  outline-offset:2px;
}

.smg-caption{
  position:absolute;left:50%;bottom:0;transform:translateX(-50%);max-width:80%;
  color:#fff;background:rgba(0,0,0,.55);padding:7px 12px;border-radius:5px;
  font-size:13px;text-align:center
}
.smg-no-scroll{overflow:hidden}
.smg-admin-empty{padding:12px;background:#fff3cd;border-left:4px solid #ffb000}

@media(max-width:767px){
  .smg-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
  .smg-tabs{gap:6px}
  .smg-tab{padding:8px 11px;font-size:13px}
  .smg-viewer{width:100vw;height:92vh}
  .smg-media-stage{max-width:82%}
  .smg-prev,.smg-next{width:40px;height:52px;border-radius:9px}
  .smg-close{right:8px;top:6px;width:38px;height:38px}
  .smg-caption{bottom:6px;font-size:12px}
}

