.reij-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:32px}.reij-photo-tile{border:0;padding:0;position:relative;aspect-ratio:4/3;background:#e7e8ec;border-radius:12px;overflow:hidden;cursor:zoom-in}.reij-photo-tile[hidden]{display:none}.reij-photo-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}.reij-photo-tile:hover img{transform:scale(1.04)}.reij-photo-tile:focus-visible{outline:3px solid #cda953;outline-offset:3px}.reij-photo-tile span{position:absolute;bottom:9px;right:9px;border-radius:99px;padding:3px 9px;background:#0a203ed9;color:#fff;font-size:12px}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#0a203e;color:#fff;border-radius:16px;padding:28px;margin-top:30px}.gallery-toolbar p{margin:6px 0 0;color:#e1e6ef;font-size:14px}.gallery-toolbar strong{font-size:22px}.gallery-toolbar-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.gallery-toolbar button{cursor:pointer}.gallery-logout{background:none;border:0;color:#f5d384;text-decoration:underline;padding:9px}.gallery-download-note{font-size:13px;color:#596477;margin-top:14px}.gallery-controls{text-align:center;margin-top:30px}.gallery-dialog{padding:0;border:0;border-radius:18px;background:#fff;color:#0a203e;width:min(500px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;box-shadow:0 20px 80px #0005}.gallery-dialog::backdrop,.gallery-viewer::backdrop{background:#061327dd}.gallery-dialog-inner{padding:36px;position:relative}.gallery-close{position:sticky;float:right;top:0;z-index:3;border:1px solid #d8dce4;border-radius:50%;background:#fff;color:#0a203e;width:42px;height:42px;font-size:27px;cursor:pointer;display:grid;place-items:center}.gallery-dialog h2{font-size:30px;line-height:1.15;margin:24px 0 12px}.gallery-dialog p{font-size:14px}.gallery-auth-tabs{display:flex;gap:8px;margin:24px 0}.gallery-auth-tabs button{border:1px solid #cbd1dc;border-radius:8px;background:#fff;padding:10px 18px;color:#0a203e;cursor:pointer}.gallery-auth-tabs button[aria-pressed=true]{background:#0a203e;color:#fff}.gallery-dialog label{display:block;font-size:14px;font-weight:600;margin:14px 0}.gallery-dialog input{display:block;width:100%;box-sizing:border-box;border:1px solid #bfc7d3;border-radius:8px;padding:12px;font-size:16px;margin-top:6px;color:#0a203e;background:#fff}.gallery-names{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery-names[hidden],#gallery-credentials[hidden],#gallery-code-field[hidden]{display:none}.gallery-dialog .button{width:100%;border:0;cursor:pointer}.gallery-dialog [role=status]{min-height:22px;color:#49596f;font-size:14px}.gallery-auth-fine{font-size:12px!important;color:#596477;line-height:1.5}.gallery-viewer{padding:18px;border:0;border-radius:14px;background:#0a203e;color:#fff;max-width:calc(100vw - 24px);width:1000px;max-height:calc(100dvh - 24px)}.gallery-viewer-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}.gallery-viewer-image{display:block;width:100%;height:min(66dvh,700px);object-fit:contain;background:#07172c;border-radius:6px}.gallery-viewer-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.gallery-viewer-actions button{border:1px solid #d1af5f;background:transparent;color:#f9dda1;border-radius:8px;padding:10px 14px;cursor:pointer}.gallery-viewer .gallery-close{position:static;float:none;flex:none}.gallery-viewer-caption{font-size:13px;line-height:1.5;color:#ccd7e8;margin:12px 0 0}.gallery-memory-intro{max-width:740px}.gallery-memory-intro h3{font-size:30px}.gallery-member-link{background:none;border:0;color:#0a203e;text-decoration:underline;font-weight:600;cursor:pointer;padding:10px 0}.gallery-primary-download{background:#d4b263!important;color:#0a203e!important;border:0!important}.gallery-toolbar-actions [hidden]{display:none}button:disabled{opacity:.65;cursor:wait}@media(max-width:850px){.reij-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-toolbar{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.reij-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gallery-dialog-inner{padding:24px}.gallery-names{grid-template-columns:1fr;gap:0}.gallery-toolbar{padding:22px}.gallery-toolbar-actions{width:100%}.gallery-toolbar .button{width:100%;text-align:center;font-size:14px}.gallery-viewer{padding:12px}.gallery-viewer-actions{gap:7px}.gallery-viewer-actions button{font-size:12px;padding:10px}.gallery-viewer-image{height:60dvh}.gallery-viewer-top{font-size:13px}}

.gallery-controls .button.secondary{color:#0a203e;background:transparent;border:1px solid #0a203e}.gallery-controls .button.secondary:hover{background:#0a203e;color:#fff}

/* Prevent ordinary image-save menus and dragging on gallery previews. */
.reij-photo-grid,.reij-photo-tile,.gallery-protected-image{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
.reij-photo-tile img,.gallery-protected-image img{pointer-events:none;-webkit-user-drag:none;-webkit-touch-callout:none;user-select:none}
.gallery-protected-image{position:relative}.gallery-member-badge{position:absolute;bottom:14px;right:16px;pointer-events:none;font-size:10px;letter-spacing:.16em;padding:7px 10px;border:1px solid #d8bd72a0;color:#f7e6b8;background:#0a203ed9;border-radius:5px}
.gallery-viewer-status{font-size:14px;min-height:20px;color:#f3dfad;line-height:1.5;margin:14px 0 0}.gallery-save-link{color:#ffe5a1;text-decoration:underline;text-underline-offset:3px}.gallery-viewer-actions button:disabled{opacity:.5;cursor:wait}

/* Account overlay allows Google's verification challenge to open above it. */
.gallery-account-backdrop{position:fixed;inset:0;background:#061327dd;z-index:10000}.gallery-account-backdrop[hidden]{display:none}.gallery-account-open{overflow:hidden}
#gallery-account{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);margin:0;z-index:10001;max-height:calc(100dvh - 28px)}
#gallery-account .gallery-dialog-inner{padding:28px}#gallery-account h2{font-size:28px;margin-top:22px}#gallery-account label{margin:10px 0}#gallery-account .gallery-auth-tabs{margin:18px 0}#gallery-account input{padding:10px 12px}
.gallery-captcha{margin:18px 0 10px}.gallery-captcha[hidden],#gallery-confirm-password[hidden]{display:none}.gallery-captcha-retry{border:0;padding:4px 0;background:transparent;color:#425571;font-size:12px;text-decoration:underline;cursor:pointer}.gallery-password-match{font-size:13px!important;color:#a33131;min-height:0;margin:0!important}#gallery-password-hint{margin:0 0 10px!important}

.gallery-consent-fields{border:1px solid #d5deea;border-radius:12px;padding:16px;margin:18px 0;min-width:0}.gallery-consent-fields legend{font-weight:700;color:#102943;padding:0 6px}.gallery-consent-choice{display:flex!important;align-items:flex-start;gap:10px;font-size:13px!important;line-height:1.5;font-weight:400!important;margin-top:15px}.gallery-consent-choice input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:3px 0 0;padding:0;accent-color:#102943}.gallery-consent-choice a{text-decoration:underline}.gallery-consent-fields[hidden]{display:none}

/* REIJ gallery watermark: kept on every preview, including signed-in browsing. */
.reij-photo-tile::after,.gallery-protected-image::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background-image:url("https://static.wixstatic.com/media/fc1a15_1effd17f120642fc9559dd8da9a5d5ab~mv2.jpeg");background-repeat:repeat;background-size:108px 108px;background-position:center;opacity:.22;mix-blend-mode:normal}
.gallery-protected-image::after{background-size:180px 180px;opacity:.20;border-radius:6px}
.reij-photo-tile span,.gallery-member-badge{z-index:2}
@media(max-width:560px){.reij-photo-tile::after{background-size:80px 80px}.gallery-protected-image::after{background-size:120px 120px}}

/* Refined centered watermark, without distracting tiles. */
.reij-photo-tile::after{background-repeat:no-repeat;background-size:42% auto;opacity:.24}
.gallery-protected-image::after{background-repeat:no-repeat;background-size:clamp(120px,25%,210px) auto;opacity:.22}
