.gallery-container.svelte-ff679h.svelte-ff679h{width:100%;padding:2rem 0}.loading.svelte-ff679h.svelte-ff679h,.error.svelte-ff679h.svelte-ff679h,.empty.svelte-ff679h.svelte-ff679h{text-align:center;padding:3rem;color:#666}.spinner.svelte-ff679h.svelte-ff679h{width:50px;height:50px;margin:0 auto 1rem;border:4px solid #f0f0f0;border-top:4px solid #1b995a;border-radius:50%;animation:svelte-ff679h-spin 1s linear infinite}@keyframes svelte-ff679h-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error.svelte-ff679h p.svelte-ff679h{color:#e74c3c;margin-bottom:1rem}.btn-retry.svelte-ff679h.svelte-ff679h{background:#1b995a;color:#fff;padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s}.btn-retry.svelte-ff679h.svelte-ff679h:hover{background:#157a48}.photo-grid.svelte-ff679h.svelte-ff679h{display:grid;grid-template-columns:repeat(var(--columns, 4),1fr);gap:0}.photo-item.svelte-ff679h.svelte-ff679h{position:relative;width:100%;padding-top:100%;overflow:hidden;cursor:pointer;background:#f0f0f0}.photo-item.svelte-ff679h img.svelte-ff679h{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.photo-item.svelte-ff679h:hover img.svelte-ff679h{transform:scale(1.1)}.photo-overlay.svelte-ff679h.svelte-ff679h{position:absolute;top:0;left:0;right:0;bottom:0;background:#1b995acc;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease}.photo-item.svelte-ff679h:hover .photo-overlay.svelte-ff679h{opacity:1}.photo-overlay.svelte-ff679h span.svelte-ff679h{font-size:3rem}.button-container.svelte-ff679h.svelte-ff679h{text-align:center;margin-top:2rem}.btn-more.svelte-ff679h.svelte-ff679h,.btn-less.svelte-ff679h.svelte-ff679h{background:#1b995a;color:#fff;padding:1rem 2.5rem;border:none;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s;box-shadow:0 4px 12px #1b995a4d}.btn-more.svelte-ff679h.svelte-ff679h:hover,.btn-less.svelte-ff679h.svelte-ff679h:hover{background:#157a48;transform:translateY(-2px);box-shadow:0 6px 16px #1b995a80}.btn-less.svelte-ff679h.svelte-ff679h{background:#666}.btn-less.svelte-ff679h.svelte-ff679h:hover{background:#555}.modal-overlay.svelte-ff679h.svelte-ff679h{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:svelte-ff679h-fadeIn .3s ease}@keyframes svelte-ff679h-fadeIn{0%{opacity:0}to{opacity:1}}.modal-content.svelte-ff679h.svelte-ff679h{background:#fff;border-radius:12px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;position:relative;animation:svelte-ff679h-slideUp .3s ease}@keyframes svelte-ff679h-slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.close-button.svelte-ff679h.svelte-ff679h{position:absolute;top:1rem;right:1rem;background:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;color:#666;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;z-index:10;box-shadow:0 2px 8px #0000004d}.close-button.svelte-ff679h.svelte-ff679h:hover{background:#1b995a;color:#fff;transform:rotate(90deg)}.modal-image.svelte-ff679h.svelte-ff679h{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:3rem 2rem 2rem}.modal-image.svelte-ff679h img.svelte-ff679h{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px}.modal-footer.svelte-ff679h.svelte-ff679h{padding:1.5rem 2rem;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;gap:1rem}@media (max-width: 1024px){.photo-grid.svelte-ff679h.svelte-ff679h{grid-template-columns:repeat(3,1fr)!important}}@media (max-width: 768px){.photo-grid.svelte-ff679h.svelte-ff679h{grid-template-columns:repeat(2,1fr)!important}.modal-image.svelte-ff679h.svelte-ff679h{padding:2rem 1rem 1rem}.modal-footer.svelte-ff679h.svelte-ff679h{flex-direction:column;align-items:stretch}}@media (max-width: 480px){.photo-grid.svelte-ff679h.svelte-ff679h{grid-template-columns:repeat(2,1fr)!important}}
