.map-wrapper.svelte-9z4zyn{position:relative;display:flex;width:100%;height:calc(100vh - 8.5rem);min-height:500px}.map-container.svelte-9z4zyn{flex:1;min-width:0;height:100%}.empty-map.svelte-9z4zyn{display:flex;align-items:center;justify-content:center;height:calc(100vh - 12.5rem);color:var(--color-text-muted);font-size:1rem}.map-loc-marker{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:opacity .3s ease;opacity:0;pointer-events:none}.cluster-inner{display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--color-accent) 15%,transparent);border:2px solid color-mix(in srgb,var(--color-accent) 60%,transparent);backdrop-filter:blur(4px);transition:transform .2s ease,border-color .2s ease,background .2s ease}.map-loc-marker:hover .cluster-inner{transform:scale(1.15);border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 25%,transparent)}.cluster-count{font-family:DM Sans,system-ui,sans-serif;font-size:13px;font-weight:600;color:var(--color-text);text-shadow:0 1px 3px rgba(255,255,255,.4)}@media(prefers-color-scheme:dark){.cluster-count{text-shadow:0 1px 3px rgba(0,0,0,.6)}}.map-album-marker{display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:opacity .3s ease;opacity:0;pointer-events:none}.album-inner{display:flex;align-items:center;justify-content:center;border-radius:50%;background:color-mix(in srgb,var(--color-accent) 20%,transparent);border:2px solid var(--color-accent);backdrop-filter:blur(4px);transition:transform .2s ease,background .2s ease}.map-album-marker:hover .album-inner{transform:scale(1.15);background:color-mix(in srgb,var(--color-accent) 35%,transparent)}.album-count{font-family:DM Sans,system-ui,sans-serif;font-size:12px;font-weight:600;color:var(--color-text);text-shadow:0 1px 3px rgba(255,255,255,.4)}@media(prefers-color-scheme:dark){.album-count{text-shadow:0 1px 3px rgba(0,0,0,.6)}}.marker-label{font-family:DM Sans,system-ui,sans-serif;font-size:11px;font-weight:500;color:var(--color-accent);text-shadow:0 1px 4px rgba(255,255,255,.6),0 0 2px rgba(255,255,255,.4);white-space:nowrap;pointer-events:none;margin-top:4px;text-align:center}@media(prefers-color-scheme:dark){.marker-label{text-shadow:0 1px 4px rgba(0,0,0,.8),0 0 2px rgba(0,0,0,.9)}}.panel-backdrop.svelte-9z4zyn{display:none;position:absolute;inset:0;background:#00000080;z-index:1000}.side-panel.svelte-9z4zyn{width:0;height:100%;background:color-mix(in srgb,var(--color-bg) 92%,transparent);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid transparent;overflow:hidden;display:flex;flex-direction:column;font-family:DM Sans,system-ui,sans-serif;transition:width .3s cubic-bezier(.4,0,.2,1),border-color .3s ease;flex-shrink:0}.side-panel.open.svelte-9z4zyn{width:400px;border-left-color:color-mix(in srgb,var(--color-accent) 10%,transparent)}.panel-close.svelte-9z4zyn{position:absolute;top:16px;right:16px;z-index:2;background:color-mix(in srgb,var(--color-text) 6%,transparent);backdrop-filter:blur(8px);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);cursor:pointer;transition:all .2s ease}.panel-close.svelte-9z4zyn:hover{color:var(--color-text);background:color-mix(in srgb,var(--color-text) 12%,transparent)}.panel-content.svelte-9z4zyn{overflow-y:auto;padding:24px 20px;flex:1}.panel-header.svelte-9z4zyn{margin-bottom:24px;padding-right:40px}.panel-title.svelte-9z4zyn{font-size:20px;font-weight:600;color:var(--color-accent);margin:0 0 4px;letter-spacing:.01em}.panel-count.svelte-9z4zyn{font-size:13px;color:var(--color-text-muted)}.panel-section.svelte-9z4zyn{margin-bottom:24px}.panel-section-title.svelte-9z4zyn{font-size:10px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px}.album-link.svelte-9z4zyn{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;margin-bottom:4px;border-radius:6px;background:color-mix(in srgb,var(--color-text) 3%,transparent);border:1px solid color-mix(in srgb,var(--color-text) 4%,transparent);text-decoration:none;transition:all .2s ease}.album-link.svelte-9z4zyn:hover{background:color-mix(in srgb,var(--color-accent) 8%,transparent);border-color:color-mix(in srgb,var(--color-accent) 15%,transparent)}.album-name.svelte-9z4zyn{font-size:14px;color:var(--color-text);font-weight:500}.album-badge.svelte-9z4zyn{font-size:12px;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-text) 5%,transparent);padding:2px 8px;border-radius:10px}.album-link.locked.svelte-9z4zyn{opacity:.6;cursor:default}.lock-icon-inline.svelte-9z4zyn{width:13px;height:13px;display:inline-block;vertical-align:-1px;margin-right:4px;color:var(--color-text-muted)}.lock-tile.svelte-9z4zyn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 16px;margin-bottom:8px;border-radius:8px;background:color-mix(in srgb,var(--color-text) 4%,transparent);border:1px dashed color-mix(in srgb,var(--color-text) 12%,transparent);cursor:pointer;transition:all .2s ease}.lock-tile.svelte-9z4zyn:hover{background:color-mix(in srgb,var(--color-accent) 6%,transparent);border-color:color-mix(in srgb,var(--color-accent) 25%,transparent)}.lock-tile-icon.svelte-9z4zyn{width:24px;height:24px;color:var(--color-text-muted)}.lock-tile-label.svelte-9z4zyn{font-size:14px;font-weight:500;color:var(--color-text)}.lock-tile-count.svelte-9z4zyn{font-size:12px;color:var(--color-text-muted)}.lock-tile-expanded.svelte-9z4zyn{padding:16px;margin-bottom:8px;border-radius:8px;background:color-mix(in srgb,var(--color-text) 4%,transparent);border:1px solid color-mix(in srgb,var(--color-text) 10%,transparent)}.lock-tile-header.svelte-9z4zyn{display:flex;align-items:center;gap:8px;margin-bottom:8px}.lock-icon.svelte-9z4zyn{width:16px;height:16px;color:var(--color-text-muted);flex-shrink:0}.lock-tile-name.svelte-9z4zyn{font-size:14px;font-weight:500;color:var(--color-text)}.lock-tile-hint.svelte-9z4zyn{font-size:12px;color:var(--color-text-muted);margin:0 0 10px}.lock-tile-form.svelte-9z4zyn{display:flex;gap:6px}.lock-tile-input.svelte-9z4zyn{flex:1;padding:7px 10px;border-radius:5px;border:1px solid color-mix(in srgb,var(--color-text) 12%,transparent);background:color-mix(in srgb,var(--color-bg) 80%,transparent);color:var(--color-text);font-size:13px;font-family:inherit;outline:none;transition:border-color .2s ease}.lock-tile-input.svelte-9z4zyn:focus{border-color:var(--color-accent)}.lock-tile-input.svelte-9z4zyn::placeholder{color:var(--color-text-muted);opacity:.6}.lock-tile-submit.svelte-9z4zyn{padding:7px 14px;border-radius:5px;border:1px solid color-mix(in srgb,var(--color-accent) 40%,transparent);background:color-mix(in srgb,var(--color-accent) 10%,transparent);color:var(--color-accent);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;white-space:nowrap}.lock-tile-submit.svelte-9z4zyn:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent) 20%,transparent);border-color:var(--color-accent)}.lock-tile-submit.svelte-9z4zyn:disabled{opacity:.5;cursor:not-allowed}.lock-tile-error.svelte-9z4zyn{font-size:12px;color:#d42020;margin:8px 0 0}.masonry-grid.svelte-9z4zyn{position:relative}.masonry-item.svelte-9z4zyn{display:block;overflow:hidden;border-radius:6px;border:1px solid color-mix(in srgb,var(--color-accent) 15%,transparent);transition:transform .2s ease,box-shadow .2s ease}.masonry-item.svelte-9z4zyn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.masonry-item.svelte-9z4zyn img:where(.svelte-9z4zyn){display:block;width:100%;height:auto;transition:transform .2s ease}.masonry-item.svelte-9z4zyn:hover img:where(.svelte-9z4zyn){transform:scale(1.05)}@media(max-width:768px){.panel-backdrop.svelte-9z4zyn{display:block}.side-panel.svelte-9z4zyn{position:absolute;top:0;right:0;bottom:0;width:0;z-index:1001}.side-panel.open.svelte-9z4zyn{width:100%}}
