.lqip-placeholder.svelte-g7r7pr{filter:blur(20px);transform:scale(1.1)}.main-image.svelte-g7r7pr{opacity:0}.main-image--loaded.svelte-g7r7pr{opacity:1}@media (hover:hover){.photo-card-wrap.svelte-g7r7pr:hover .photo-card:where(.svelte-g7r7pr) .hc-overlay:where(.svelte-g7r7pr){background:#00000026}.photo-card-wrap.svelte-g7r7pr:hover .photo-card:where(.svelte-g7r7pr) .hc-zoom:where(.svelte-g7r7pr){opacity:1;transform:scale(1)}.photo-card-wrap.svelte-g7r7pr:hover .photo-card:where(.svelte-g7r7pr) .hc-slide-up:where(.svelte-g7r7pr){transform:translateY(0)}.photo-card-wrap.svelte-g7r7pr:hover .cart-add-btn:where(.svelte-g7r7pr),.photo-card-wrap.svelte-g7r7pr:focus-within .cart-add-btn:where(.svelte-g7r7pr){opacity:1;transform:translateY(0)}}.cart-add-btn.svelte-g7r7pr:focus-visible{opacity:1;transform:translateY(0)}.photo-card-wrap.svelte-g7r7pr{border-radius:var(--radius-lg)}.ai-tag-chips.svelte-g7r7pr a:where(.svelte-g7r7pr){min-width:1.5rem;min-height:1.5rem;line-height:1rem}.cart-add-btn.svelte-g7r7pr{z-index:3;background:color-mix(in srgb, var(--accent) 92%, transparent);color:var(--bg-primary);cursor:pointer;opacity:0;border:none;border-radius:999px;align-items:center;gap:.3rem;padding:.35rem .55rem;font-size:.68rem;font-weight:600;transition:opacity .2s,transform .2s;display:inline-flex;position:absolute;bottom:.5rem;right:.5rem;transform:translateY(4px);box-shadow:0 2px 8px #00000040}.cart-add-btn.svelte-g7r7pr:hover{filter:brightness(1.08)}@media (hover:none){.cart-add-btn.svelte-g7r7pr{opacity:1;transform:translateY(0)}}.virtual-grid.svelte-1k2fdma{-webkit-overflow-scrolling:touch;contain:strict;width:100%;height:100%;min-height:200px;overflow:hidden auto}.virtual-grid.svelte-1k2fdma:focus-visible{outline:2px solid var(--accent,#b8943f);outline-offset:2px}.virtual-grid__spacer.svelte-1k2fdma{contain:layout style;width:100%}.virtual-grid__cell.svelte-1k2fdma{will-change:transform;contain:layout style}.virtual-grid__cell.svelte-1k2fdma:focus-visible{outline:2px solid var(--accent,#b8943f);outline-offset:2px;z-index:1}.virtual-grid__bottom.svelte-1k2fdma{flex-shrink:0;width:100%}.masonry-grid.svelte-p00ey6{column-count:1;column-gap:6px;width:100%;padding:0}.masonry-item.svelte-p00ey6{break-inside:avoid;border-radius:4px;margin-bottom:6px;overflow:hidden}.masonry-item.svelte-p00ey6 img,.masonry-item.svelte-p00ey6 picture,.masonry-item.svelte-p00ey6 .photo-card{width:100%;display:block}.masonry-item.skeleton-item.svelte-p00ey6{background:var(--bg-secondary);position:relative}.skeleton-shimmer.svelte-p00ey6{will-change:auto;background:linear-gradient(90deg,#0000 0%,#ffffff0d 50%,#0000 100%);animation:1.5s ease-in-out infinite gpu-shimmer;position:absolute;inset:0;transform:translate(-100%)}@media (width>=480px){.masonry-grid.svelte-p00ey6{column-count:2;column-gap:8px}.masonry-item.svelte-p00ey6{margin-bottom:8px}}@media (width>=768px){.masonry-grid.svelte-p00ey6{column-count:2;column-gap:10px}.masonry-item.svelte-p00ey6{border-radius:6px;margin-bottom:10px}}@media (width>=1100px){.masonry-grid.svelte-p00ey6{column-count:3;column-gap:12px}.masonry-item.svelte-p00ey6{margin-bottom:12px}}@media (width>=1600px){.masonry-grid.svelte-p00ey6{column-count:4;column-gap:12px}}.justified-grid.svelte-1kw0mfg{grid-template-columns:1fr;gap:8px;width:100%;display:grid}.justified-item.svelte-1kw0mfg{aspect-ratio:4/3;border-radius:4px;overflow:hidden}.justified-item.svelte-1kw0mfg .photo-card,.justified-item.svelte-1kw0mfg .photo-card img,.justified-item.svelte-1kw0mfg img,.justified-item.svelte-1kw0mfg picture{object-fit:cover;width:100%;height:100%;display:block}.justified-item--skeleton.svelte-1kw0mfg{background:var(--bg-secondary)}@media (width>=560px){.justified-grid.svelte-1kw0mfg{grid-template-columns:repeat(2,1fr);gap:10px}}@media (width>=900px){.justified-grid.svelte-1kw0mfg{grid-template-columns:repeat(3,1fr);gap:12px}}@media (width>=1400px){.justified-grid.svelte-1kw0mfg{grid-template-columns:repeat(4,1fr)}}.scene-nav.svelte-l3tbli{-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;flex-wrap:nowrap;gap:.5rem;margin-bottom:1.25rem;padding-bottom:2px;display:flex;overflow-x:auto}.scene-nav.svelte-l3tbli::-webkit-scrollbar{display:none}.scene-pill.svelte-l3tbli{border:1px solid var(--border);background:color-mix(in srgb, var(--bg-card) 75%, transparent);color:var(--text-secondary);cursor:pointer;border-radius:9999px;flex-shrink:0;align-items:center;gap:.375rem;padding:.4rem .875rem;font-size:.8125rem;font-weight:500;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.scene-pill.svelte-l3tbli:hover{border-color:var(--border-hover);color:var(--text-primary);transform:translateY(-1px)}.scene-pill--active.svelte-l3tbli{background:var(--accent);border-color:var(--accent);color:var(--bg-primary);box-shadow:0 2px 10px -2px color-mix(in srgb, var(--accent) 40%, transparent);font-weight:600}.scene-count.svelte-l3tbli{opacity:.75;font-size:.6875rem}@media (width>=640px){.scene-nav.svelte-l3tbli{flex-wrap:wrap;overflow-x:visible}}.expiry-bar.svelte-xhfwl1{background:color-mix(in srgb, var(--info,#38bdf8) 12%, var(--bg-secondary,#141722));color:var(--text-primary,#f7f4ec);border:1px solid color-mix(in srgb, var(--info,#38bdf8) 28%, transparent);border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:.875rem;padding:.35rem .85rem;font-size:.8125rem;font-weight:500;display:inline-flex}.expiry-bar.svelte-xhfwl1 strong:where(.svelte-xhfwl1){color:var(--accent,#d4af37);font-weight:700}.expiry-bar--urgent.svelte-xhfwl1{background:color-mix(in srgb, var(--warning,#f59e0b) 15%, var(--bg-secondary,#141722));color:var(--warning,#f59e0b);border-color:color-mix(in srgb, var(--warning,#f59e0b) 35%, transparent)}.expiry-bar--expired.svelte-xhfwl1{background:color-mix(in srgb, var(--error,#ef4444) 15%, var(--bg-secondary,#141722));color:var(--error,#ef4444);border-color:color-mix(in srgb, var(--error,#ef4444) 35%, transparent)}.rodo-overlay.svelte-12cefh6{z-index:9999;background:color-mix(in srgb, var(--bg-primary) 55%, #000000b3);justify-content:center;align-items:center;padding:1.25rem 1rem;display:flex;position:fixed;inset:0}.rodo-card.svelte-12cefh6{border-radius:var(--radius-2xl,1.25rem);background:color-mix(in srgb, var(--bg-card) 92%, transparent);border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));width:100%;max-width:440px;box-shadow:0 12px 40px -10px #00000080, 0 0 45px -15px color-mix(in srgb, var(--accent) 15%, transparent);padding:2.25rem 1.875rem 1.75rem;animation:.35s cubic-bezier(.16,1,.3,1) svelte-12cefh6-rodo-fade-up;position:relative}.rodo-header.svelte-12cefh6{text-align:center;flex-direction:column;align-items:center;display:flex}.rodo-icon-wrap.svelte-12cefh6{margin-bottom:.875rem}.rodo-icon.svelte-12cefh6{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 22%, transparent), color-mix(in srgb, var(--accent) 6%, transparent));border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);width:52px;height:52px;color:var(--accent);box-shadow:0 0 20px -4px color-mix(in srgb, var(--accent) 25%, transparent);border-radius:9999px;justify-content:center;align-items:center;display:flex}.rodo-badge.svelte-12cefh6{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent) 22%, transparent);border-radius:9999px;align-items:center;gap:.375rem;margin-bottom:.75rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;display:inline-flex}.rodo-title.svelte-12cefh6{font-family:var(--font-display,inherit);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:.625rem;font-size:1.5rem;font-weight:700;line-height:1.25}.rodo-text.svelte-12cefh6{color:var(--text-secondary);margin-bottom:1.375rem;font-size:.875rem;line-height:1.55}.rodo-form.svelte-12cefh6{flex-direction:column;gap:1.125rem;display:flex}.rodo-field.svelte-12cefh6{flex-direction:column;gap:.4rem;display:flex}.rodo-label.svelte-12cefh6{color:var(--text-secondary);font-size:.8125rem;font-weight:500}.rodo-required.svelte-12cefh6{color:var(--accent);margin-left:.125rem;font-weight:600}.rodo-input-wrap.svelte-12cefh6{align-items:center;display:flex;position:relative}.rodo-input-icon.svelte-12cefh6{pointer-events:none;color:var(--text-muted);justify-content:center;align-items:center;display:flex;position:absolute;left:.875rem}.rodo-input.svelte-12cefh6{border-radius:var(--radius-lg,.75rem);border:1px solid var(--border);background:var(--bg-secondary);width:100%;color:var(--text-primary);font-family:var(--font-sans,inherit);outline:none;padding:.75rem 1rem .75rem 2.5rem;font-size:.875rem;transition:border-color .18s,box-shadow .18s}.rodo-input.svelte-12cefh6::placeholder{color:var(--text-muted)}.rodo-input.svelte-12cefh6:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.rodo-input-wrap--invalid.svelte-12cefh6 .rodo-input:where(.svelte-12cefh6){border-color:var(--error,#ef4444)}.rodo-input.svelte-12cefh6:disabled{opacity:.6;cursor:not-allowed}.rodo-checkboxes.svelte-12cefh6{flex-direction:column;gap:.75rem;padding:.25rem 0;display:flex}.rodo-checkbox-row.svelte-12cefh6{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.625rem;display:flex}.rodo-checkbox.svelte-12cefh6{width:17px;height:17px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:.1875rem}.rodo-checkbox-text.svelte-12cefh6{color:var(--text-secondary);font-size:.8125rem;line-height:1.45}.rodo-link.svelte-12cefh6{color:var(--accent);text-underline-offset:2px;font-weight:500;text-decoration:underline;transition:color .15s}.rodo-link.svelte-12cefh6:hover{color:var(--accent-hover,var(--text-primary))}.rodo-error.svelte-12cefh6{color:var(--error,#ef4444);text-align:center;border-radius:var(--radius-md,.5rem);background:color-mix(in srgb, var(--error,#ef4444) 12%, transparent);border:1px solid color-mix(in srgb, var(--error,#ef4444) 25%, transparent);padding:.5rem .75rem;font-size:.8125rem}.rodo-submit-btn{justify-content:center;width:100%;margin-top:.25rem}.rodo-footnote.svelte-12cefh6{color:var(--text-muted);text-align:center;margin-top:.25rem;font-size:.75rem;line-height:1.45}@keyframes svelte-12cefh6-rodo-fade-up{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.gallery-social.svelte-157mf1r{margin-top:1rem}.gallery-social__label.svelte-157mf1r{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.5rem;font-size:.75rem;font-weight:500}.gallery-social__list.svelte-157mf1r{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.gallery-social__link.svelte-157mf1r{color:var(--accent-text);background:var(--accent-muted);border:1px solid color-mix(in srgb, var(--accent-text) 20%, transparent);border-radius:9999px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:opacity .15s;display:inline-flex}.gallery-social__link.svelte-157mf1r:hover{opacity:.85}.gallery-hero.svelte-4t2p7c{background:var(--bg-primary);border-bottom:1px solid var(--border);position:relative}.gallery-hero__backdrop.svelte-4t2p7c{pointer-events:none;z-index:0;position:absolute;inset:-15%;overflow:hidden}.gallery-hero__backdrop-img.svelte-4t2p7c{object-fit:cover;filter:blur(80px)saturate(1.4)brightness(.22);opacity:.55;width:100%;height:100%;transform:scale(1.15)}.gallery-hero__backdrop-gradient.svelte-4t2p7c{background:radial-gradient(ellipse 90% 70% at 20% 40%, transparent 0%, var(--bg-primary) 75%), linear-gradient(to bottom, transparent 20%, var(--bg-primary) 100%);position:absolute;inset:0}.gallery-badge.svelte-4t2p7c{letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, var(--bg-card) 85%, transparent);border:1px solid var(--border);color:var(--text-muted);border-radius:9999px;align-items:center;padding:.25rem .65rem;font-size:.6875rem;font-weight:600;display:inline-flex}.gallery-badge--category.svelte-4t2p7c{background:var(--accent-muted);border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--accent-text)}.gallery-badge--demo.svelte-4t2p7c{color:#60a5fa;background:#3b82f626;border-color:#3b82f64d}.gallery-author-card.svelte-4t2p7c{border-radius:var(--radius-xl,1rem);background:color-mix(in srgb, var(--bg-card) 80%, transparent);border:1px solid var(--border);align-items:center;gap:.875rem;padding:.75rem 1.125rem;display:flex;box-shadow:0 4px 20px -4px #0003}.gallery-author-card__avatar.svelte-4t2p7c{background:var(--accent-muted);width:2.75rem;height:2.75rem;color:var(--accent-text);border:2px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.gallery-author-card__label.svelte-4t2p7c{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.6875rem;font-weight:600;display:block}.gallery-author-card__name.svelte-4t2p7c{color:var(--text-primary);font-size:.9375rem;font-weight:600;line-height:1.25}.gallery-author-card__meta.svelte-4t2p7c{color:var(--text-muted);margin-top:.125rem;font-size:.75rem}.gallery-toolbar-sticky.svelte-4t2p7c{top:var(--admin-preview-offset,0px);z-index:20;border-radius:var(--radius-xl,1rem);background:color-mix(in srgb, var(--bg-card) 85%, transparent);border:1px solid var(--border);padding:.65rem .875rem;position:sticky;box-shadow:0 4px 20px -4px #00000026}.gallery-actions.svelte-4t2p7c{scrollbar-width:none;-ms-overflow-style:none;flex-shrink:0;align-items:center;gap:.4rem;width:100%;display:flex;overflow-x:auto}.gallery-actions.svelte-4t2p7c::-webkit-scrollbar{display:none}.gallery-action-btn{background:color-mix(in srgb, var(--bg-secondary) 80%, transparent)!important;color:var(--text-primary)!important;border:1px solid var(--border)!important;border-radius:9999px!important;align-items:center!important;gap:.375rem!important;padding:.425rem .85rem!important;font-size:.8125rem!important;font-weight:500!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;display:inline-flex!important}.gallery-action-btn:hover:not(:disabled){background:var(--bg-card)!important;border-color:var(--border-hover)!important;color:var(--text-primary)!important;transform:translateY(-1px)!important;box-shadow:0 2px 8px -2px #0003!important}.gallery-action-btn.btn-brand{background:var(--accent)!important;color:var(--bg-primary)!important;border-color:var(--accent)!important;font-weight:600!important}.gallery-action-btn.btn-brand:hover:not(:disabled){background:var(--accent-hover,var(--accent))!important;color:var(--bg-primary)!important;transform:translateY(-1px)!important}.gallery-action-label{text-overflow:ellipsis;white-space:nowrap;color:inherit;overflow:hidden}@media (width<=639px){.gallery-toolbar-sticky.svelte-4t2p7c{max-width:100vw}.gallery-action-label{display:none}.gallery-action-btn{padding:.5rem}.gallery-actions.svelte-4t2p7c{flex-wrap:nowrap}}@media (width>=640px){.gallery-actions.svelte-4t2p7c{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;width:auto}}.preview-banner.svelte-4t2p7c{z-index:60;border-bottom:1px solid;padding:.55rem 1rem;font-size:.8125rem;line-height:1.4;position:fixed;top:0;left:0;right:0;box-shadow:0 1px #0003}.preview-banner--admin.svelte-4t2p7c{color:#f5f0e8;background:#1a2332;border-color:#f5f0e824}.preview-banner--creator.svelte-4t2p7c{color:#e6f0e7;background:#16231a;border-color:#e6f0e724}.preview-banner__inner.svelte-4t2p7c{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;max-width:72rem;margin:0 auto;display:flex}.preview-banner__text.svelte-4t2p7c{flex-wrap:wrap;align-items:center;gap:.4rem;min-width:0;margin:0;display:flex}.preview-banner__icon{opacity:.85;flex-shrink:0}.preview-banner__hint.svelte-4t2p7c{opacity:.8}.preview-banner__btn.svelte-4t2p7c{color:inherit;white-space:nowrap;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .7rem;font-size:.75rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.preview-banner__btn.svelte-4t2p7c:hover{background:#ffffff1a;border-color:#ffffff59}@media (width>=640px){.gallery-toolbar-sticky.svelte-4t2p7c{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;background:0 0;margin:0;padding:0;position:static}}
