@font-face { font-family: 'Relive Source Sans'; src: url('/assets/fonts/SourceSans3-Regular.ttf.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'Relive Source Sans'; src: url('/assets/fonts/SourceSans3-Semibold.ttf.woff2') format('woff2'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'Relive Source Serif'; src: url('/assets/fonts/SourceSerif4Display-Regular.ttf.woff2') format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
body:has(#relive-stage-two) { margin: 0; }

/* Photographer access uses the same licensed local fonts as the workspace. */
#relive-stage-two .signin-surface { width: 100%; padding: 56px 0 32px; }
#relive-stage-two .signin-card { width: 360px; max-width: 100%; margin-inline: auto; }
#relive-stage-two .signin-wordmark { margin: 0 0 40px; font: 400 32px/1.1 var(--serif); letter-spacing: -1px; }
#relive-stage-two .signin-wordmark span { color: var(--muted); }
#relive-stage-two .signin-heading { margin: 0 0 12px; color: var(--ink); font: 400 36px/1.15 var(--serif); letter-spacing: -.55px; }
#relive-stage-two .signin-description { margin: 0 0 32px; color: var(--muted); font: 400 17px/1.5 var(--sans); overflow-wrap: anywhere; }
#relive-stage-two .signin-field { margin: 0 0 23px; }
#relive-stage-two .signin-field label { display: block; margin: 0 0 8px; color: var(--ink); font: 600 14px/1.4 var(--sans); }
#relive-stage-two .signin-field input { width: 100%; min-width: 0; height: 52px; min-height: 52px; margin: 0; padding: 12px 14px; border: 1px solid #a7afa3; border-radius: 2px; background: var(--white); color: var(--ink); font: 400 16px/1.4 var(--sans); }
#relive-stage-two .signin-field input::placeholder { color: var(--muted); font-style: normal; opacity: 1; }
#relive-stage-two .signin-field input:disabled { color: var(--muted); background: #f0f1eb; }
#relive-stage-two .signin-password { position: relative; }
#relive-stage-two .signin-password input { padding-right: 66px; }
#relive-stage-two .signin-show-password { position: absolute; top: 4px; right: 5px; width: 52px; min-height: 44px; height: 44px; margin: 0; padding: 0 6px; border: 0; border-radius: 0; background: transparent; color: var(--olive); font: 600 13px/1.3 var(--sans); }
#relive-stage-two .signin-show-password:hover:not(:disabled) { text-decoration: underline; text-underline-offset: 4px; }
#relive-stage-two .signin-form { margin: 0; padding: 0; border: 0; }
#relive-stage-two .signin-submit { display: block; width: 100%; min-height: 52px; margin: 10px 0 0; padding: 12px 20px; border: 1px solid var(--olive); border-radius: 2px; background: var(--olive); color: var(--white); font: 600 16px/1.4 var(--sans); }
#relive-stage-two .signin-submit:hover:not(:disabled) { background: #2b402e; }
#relive-stage-two .signin-submit:disabled { background: #e4e8e0; border-color: #c9d0c3; color: #66715f; }
#relive-stage-two .signin-secondary, #relive-stage-two .signin-text-action, #relive-stage-two .signin-recovery-action { min-height: 44px; margin: 8px 0 0; padding: 10px 0; border: 0; border-radius: 0; background: transparent; color: var(--olive); font: 600 14px/1.4 var(--sans); text-underline-offset: 4px; }
#relive-stage-two .signin-secondary:hover:not(:disabled), #relive-stage-two .signin-text-action:hover:not(:disabled), #relive-stage-two .signin-recovery-action:hover:not(:disabled) { text-decoration: underline; }
#relive-stage-two .signin-recovery-action { display: block; margin: -12px 0 14px auto; font-size: 14px; }
#relive-stage-two .signin-message { margin: 0 0 23px; padding: 12px 14px; border-left: 3px solid var(--olive); background: var(--pale); color: var(--ink); font: 400 15px/1.45 var(--sans); overflow-wrap: anywhere; }
#relive-stage-two .signin-message.is-error { border-color: #8a5039; background: #f0e9df; }
#relive-stage-two .signin-note { margin: -8px 0 24px; color: var(--muted); font: 400 14px/1.5 var(--sans); }
#relive-stage-two .signin-code { letter-spacing: .16em; font-variant-numeric: tabular-nums; }
#relive-stage-two .signin-enrollment { margin: 0 0 28px; }
#relive-stage-two .signin-qr { display: flex; justify-content: flex-start; max-width: 100%; margin-bottom: 16px; }
#relive-stage-two .signin-qr:empty { display: none; }
#relive-stage-two .signin-qr canvas { display: block; width: 208px; height: 208px; max-width: 100%; background: #fff; }
#relive-stage-two .signin-authenticator-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--olive); font: 600 15px/1.4 var(--sans); text-underline-offset: 4px; }
#relive-stage-two .signin-key-label { margin: 12px 0 8px; color: var(--muted); font: 400 14px/1.45 var(--sans); }
#relive-stage-two .signin-setup-key { display: block; padding: 12px 14px; border: 1px solid var(--line); background: var(--white); color: var(--ink); font: 400 16px/1.5 ui-monospace, Consolas, monospace; overflow-wrap: anywhere; word-break: break-all; }
@media (max-width: 560px) {
  #relive-stage-two .signin-surface { padding-top: 36px; }
  #relive-stage-two .signin-heading { font-size: 32px; }
  #relive-stage-two .signin-description { font-size: 16px; }
}
#relive-stage-two { --paper: #f7f5f0; --white: #fffefa; --ink: #252d29; --muted: #626a63; --line: #d5d8ce; --olive: #3d513f; --pale: #e8ede3; --focus: #285f77; --serif: 'Relive Source Serif', Georgia, serif; --sans: 'Relive Source Sans', 'Segoe UI', sans-serif; background: var(--paper); color: var(--ink); font: 400 17px/1.5 var(--sans); -webkit-font-smoothing: antialiased; }
#relive-stage-two, #relive-stage-two * { box-sizing: border-box; }
#relive-stage-two [hidden] { display: none !important; }
#relive-stage-two h1, #relive-stage-two h2, #relive-stage-two h3, #relive-stage-two p { margin: 0; }
#relive-stage-two button, #relive-stage-two input { font: inherit; }
#relive-stage-two button { color: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
#relive-stage-two button:disabled { cursor: default; }
#relive-stage-two button:focus-visible, #relive-stage-two a:focus-visible, #relive-stage-two input:focus-visible, #relive-stage-two [tabindex]:focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
#relive-stage-two #workspace-main:focus { outline: none; }
#relive-stage-two button, #relive-stage-two input, #relive-stage-two a { scroll-margin-block: 24px; }
#relive-stage-two .skip-link { display: block; position: absolute; z-index: 10; top: -100px; left: 16px; padding: 12px 20px; color: var(--ink); background: var(--white); }
#relive-stage-two .skip-link:focus { top: 8px; }
#relive-stage-two .rehearsal-strip { display: flex; justify-content: space-between; gap: 16px; padding: 10px clamp(20px, 5vw, 80px); border-bottom: 1px solid #d8ddd1; background: #e8ece3; color: #505b51; font-size: 13px; }
#relive-stage-two .status-dot { display: inline-block; height: 6px; width: 6px; border-radius: 50%; margin: 0 8px 2px 0; background: var(--olive); }
#relive-stage-two .page-shell { max-width: 1456px; margin-inline: auto; padding: 0 clamp(20px, 5vw, 80px); }
#relive-stage-two .site-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 101px; border-bottom: 1px solid var(--line); }
#relive-stage-two .wordmark { font: 400 34px/1 var(--serif); letter-spacing: -1.3px; white-space: nowrap; }
#relive-stage-two .wordmark span { color: var(--muted); }
#relive-stage-two .account-area { display: flex; align-items: center; gap: 24px; font-size: 14px; }
#relive-stage-two .account-name { font-weight: 600; }
#relive-stage-two .account-caption, #relive-stage-two .muted { color: var(--muted); }
#relive-stage-two .text-button { min-height: 44px; padding: 9px 0; border: 0; background: transparent; font-size: 14px; font-weight: 600; color: var(--olive); text-underline-offset: 5px; }
#relive-stage-two .text-button:hover { text-decoration: underline; }
#relive-stage-two .feedback { margin-top: 24px; padding: 13px 17px; border-left: 3px solid var(--olive); background: var(--pale); font-size: 15px; overflow-wrap: anywhere; }
#relive-stage-two .feedback.is-error { background: #f0e9df; border-color: #8a5039; }
#relive-stage-two .eyebrow { font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 1.6px; color: var(--muted); }
#relive-stage-two h1 { font: 400 clamp(43px, 5.2vw, 70px)/1.08 var(--serif); letter-spacing: -1.3px; margin-block: 15px 17px; overflow-wrap: anywhere; }
#relive-stage-two h2 { font: 400 30px/1.2 var(--serif); letter-spacing: -.3px; }
#relive-stage-two h3 { font: 400 27px/1.2 var(--serif); letter-spacing: -.2px; overflow-wrap: anywhere; }
#relive-stage-two .intro { padding-block: 52px 43px; }
#relive-stage-two .intro p:not(.eyebrow) { max-width: 650px; font-size: 18px; color: var(--muted); }
#relive-stage-two .intro-row { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
#relive-stage-two .quiet-count { color: var(--muted); text-align: right; font-size: 13px; white-space: nowrap; }
#relive-stage-two .quiet-count strong { display: block; font: 400 33px/1.3 var(--serif); color: var(--ink); font-variant-numeric: tabular-nums; }
#relive-stage-two .quiet-count strong span { color: #8b9487; margin-inline: 5px; }
#relive-stage-two .identity-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; max-width: 900px; }
#relive-stage-two .identity { background: var(--white); padding: 29px 30px; border: 1px solid var(--line); border-radius: 3px; }
#relive-stage-two .identity-head { display: flex; align-items: center; gap: 17px; margin-bottom: 22px; }
#relive-stage-two .identity-initials { display: grid; place-items: center; width: 48px; height: 48px; background: var(--pale); color: var(--olive); font: 400 22px/1 var(--serif); border: 1px solid #c8d0bf; border-radius: 50%; }
#relive-stage-two .identity h2 { font-size: 29px; }
#relive-stage-two .identity .eyebrow { font-size: 10px; margin-top: 4px; }
#relive-stage-two .identity p:not(.eyebrow) { color: var(--muted); font-size: 15px; margin-bottom: 23px; }
#relive-stage-two .primary-button, #relive-stage-two .secondary-button { display: inline-flex; align-items: center; justify-content: center; gap: 18px; min-height: 48px; padding: 11px 20px; border: 1px solid var(--olive); border-radius: 3px; font-weight: 600; font-size: 15px; line-height: 1.4; }
#relive-stage-two .primary-button { color: #fff; background: var(--olive); }
#relive-stage-two .primary-button:hover:not(:disabled) { background: #2b402e; }
#relive-stage-two .secondary-button { color: var(--olive); background: transparent; border-color: #b0bca7; }
#relive-stage-two .secondary-button:hover:not(:disabled) { background: var(--pale); }
#relive-stage-two .primary-button:disabled, #relive-stage-two .secondary-button:disabled { background: #e4e8e0; border-color: #c9d0c3; color: #66715f; }
#relive-stage-two .rehearsal-note { margin-top: 26px; max-width: 800px; color: var(--muted); font-size: 14px; }
#relive-stage-two .workspace-layout { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(270px, 1fr); gap: 48px; padding-top: 6px; }
#relive-stage-two .section-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-block: 20px; border-top: 1px solid var(--line); }
#relive-stage-two .section-heading h2 { font: 600 16px/1.4 var(--sans); letter-spacing: 0; }
#relive-stage-two .section-heading span { color: var(--muted); font-size: 13px; }
#relive-stage-two .empty-state { padding: 42px 28px; border: 1px solid var(--line); background: #f0f1e9; }
#relive-stage-two .empty-state h3 { font-size: 31px; margin-bottom: 10px; }
#relive-stage-two .empty-state p { max-width: 390px; color: var(--muted); font-size: 16px; }
#relive-stage-two .gallery-empty { margin-top: 26px; }
#relive-stage-two .empty-number { font: 400 42px/1 var(--serif); color: #8c9784; margin-bottom: 25px; }
#relive-stage-two .new-gallery { padding: 25px; border: 1px solid #c9d1c1; background: var(--white); border-radius: 3px; align-self: start; }
#relive-stage-two .new-gallery h2 { font-size: 28px; margin-bottom: 20px; }
#relive-stage-two label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 8px; }
#relive-stage-two input { display: block; width: 100%; min-width: 0; min-height: 47px; padding: 10px 12px; border: 1px solid #a9b49f; border-radius: 2px; background: var(--white); color: var(--ink); font-size: 16px; }
#relive-stage-two input::placeholder { color: #7c8479; }
#relive-stage-two .input-note { display: flex; justify-content: space-between; gap: 10px; margin: 8px 0 22px; font-size: 12px; color: var(--muted); }
#relive-stage-two .new-gallery .primary-button { width: 100%; }
#relive-stage-two .form-note { font-size: 13px; line-height: 1.5; color: var(--muted); margin-top: 16px; }
#relive-stage-two .gallery-list { display: flex; flex-direction: column; gap: 16px; }
#relive-stage-two .gallery-row { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; align-items: center; gap: 20px; padding: 23px 20px; border: 1px solid var(--line); background: var(--white); border-radius: 3px; }
#relive-stage-two .gallery-number { display: grid; place-items: center; width: 65px; height: 74px; border: 1px solid #c7cfbe; background: #edf0e6; font: 400 30px/1 var(--serif); color: #5c6d52; }
#relive-stage-two .gallery-row h3 { font-size: 27px; }
#relive-stage-two .gallery-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 13px; margin-top: 7px; color: var(--muted); font-size: 13px; }
#relive-stage-two .status-pill { display: inline-block; padding: 3px 9px; font-size: 12px; line-height: 1.4; color: #4d5d43; border: 1px solid #c2ceba; border-radius: 20px; background: var(--pale); white-space: nowrap; }
#relive-stage-two .status-pill.is-pending { background: #f1eee5; border-color: #d6d1c4; color: #716348; }
#relive-stage-two .status-pill.is-failed { background: #f2e7de; border-color: #dbc8b8; color: #8a5039; }
#relive-stage-two .usage-note { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--line); color: var(--muted); font-size: 13px; }
#relive-stage-two .back-button { margin-top: 20px; }
#relive-stage-two .gallery-intro { padding-top: 15px; }
#relive-stage-two .gallery-intro h1 { margin-top: 12px; }
#relive-stage-two .upload-panel { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 26px 28px; border: 1px solid #c5cebc; border-radius: 3px; background: #edf0e7; }
#relive-stage-two .upload-panel h2 { font-size: 28px; }
#relive-stage-two .upload-panel p { max-width: 550px; margin-top: 8px; font-size: 15px; color: #5b6853; }
#relive-stage-two .upload-actions { flex-shrink: 0; text-align: center; }
#relive-stage-two .upload-detail { display: block; margin-top: 8px; font-size: 12px; color: #5b6853; }
#relive-stage-two .processing-bar { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding-block: 25px; border-bottom: 1px solid var(--line); margin-bottom: 29px; }
#relive-stage-two .processing-bar strong { font-size: 16px; font-weight: 600; }
#relive-stage-two .processing-bar p { margin-top: 3px; font-size: 14px; color: var(--muted); }
#relive-stage-two .processing-controls { display: flex; align-items: center; gap: 14px; }
#relive-stage-two .processing-bar progress { display: block; width: 140px; max-width: 100%; height: 6px; margin-top: 11px; accent-color: var(--olive); }
#relive-stage-two .photo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 24px; }
#relive-stage-two .photo-card { min-width: 0; }
#relive-stage-two .photo-open { display: block; width: 100%; padding: 0; border: 0; background: transparent; text-align: left; border-radius: 2px; }
#relive-stage-two .photo-frame { display: block; position: relative; width: 100%; aspect-ratio: 3/2; overflow: hidden; background: #e0e4d9; border-radius: 2px; }
#relive-stage-two .photo-frame img { position: absolute; display: block; width: 200%; height: 200%; max-width: none; object-fit: fill; left: 0; top: 0; }
#relive-stage-two .photo-open:hover .photo-frame { outline: 2px solid var(--olive); outline-offset: -2px; }
#relive-stage-two .photo-placeholder { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 8px; aspect-ratio: 3/2; background: #e9ece2; color: #73816a; border: 1px dashed #bbc5b1; border-radius: 2px; font-size: 14px; }
#relive-stage-two .photo-placeholder .placeholder-number { font: 400 33px/1 var(--serif); color: #889780; }
#relive-stage-two .photo-placeholder.is-failed { background: #eee9df; border-color: #cfc3b0; color: #7d644a; }
#relive-stage-two .photo-caption { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 7px; margin-top: 11px; }
#relive-stage-two .photo-filename { min-width: 0; overflow-wrap: anywhere; font-size: 14px; letter-spacing: .3px; }
#relive-stage-two .photo-detail { margin-top: 7px; font-size: 13px; color: var(--muted); }
#relive-stage-two .retry-button { padding-block: 5px; min-height: 38px; font-size: 13px; }
#relive-stage-two .gallery-bottom-note { margin-top: 32px; padding-top: 21px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); }
#relive-stage-two .viewer-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
#relive-stage-two .viewer-heading h1 { font-size: clamp(33px, 4.5vw, 48px); margin-bottom: 8px; }
#relive-stage-two .viewer-image { max-width: 1000px; margin-inline: auto; }
#relive-stage-two .viewer-caption { text-align: center; margin: 18px auto 0; max-width: 750px; color: var(--muted); font-size: 14px; }
#relive-stage-two .viewer-nav { display: flex; justify-content: center; align-items: center; gap: 25px; margin-top: 24px; }
#relive-stage-two .viewer-nav span { color: var(--muted); font-size: 14px; }
#relive-stage-two .workspace-footer { display: flex; justify-content: space-between; gap: 24px; padding-block: 26px 32px; margin-top: 70px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); }
#relive-stage-two .noscript-note { padding: 30px; }
@media (max-width: 1020px) {
  #relive-stage-two .workspace-layout { gap: 26px; grid-template-columns: minmax(0, 1.4fr) minmax(250px, 1fr); }
  #relive-stage-two .gallery-row { grid-template-columns: minmax(0, 1fr) auto; gap: 16px; }
  #relive-stage-two .gallery-number { display: none; }
  #relive-stage-two .photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 20px; }
  #relive-stage-two .upload-panel { align-items: flex-start; gap: 24px; }
}
@media (max-width: 720px) {
  #relive-stage-two .rehearsal-strip { padding-block: 9px; font-size: 12px; gap: 12px; }
  #relive-stage-two .rehearsal-strip span:last-child { max-width: 170px; text-align: right; }
  #relive-stage-two .site-header { min-height: 86px; gap: 16px; }
  #relive-stage-two .wordmark { font-size: 30px; }
  #relive-stage-two .account-area { gap: 13px; font-size: 12px; }
  #relive-stage-two .account-caption { font-size: 12px; }
  #relive-stage-two .account-area .text-button { font-size: 12px; }
  #relive-stage-two .intro { padding-block: 35px 30px; }
  #relive-stage-two .intro p:not(.eyebrow) { font-size: 16px; }
  #relive-stage-two .intro-row { align-items: flex-start; gap: 17px; }
  #relive-stage-two .quiet-count { padding-top: 3px; font-size: 12px; }
  #relive-stage-two .quiet-count strong { font-size: 28px; }
  #relive-stage-two h1 { font-size: 46px; }
  #relive-stage-two .identity-grid { grid-template-columns: 1fr; gap: 17px; }
  #relive-stage-two .identity { padding: 24px; }
  #relive-stage-two .identity-head { margin-bottom: 17px; }
  #relive-stage-two .identity .primary-button { width: 100%; }
  #relive-stage-two .workspace-layout { display: flex; flex-direction: column-reverse; gap: 27px; }
  #relive-stage-two .new-gallery { width: 100%; padding: 24px; }
  #relive-stage-two .new-gallery h2 { margin-bottom: 17px; }
  #relive-stage-two .gallery-row { padding: 20px; }
  #relive-stage-two .gallery-row h3 { font-size: 26px; }
  #relive-stage-two .gallery-row .text-button { font-size: 13px; }
  #relive-stage-two .back-button { margin-top: 15px; }
  #relive-stage-two .gallery-intro { padding-top: 8px; }
  #relive-stage-two .upload-panel { display: block; padding: 23px; }
  #relive-stage-two .upload-panel h2 { font-size: 27px; }
  #relive-stage-two .upload-actions { text-align: left; margin-top: 22px; }
  #relive-stage-two .upload-actions .primary-button { width: 100%; }
  #relive-stage-two .upload-detail { text-align: center; }
  #relive-stage-two .processing-bar { display: block; padding-block: 23px; margin-bottom: 24px; }
  #relive-stage-two .processing-controls { margin-top: 17px; }
  #relive-stage-two .processing-controls .secondary-button { width: 100%; }
  #relive-stage-two .photo-grid { gap: 24px 15px; }
  #relive-stage-two .photo-caption { display: block; }
  #relive-stage-two .photo-caption .status-pill { margin-top: 6px; }
  #relive-stage-two .photo-filename { font-size: 12px; }
  #relive-stage-two .photo-detail { font-size: 12px; }
  #relive-stage-two .photo-placeholder { font-size: 12px; }
  #relive-stage-two .photo-placeholder .placeholder-number { font-size: 27px; }
  #relive-stage-two .viewer-heading { display: block; margin-bottom: 20px; }
  #relive-stage-two .viewer-heading .status-pill { margin-top: 5px; }
  #relive-stage-two .viewer-nav { gap: 13px; }
  #relive-stage-two .viewer-nav .secondary-button { padding-inline: 15px; }
  #relive-stage-two .workspace-footer { display: block; margin-top: 45px; font-size: 12px; }
  #relive-stage-two .workspace-footer span { display: block; }
  #relive-stage-two .workspace-footer span + span { margin-top: 6px; }
}
@media (max-width: 360px) {
  #relive-stage-two .page-shell { padding-inline: 17px; }
  #relive-stage-two .wordmark { font-size: 27px; }
  #relive-stage-two .account-area { gap: 8px; }
  #relive-stage-two .account-name { max-width: 62px; line-height: 1.2; }
  #relive-stage-two h1 { font-size: 41px; }
  #relive-stage-two .intro-row { display: block; }
  #relive-stage-two .quiet-count { display: none; }
  #relive-stage-two .photo-grid { grid-template-columns: 1fr; }
}

/* The approved rehearsal styling is shared, with real images and real transfer states. */
#relive-stage-two { min-height: 100vh; }
#relive-stage-two .sign-in-panel { max-width: 570px; padding: 31px 32px; border: 1px solid var(--line); background: var(--white); border-radius: 3px; }
#relive-stage-two .sign-in-panel p { max-width: 460px; margin-block: 16px 25px; color: var(--muted); font-size: 16px; }
#relive-stage-two .photo-frame { display: flex; align-items: center; justify-content: center; }
#relive-stage-two .photo-frame img { position: static; width: 100%; height: 100%; max-width: 100%; object-fit: cover; }
#relive-stage-two .full-photo { aspect-ratio: auto; min-height: 160px; background: #e9ece2; }
#relive-stage-two .full-photo img { display: block; height: auto; max-height: 80vh; width: 100%; object-fit: contain; }
#relive-stage-two .preview-unavailable { display: block; padding: 25px; text-align: center; color: var(--muted); font-size: 14px; }
#relive-stage-two .transfer-panel { margin-top: 18px; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
#relive-stage-two .transfer-list { list-style: none; margin: 0; padding: 0; }
#relive-stage-two .transfer-row { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 13px 20px; }
#relive-stage-two .transfer-row + .transfer-row { border-top: 1px solid var(--line); }
#relive-stage-two .transfer-row > div { min-width: 0; }
#relive-stage-two .transfer-filename { overflow-wrap: anywhere; font-size: 14px; }
#relive-stage-two .transfer-status, #relive-stage-two .transfer-error { margin-top: 2px; font-size: 13px; color: var(--muted); }
#relive-stage-two .transfer-error { color: #8a5039; }
#relive-stage-two .transfer-row .text-button { flex-shrink: 0; }
@media (max-width: 720px) {
  #relive-stage-two .sign-in-panel { padding: 26px 24px; }
  #relive-stage-two .sign-in-panel .primary-button { width: 100%; }
  #relive-stage-two .transfer-row { align-items: flex-start; padding-inline: 16px; }
  #relive-stage-two .transfer-row .text-button { font-size: 12px; }
}
