.gtw-pg-pro{position:relative;width:100%;
  --gtwpg-height:760px;--gtwpg-thumb:70px;--gtwpg-accent:#0A4535;
  --gtwpg-thumbs-bg:rgba(255,255,255,.92);--gtwpg-actions-bg:rgba(255,255,255,.96);
  --gtwpg-actions-icon:#0A4535;--gtwpg-actions-icon-size:20px;--gtwpg-back-bg:#fff;--gtwpg-back-text:#111;--gtwpg-counter:#fff;
  --gtwpg-container-max:1120px;--gtwpg-edge-pad:18px;
}
.gtwpg-main{position:relative;height:var(--gtwpg-height);border-radius:0;overflow:hidden;background:#031711;isolation:isolate;}
.gtwpg-main::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.02) 22%,rgba(0,0,0,.15) 100%);}
.gtwpg-back{position:absolute;top:22px;left:max(var(--gtwpg-edge-pad), calc((100vw - var(--gtwpg-container-max)) / 2 + var(--gtwpg-edge-pad)));z-index:40;border:1px solid rgba(14,64,50,.08);background:var(--gtwpg-back-bg);color:var(--gtwpg-back-text);
  font-size:15px;font-weight:500;padding:10px 16px;border-radius:12px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  box-shadow:0 10px 24px rgba(8,43,34,.14);transition:transform .2s ease,box-shadow .2s ease,background .2s ease;}
.gtwpg-back:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(8,43,34,.18);}
.gtwpg-back-ico{font-size:18px;line-height:1}
.gtwpg-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:30;width:44px;height:44px;border-radius:999px;background:rgba(255,255,255,.94);
  color:#135745;display:flex;align-items:center;justify-content:center;cursor:pointer;user-select:none;font-size:30px;line-height:1;
  box-shadow:0 14px 30px rgba(8,43,34,.16);border:1px solid rgba(13,73,57,.10);padding:0;transition:transform .2s ease,background .2s ease,color .2s ease;}
.gtwpg-nav:hover{background:#fff;color:var(--gtwpg-accent);transform:translateY(-50%) scale(1.04);}
.gtwpg-prev{left:max(14px, calc((100vw - var(--gtwpg-container-max)) / 2 + 14px))}
.gtwpg-next{right:max(14px, calc((100vw - var(--gtwpg-container-max)) / 2 + 14px))}
.gtwpg-count{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:35;color:var(--gtwpg-counter);
  font-size:14px;font-weight:600;padding:7px 12px;border-radius:999px;background:rgba(7,37,29,.42);backdrop-filter:blur(6px);
  box-shadow:0 8px 20px rgba(0,0,0,.16);text-shadow:none;}
.gtwpg-sep{opacity:.75}

.gtwpg-slides{position:absolute;inset:0;z-index:0;}
.gtwpg-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .28s ease;}
.gtwpg-slide.is-active{opacity:1;pointer-events:auto;}
.gtwpg-link,.gtwpg-slide img,.gtwpg-slide-image{display:block;width:100%;height:100%}
.gtwpg-slide img,.gtwpg-slide-image{object-fit:cover;object-position:center 40%;image-rendering:auto;}

.gtwpg-thumbs{position:absolute;bottom:18px;left:max(var(--gtwpg-edge-pad), calc((100vw - var(--gtwpg-container-max)) / 2 + var(--gtwpg-edge-pad)));z-index:35;max-width:min(420px,calc(var(--gtwpg-container-max) - 140px),calc(100% - 110px));}
.gtwpg-thumbs-inner{padding:0;display:flex;gap:10px;max-width:100%;overflow:auto;background:transparent;box-shadow:none;scrollbar-width:none;}
.gtwpg-thumbs-inner::-webkit-scrollbar{display:none}
.gtwpg-thumb{position:relative;width:var(--gtwpg-thumb);height:var(--gtwpg-thumb);border-radius:14px;overflow:hidden;border:2px solid transparent;box-sizing:border-box;cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,opacity .2s ease;background:#fff;padding:0;flex:0 0 auto;
  box-shadow:0 10px 24px rgba(8,43,34,.18);opacity:.92;}
.gtwpg-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(0,0,0,.12) 100%);pointer-events:none;}
.gtwpg-thumb:hover,.gtwpg-thumb.is-active{border-color:var(--gtwpg-accent);transform:translateY(-2px);opacity:1;box-shadow:0 14px 28px rgba(8,43,34,.22);}
.gtwpg-thumb img{width:100%;height:100%;object-fit:cover;display:block;}

.gtwpg-actions{position:absolute;top:20px;right:max(var(--gtwpg-edge-pad), calc((100vw - var(--gtwpg-container-max)) / 2 + var(--gtwpg-edge-pad)));z-index:40;display:flex;gap:10px;}
.gtwpg-action{width:48px;height:48px;border-radius:999px;border:1px solid rgba(13,73,57,.10);background:var(--gtwpg-actions-bg);color:var(--gtwpg-actions-icon);
  display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 12px 24px rgba(8,43,34,.14);padding:0;
  backdrop-filter:blur(8px);transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease;line-height:0;}
.gtwpg-action:hover{transform:translateY(-1px);box-shadow:0 16px 28px rgba(8,43,34,.18);background:#fff;color:var(--gtwpg-accent);}
.gtwpg-action svg{width:calc(var(--gtwpg-actions-icon-size) + 2px);height:calc(var(--gtwpg-actions-icon-size) + 2px);display:block;overflow:visible;}
.gtwpg-action svg *{vector-effect:non-scaling-stroke;}
.gtwpg-fav svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.gtwpg-share svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;}
.gtwpg-fav.is-active{background:var(--gtwpg-accent);color:#fff;border-color:transparent;}

.gtwpg-toast{position:absolute;left:50%;bottom:calc(18px + var(--gtwpg-thumb) + 24px);transform:translateX(-50%);
  z-index:50;background:rgba(7,37,29,.78);color:#fff;font-size:13px;padding:9px 14px;border-radius:999px;opacity:0;pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;backdrop-filter:blur(6px);}
.gtwpg-toast.is-show{opacity:1;transform:translateX(-50%) translateY(-2px);}

@media (min-width:1025px){
  .gtwpg-main{height:max(var(--gtwpg-height), min(72vh, 860px))}
}

@media (max-width:1024px){
  .gtwpg-main{height:min(var(--gtwpg-height),620px)}
}

@media (max-width:768px){
  .gtwpg-main{height:min(var(--gtwpg-height),520px)}
  .gtwpg-nav{width:40px;height:40px;font-size:24px}
  .gtwpg-actions{top:14px;right:14px}
  .gtwpg-action{width:42px;height:42px}
  .gtwpg-back{top:14px;left:14px;padding:9px 14px;font-size:14px}
  .gtwpg-thumbs{bottom:14px;left:14px;max-width:calc(100% - 92px)}
  .gtwpg-thumb{border-radius:12px}
  .gtwpg-count{bottom:14px;padding:6px 10px;font-size:13px}
}
