.photos-page[data-astro-cid-vgmx3pcl]{max-width:560px;margin:0 auto;padding:1rem 1.25rem 2rem;font-family:var(--font-serif);color:var(--color-ink)}.photos-head[data-astro-cid-vgmx3pcl]{text-align:center;margin-bottom:1.25rem}.photos-head[data-astro-cid-vgmx3pcl] .monogram{margin-bottom:.5rem}.page-title[data-astro-cid-vgmx3pcl]{font-family:var(--font-serif);font-style:italic;font-weight:500;font-size:clamp(2rem,6vw,2.75rem);margin:0 0 .5rem;color:var(--color-ink)}.page-sub[data-astro-cid-vgmx3pcl]{margin:.5rem 0 0;color:var(--color-ink-soft);font-style:italic;line-height:1.5}.field[data-astro-cid-vgmx3pcl]{display:flex;flex-direction:column;gap:.5rem;position:relative;margin-bottom:1.5rem}.field-label[data-astro-cid-vgmx3pcl]{font-size:.9rem;font-weight:600;font-style:italic;color:var(--color-ink-soft)}input[data-astro-cid-vgmx3pcl][type=text],textarea[data-astro-cid-vgmx3pcl]{font-family:var(--font-serif);font-size:1rem;padding:.75rem 1rem;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);color:var(--color-ink);width:100%;transition:border-color .15s ease}textarea[data-astro-cid-vgmx3pcl]{resize:vertical;min-height:3rem}input[data-astro-cid-vgmx3pcl][type=text]:focus,textarea[data-astro-cid-vgmx3pcl]:focus{outline:none;border-color:var(--color-accent)}.name-suggestions[data-astro-cid-vgmx3pcl]{list-style:none;margin:.25rem 0 0;padding:.25rem;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg);max-height:240px;overflow-y:auto}.name-suggestions[data-astro-cid-vgmx3pcl] .sugg{display:block;width:100%;text-align:left;background:none;border:none;padding:.55rem .75rem;font-family:var(--font-serif);font-size:1rem;color:var(--color-ink);cursor:pointer;border-radius:var(--radius)}.name-suggestions[data-astro-cid-vgmx3pcl] .sugg:hover{background:#7a90a81a}.name-hint[data-astro-cid-vgmx3pcl]{font-size:.85rem;font-style:italic;color:var(--color-ink-soft)}.identify[data-astro-cid-vgmx3pcl] [data-astro-cid-vgmx3pcl][data-name-confirm]{width:100%}.current-name[data-astro-cid-vgmx3pcl]{font-family:var(--font-serif);font-style:italic;color:var(--color-ink-soft);margin:0 0 1.5rem}.current-name[data-astro-cid-vgmx3pcl] strong[data-astro-cid-vgmx3pcl]{color:var(--color-ink);font-style:normal;font-weight:600}.link-btn[data-astro-cid-vgmx3pcl]{background:none;border:none;padding:0;font-family:var(--font-serif);font-style:italic;font-size:inherit;color:var(--color-accent);cursor:pointer;text-decoration:underline}.link-btn[data-astro-cid-vgmx3pcl]:hover{color:var(--color-ink)}.pick-buttons[data-astro-cid-vgmx3pcl]{display:flex;gap:.75rem;flex-wrap:wrap}.pick-buttons[data-astro-cid-vgmx3pcl] .button[data-astro-cid-vgmx3pcl]{flex:1;min-width:190px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-icon[data-astro-cid-vgmx3pcl]{width:1.15rem;height:1.15rem;flex-shrink:0}.button[data-astro-cid-vgmx3pcl].button-outline{background:transparent;color:var(--color-accent);border:1px solid var(--color-accent)}.form-error[data-astro-cid-vgmx3pcl]{color:#9b2c2c;font-size:.9rem;font-style:italic;margin:1rem 0 0}.upload-status[data-astro-cid-vgmx3pcl]{margin-top:1rem;font-style:italic;color:var(--color-ink-soft);min-height:1.5rem}.recent-strip[data-astro-cid-vgmx3pcl]{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin-top:1.5rem}.recent-strip[data-astro-cid-vgmx3pcl] img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius);border:1px solid var(--color-line)}.gallery-link[data-astro-cid-vgmx3pcl]{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.5rem;font-family:var(--font-serif);font-style:italic;font-size:1.05rem;color:var(--color-accent);text-decoration:none}.gallery-link[data-astro-cid-vgmx3pcl]:hover{color:var(--color-ink)}.gallery-link[data-astro-cid-vgmx3pcl] .gallery-arrow[data-astro-cid-vgmx3pcl]{transition:transform .15s ease}.gallery-link[data-astro-cid-vgmx3pcl]:hover .gallery-arrow[data-astro-cid-vgmx3pcl]{transform:translate(3px)}.upload-status[data-astro-cid-vgmx3pcl] .upload-success{display:inline-block;font-style:normal;font-weight:600;color:var(--color-accent);animation:upload-pop .4s ease}@keyframes upload-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.hearts-layer{position:fixed;inset:0;pointer-events:none;z-index:60;overflow:hidden}.hearts-layer span{position:absolute;bottom:22%;opacity:0;animation:heart-float 2.4s ease-out forwards}@keyframes heart-float{0%{transform:translateY(0) scale(.6);opacity:0}15%{opacity:1}to{transform:translateY(-42vh) scale(1.15);opacity:0}}
