.photo-modal-wrapper.svelte-1pcscmi{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:32px 24px;pointer-events:none;overflow:hidden}.photo-modal-wrapper.open.svelte-1pcscmi{pointer-events:auto}.photo-backdrop.svelte-1pcscmi{position:absolute;inset:0;background:var(--surface-overlay);cursor:pointer;pointer-events:none;opacity:0}.photo-modal-wrapper.open.svelte-1pcscmi .photo-backdrop:where(.svelte-1pcscmi){pointer-events:auto}.photo-modal.svelte-1pcscmi{position:relative;width:100%;max-width:1280px;max-height:calc(100dvh - 48px);background:linear-gradient(#f9f7f199,#f9f7f199),url(/textures/parchment-grain.webp) 0 0 / 950px repeat var(--color-parchment);border:1px solid var(--color-parchment-edge);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);display:flex;flex-direction:column;padding:var(--space-7) var(--space-6) var(--space-5);gap:var(--space-4);z-index:1;pointer-events:none;opacity:0;transform:translateY(12px);overflow:hidden}.photo-modal.svelte-1pcscmi:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/></svg>");opacity:.04;mix-blend-mode:overlay;z-index:0;border-radius:inherit}.photo-modal-wrapper.open.svelte-1pcscmi .photo-modal:where(.svelte-1pcscmi){pointer-events:auto}.pm-close.svelte-1pcscmi{position:absolute;top:max(var(--space-3),env(safe-area-inset-top));right:max(var(--space-3),env(safe-area-inset-right));z-index:3;width:44px;height:44px;padding:6px;border-radius:var(--radius-pill);border:1px solid var(--color-parchment-edge);background:#2a1e140a;color:var(--color-ink);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s var(--ease-drift, ease),border-color .2s var(--ease-drift, ease)}.pm-close.svelte-1pcscmi:hover{background:#2a1e1414;border-color:var(--color-ink-soft)}.pm-close.svelte-1pcscmi svg:where(.svelte-1pcscmi){width:14px;height:14px;stroke:currentColor;stroke-width:1.75;fill:none;stroke-linecap:round}.pm-viewer.svelte-1pcscmi{display:flex;align-items:center;gap:var(--space-4);flex:1;min-height:0}.pm-nav-col.svelte-1pcscmi{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);flex-shrink:0}.pm-nav-btn.svelte-1pcscmi{width:48px;height:48px;border:1px solid var(--color-parchment-edge);background:var(--surface-raised, #f5efe2);color:var(--color-bark);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #3a24181f;transition:background .2s ease,border-color .2s ease,transform .2s ease;flex-shrink:0}.pm-nav-btn.svelte-1pcscmi svg:where(.svelte-1pcscmi){width:24px;height:24px}.pm-nav-btn.svelte-1pcscmi:hover{background:var(--color-moss)}.pm-nav-btn.svelte-1pcscmi:active{transform:scale(.95)}.pm-photo-frame.svelte-1pcscmi{flex:1;min-width:0;height:min(70dvh,calc(100dvh - 220px));max-height:80dvh;display:flex;align-items:center;justify-content:flex-start;background:transparent;border-radius:6px;overflow:hidden;position:relative}.pm-track.svelte-1pcscmi{position:relative;display:flex;flex-shrink:0;height:100%;transform:translateZ(0);touch-action:pan-y;cursor:default;user-select:none;-webkit-user-drag:none;will-change:transform}@media(hover:none)and (pointer:coarse){.pm-track.svelte-1pcscmi{cursor:grab}.pm-track.svelte-1pcscmi:active{cursor:grabbing}}.pm-slide.svelte-1pcscmi{flex:0 0 auto;height:100%;display:flex;align-items:center;justify-content:center}.pm-slide.svelte-1pcscmi img:where(.svelte-1pcscmi){width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;display:block}.pm-photo-frame.loading.svelte-1pcscmi .pm-slide:where(.svelte-1pcscmi) img:where(.svelte-1pcscmi){opacity:.3}@media(hover:hover)and (pointer:fine){.pm-photo-frame.svelte-1pcscmi{clip-path:inset(0 calc((100% - var(--current-w, 100%)) / 2 + 1px));transition:clip-path .25s cubic-bezier(.22,1,.36,1)}}.pm-loader.svelte-1pcscmi{position:absolute;width:32px;height:32px;border:3px solid rgba(42,30,20,.12);border-top-color:var(--color-bottle);border-radius:50%;animation:svelte-1pcscmi-pm-spin .8s linear infinite}@keyframes svelte-1pcscmi-pm-spin{to{transform:rotate(360deg)}}.pm-caption.svelte-1pcscmi{text-align:center;flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-3)}.pm-photo-title.svelte-1pcscmi{font-family:var(--font-display);font-size:1.375rem;font-style:italic;font-weight:400;color:var(--color-ink);margin:0;line-height:1.2}.pm-photo-camera.svelte-1pcscmi{font-family:var(--font-body);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;color:var(--color-ink-soft);margin:0}.pm-photo-counter.svelte-1pcscmi{margin:6px 0 0;font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--color-ink-soft);font-variant-numeric:tabular-nums;text-align:center}.pm-photo-counter-current.svelte-1pcscmi{color:var(--color-ink);opacity:1}.pm-photo-counter-sep.svelte-1pcscmi{margin:0 2px;opacity:.45}.pm-photo-counter-total.svelte-1pcscmi{opacity:.65}.pm-swipe-hint.svelte-1pcscmi{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5;opacity:1;transition:opacity .4s ease}.pm-swipe-hint.fade-out.svelte-1pcscmi{opacity:0}.pm-swipe-arrow.svelte-1pcscmi{font-size:36px;line-height:1;color:#2a1e14c7;text-shadow:0 1px 2px rgba(255,255,255,.4);animation:svelte-1pcscmi-pm-swipe-arrow-cycle 1.8s ease-in-out 2}@keyframes svelte-1pcscmi-pm-swipe-arrow-cycle{0%{opacity:0;transform:translate(40px)}20%{opacity:1}80%{opacity:1;transform:translate(-40px)}to{opacity:0;transform:translate(-40px)}}@media(max-width:640px){.photo-modal-wrapper.svelte-1pcscmi{padding:12px 8px}.photo-modal.svelte-1pcscmi{padding:var(--space-3) var(--space-3) var(--space-4);gap:var(--space-3);max-height:calc(100dvh - 24px)}.pm-close.svelte-1pcscmi{position:relative;top:auto;right:auto;margin-left:auto}.pm-viewer.svelte-1pcscmi{position:relative;gap:0}.pm-photo-frame.svelte-1pcscmi{width:100%}.pm-nav-col.svelte-1pcscmi{display:none}}
