.ggp-gallery{margin:2rem 0;padding:clamp(18px,3vw,36px);border:1px solid #24b9ed;border-radius:20px;background:#080e1d;color:#f4f7fc}.ggp-gallery h2{margin:0 0 .6rem;font-size:clamp(1.5rem,3vw,2.3rem)}.ggp-gallery p{line-height:1.6;color:#c8d4e5}.ggp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px;margin-top:24px}.ggp-card{display:block;border:1px solid #35506b;border-radius:12px;overflow:hidden;background:#02050d;color:#fff;text-decoration:none}.ggp-card:focus-visible,.ggp-viewer a:focus-visible,.ggp-viewer button:focus-visible{outline:3px solid #ffd45e;outline-offset:4px}.ggp-card:hover{border-color:#ffd45e}.ggp-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#000}.ggp-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;font-size:1rem}.ggp-open{color:#52d2ff;font-size:.85rem}.ggp-viewer{box-sizing:border-box;width:min(96vw,1700px);max-width:96vw;max-height:96vh;padding:16px;border:1px solid #24b9ed;border-radius:16px;background:#080e1d;color:#fff;overflow:auto}.ggp-viewer::backdrop{background:#000d}.ggp-viewer:not([open]){display:none}.ggp-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between;margin-bottom:14px}.ggp-toolbar button{padding:10px 16px;border:1px solid #526884;border-radius:8px;background:#122138;color:#fff;cursor:pointer;font:inherit;min-height:44px}.ggp-toolbar a{color:#52d2ff}.ggp-image{display:block;width:100%;height:auto;max-height:76vh;object-fit:contain;background:#000}.ggp-nav{display:flex;gap:10px;justify-content:center;margin-top:12px}.ggp-note{font-size:.9rem}@media(max-width:480px){.ggp-gallery{padding:16px}.ggp-grid{gap:14px}.ggp-caption{padding:12px}.ggp-viewer{padding:10px}}