.text-justify.svelte-15lk0py{text-align:justify}.card.svelte-15lk0py{border:2px solid #7a1f1f;border-radius:15px;box-shadow:0 4px 12px #0000001a}.card-title.svelte-15lk0py{color:#7a1f1f;font-weight:700}h2.svelte-15lk0py{color:#7a1f1f}.category-link.svelte-15lk0py{background:none;border:none;color:#7a1f1f;text-decoration:none;display:flex;align-items:center;width:100%;padding:.75rem 1rem;border-radius:8px;transition:all .3s ease;font-size:.95rem;font-weight:500}.category-link.svelte-15lk0py:focus{outline:3px solid #7a1f1f;outline-offset:2px}.category-link.svelte-15lk0py:focus-visible{outline:3px solid #7a1f1f;outline-offset:2px}.category-link.svelte-15lk0py:hover{background-color:#7a1f1f1a;transform:translate(5px)}.category-link.active.svelte-15lk0py{background-color:#7a1f1f;color:#fff;font-weight:600;box-shadow:0 2px 8px #7a1f1f4d}.category-link.active.svelte-15lk0py:hover{background-color:#5a1515;transform:translate(5px)}.category-link.svelte-15lk0py i:where(.svelte-15lk0py){width:20px;text-align:center}.category-title-section.svelte-15lk0py{text-align:center;padding:2rem 0;border-bottom:2px solid rgba(122,31,31,.2)}.category-title.svelte-15lk0py{color:#7a1f1f;font-size:2rem;font-weight:700;margin-bottom:.5rem;display:flex;align-items:center;justify-content:center}.category-title.svelte-15lk0py i:where(.svelte-15lk0py){font-size:2.2rem;margin-right:1rem;color:#7a1f1f}.sr-only.svelte-15lk0py{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.category-subtitle.svelte-15lk0py{color:#666;font-size:1.1rem;font-style:italic;margin-top:.5rem}.login-notice.svelte-15lk0py .alert:where(.svelte-15lk0py){border:2px solid #ffc107;border-radius:12px;background:linear-gradient(135deg,#fff3cd,#ffeaa7);box-shadow:0 4px 15px #ffc10733}.login-notice.svelte-15lk0py .alert-heading:where(.svelte-15lk0py){color:#856404;font-weight:600;font-size:1.2rem}.login-notice.svelte-15lk0py .alert:where(.svelte-15lk0py) p:where(.svelte-15lk0py){color:#856404;font-size:1rem;margin-bottom:0}.login-notice.svelte-15lk0py .btn-primary:where(.svelte-15lk0py){background-color:#7a1f1f;border-color:#7a1f1f;font-weight:600;padding:.75rem 1.5rem;border-radius:8px;transition:all .3s ease}.login-notice.svelte-15lk0py .btn-primary:where(.svelte-15lk0py):hover{background-color:#5a1515;border-color:#5a1515;transform:translateY(-2px);box-shadow:0 4px 12px #7a1f1f4d}.login-notice.svelte-15lk0py .btn-outline-primary:where(.svelte-15lk0py){color:#7a1f1f;border-color:#7a1f1f;font-weight:600;padding:.75rem 1.5rem;border-radius:8px;transition:all .3s ease}.login-notice.svelte-15lk0py .btn-outline-primary:where(.svelte-15lk0py):hover{background-color:#7a1f1f;border-color:#7a1f1f;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #7a1f1f4d}.login-notice.svelte-15lk0py i.fa-lock:where(.svelte-15lk0py){font-size:2rem;color:#856404}.masonry-gallery.svelte-15lk0py{columns:4;column-gap:20px;margin-top:2rem;column-fill:balance}.gallery-item.svelte-15lk0py{break-inside:avoid;page-break-inside:avoid;margin-bottom:20px;border-radius:12px;overflow:hidden;box-shadow:0 4px 15px #0000001a;transition:transform .3s ease,box-shadow .3s ease;position:relative;cursor:pointer;display:inline-block;width:100%;vertical-align:top}.download-btn.svelte-15lk0py{position:absolute;bottom:10px;right:10px;background-color:#7a1f1fe6;color:#fff;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .3s ease,transform .3s ease,background-color .3s ease;z-index:20;box-shadow:0 2px 8px #0000004d;font-size:1rem}.download-btn.svelte-15lk0py:focus{outline:3px solid #7a1f1f;outline-offset:2px;opacity:1}.download-btn.svelte-15lk0py:focus-visible{outline:3px solid #7a1f1f;outline-offset:2px;opacity:1}.gallery-item.svelte-15lk0py:hover .download-btn:where(.svelte-15lk0py){opacity:1;transform:scale(1.1)}.download-btn.svelte-15lk0py:hover{background-color:#5a1515;transform:scale(1.15);box-shadow:0 4px 12px #0006}.download-btn.svelte-15lk0py:active{transform:scale(1.05)}.download-btn.svelte-15lk0py i:where(.svelte-15lk0py){font-size:1rem}.gallery-item.svelte-15lk0py:hover{transform:translateY(-8px);box-shadow:0 12px 30px #7a1f1f40;z-index:10}.gallery-item.svelte-15lk0py a:where(.svelte-15lk0py){text-decoration:none;display:block;width:100%;height:100%}.gallery-item.svelte-15lk0py a:where(.svelte-15lk0py):focus{outline:3px solid #7a1f1f;outline-offset:2px;border-radius:12px}.gallery-item.svelte-15lk0py a:where(.svelte-15lk0py):focus-visible{outline:3px solid #7a1f1f;outline-offset:2px;border-radius:12px}.gallery-item.svelte-15lk0py img:where(.svelte-15lk0py){width:100%;height:auto;display:block;object-fit:cover;border-radius:12px;transition:transform .3s ease}.gallery-item.svelte-15lk0py:hover img:where(.svelte-15lk0py){transform:scale(1.05)}.placeholder-image.svelte-15lk0py{min-height:200px;display:flex;align-items:center;justify-content:center}.placeholder-content.svelte-15lk0py{text-align:center;color:#fff;padding:20px}.placeholder-content.svelte-15lk0py i:where(.svelte-15lk0py){font-size:3rem;margin-bottom:1rem;opacity:.9}.placeholder-content.svelte-15lk0py p:where(.svelte-15lk0py){font-size:1.1rem;font-weight:600;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.loading-state.svelte-15lk0py,.error-state.svelte-15lk0py,.empty-state.svelte-15lk0py{column-span:all;text-align:center;padding:4rem 2rem;color:#7a1f1f}.loading-state.svelte-15lk0py i:where(.svelte-15lk0py),.error-state.svelte-15lk0py i:where(.svelte-15lk0py),.empty-state.svelte-15lk0py i:where(.svelte-15lk0py){font-size:3rem;margin-bottom:1rem}.loading-state.svelte-15lk0py i:where(.svelte-15lk0py){animation:svelte-15lk0py-spin 1s linear infinite;color:#7a1f1f}.error-state.svelte-15lk0py,.error-state.svelte-15lk0py i:where(.svelte-15lk0py){color:#dc3545}.empty-state.svelte-15lk0py i:where(.svelte-15lk0py){color:#7a1f1f}.empty-state.svelte-15lk0py p:where(.svelte-15lk0py){font-size:1.2rem;margin:.5rem 0}.empty-subtitle.svelte-15lk0py{font-size:.9rem;color:#666;font-style:italic}@keyframes svelte-15lk0py-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1400px){.masonry-gallery.svelte-15lk0py{columns:4;column-gap:18px}}@media (max-width: 1200px){.masonry-gallery.svelte-15lk0py{columns:3;column-gap:18px}}@media (max-width: 992px){.masonry-gallery.svelte-15lk0py{columns:3;column-gap:15px}}@media (max-width: 768px){.masonry-gallery.svelte-15lk0py{columns:2;column-gap:15px}.gallery-item.svelte-15lk0py{margin-bottom:15px}.gallery-item.svelte-15lk0py:hover{transform:translateY(-5px)}.download-btn.svelte-15lk0py{width:36px;height:36px;bottom:8px;right:8px;opacity:1}.download-btn.svelte-15lk0py i:where(.svelte-15lk0py){font-size:.9rem}.placeholder-content.svelte-15lk0py i:where(.svelte-15lk0py){font-size:2.5rem}.placeholder-content.svelte-15lk0py p:where(.svelte-15lk0py){font-size:1rem}}@media (max-width: 576px){.masonry-gallery.svelte-15lk0py{columns:1;column-gap:10px}.gallery-item.svelte-15lk0py{margin-bottom:12px}.gallery-item.svelte-15lk0py:hover{transform:translateY(-3px)}.download-btn.svelte-15lk0py{width:32px;height:32px;bottom:6px;right:6px;opacity:1}.download-btn.svelte-15lk0py i:where(.svelte-15lk0py){font-size:.8rem}.placeholder-content.svelte-15lk0py i:where(.svelte-15lk0py){font-size:2rem}.placeholder-content.svelte-15lk0py p:where(.svelte-15lk0py){font-size:.9rem}}
