.secondary-album{padding:120px max(7vw,32px);background:#fff}.gallery{position:relative;display:block;width:min(760px,calc(100% - 38px));aspect-ratio:4/3;margin:0 auto 36px;isolation:isolate}.gallery::after{content:attr(data-label);position:absolute;right:18px;bottom:18px;z-index:6;padding:10px 16px;border-radius:99px;background:var(--ink);color:#fff;font-size:13px;font-weight:800;box-shadow:var(--shadow);pointer-events:none}.photo{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;border-radius:12px;background:#fff;overflow:hidden;box-shadow:var(--shadow);cursor:pointer;opacity:0;pointer-events:none;transition:.25s ease}.photo img{display:block;width:100%;height:100%;object-fit:cover}.photo:first-child{z-index:4;opacity:1;pointer-events:auto}.photo:nth-child(2){z-index:3;opacity:.7;transform:translate(13px,13px) rotate(1deg)}.photo:nth-child(3){z-index:2;opacity:.45;transform:translate(25px,25px) rotate(2deg)}.photo span{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;width:max-content;max-width:calc(100% - 180px);padding:9px 13px;border-radius:6px;background:rgba(255,255,255,.92);color:var(--ink);font-weight:800;text-align:left}.empty-album{width:min(760px,100%);margin:0 auto;padding:55px 25px;border:1px dashed var(--line);border-radius:12px;text-align:center;color:#58706c}dialog#lightbox{width:min(1100px,94vw);max-width:none;padding:0;border:0;border-radius:13px;background:#101b19;color:#fff;overflow:visible}dialog#lightbox::backdrop{background:rgba(4,15,13,.88)}dialog#lightbox img{display:block;width:100%;max-height:78vh;object-fit:contain;border-radius:13px}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;z-index:2;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--ink);font-size:25px;cursor:pointer}.lightbox-close{width:43px;height:43px;right:-13px;top:-13px}.lightbox-prev,.lightbox-next{width:48px;height:48px;top:50%;transform:translateY(-50%)}.lightbox-prev{left:16px}.lightbox-next{right:16px}.lightbox-caption{position:absolute;left:18px;bottom:15px;margin:0;max-width:70%;padding:8px 12px;border-radius:5px;background:rgba(4,15,13,.78)}.lightbox-count{position:absolute;right:18px;bottom:15px;padding:8px 12px;border-radius:5px;background:rgba(4,15,13,.78)}
.secondary-gallery-admin{padding:35px 0 10px;border-top:1px solid var(--line);margin-top:35px}.secondary-gallery-admin h2,.recipient-manager h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:25px}.gallery-upload-form{display:grid!important;grid-template-columns:1fr 1fr auto;gap:15px!important;align-items:end}.gallery-upload-form input[type=file]{padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff}.gallery-admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}.gallery-admin-grid article{padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.gallery-admin-grid img{display:block;width:100%;height:190px;object-fit:cover;border-radius:7px;margin-bottom:13px}.gallery-admin-grid article>form{display:grid;gap:9px}.gallery-admin-grid button{min-height:42px;padding:7px 14px;border:0;border-radius:5px;font-weight:800;cursor:pointer}.gallery-admin-grid article>form>button{background:#e9e9ed}.gallery-admin-actions{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.gallery-admin-actions form{display:flex;gap:7px}.gallery-admin-actions .danger{background:#a61e38;color:#fff}.gallery-admin-actions button:disabled{opacity:.35;cursor:not-allowed}.recipient-manager{padding:35px 0;margin:35px 0;border-block:1px solid var(--line)}.recipient-manager form{grid-template-columns:1fr auto;align-items:end}.recipient-manager .button{white-space:nowrap}
@media(max-width:700px){.secondary-album{padding:85px 22px}.gallery{width:calc(100% - 25px)}.gallery::after{right:10px;bottom:10px}.photo span{left:10px;bottom:10px;max-width:calc(100% - 135px);font-size:13px}.gallery-upload-form,.gallery-admin-grid,.recipient-manager form{grid-template-columns:1fr}.gallery-upload-form .button,.recipient-manager .button{width:100%}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-caption{max-width:60%;font-size:13px}}
