/* Retro Time Machine: polaroid preview, decade / look / region pickers, album prompts. */
.rt-print { --tilt: -2deg; position: relative; margin: 0; padding: 14px 14px 58px; background: #FBF8F1; border-radius: 4px; box-shadow: 0 2px 0 rgba(0,0,0,.05), 0 30px 50px -26px rgba(60,35,10,.55); transform: rotate(var(--tilt)); transition: transform .35s ease; }
.rt-print:hover { transform: rotate(0deg); }
.rt-photo { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: #2A2018; }
.rt-photo img { width: 100%; height: 100%; object-fit: cover; display: block; transition: filter .4s ease; }
.rt-photo::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(120% 90% at 50% 45%, rgba(0,0,0,0) 55%, rgba(40,20,0,.42) 100%); mix-blend-mode: multiply; }
.rt-stamp { position: absolute; right: 12px; bottom: 10px; z-index: 1; font: 700 17px/1 var(--font-mono); letter-spacing: .06em; color: #FF8A2A; text-shadow: 0 0 6px rgba(255,120,30,.75); }
.rt-print figcaption { position: absolute; left: 14px; right: 14px; bottom: 14px; display: flex; justify-content: space-between; align-items: baseline; gap: 10px; color: #3A2E22; }
.rt-print figcaption b { font: italic 600 20px/1.1 Georgia, "Times New Roman", serif; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rt-print figcaption span { font: 500 11px/1 var(--font-mono); text-transform: uppercase; letter-spacing: .1em; color: #8A7A66; flex-shrink: 0; }
.rt-print.rt-pop { animation: rt-pop .45s ease; }
@keyframes rt-pop { 40% { transform: rotate(var(--tilt)) scale(1.03); } }

.rt-looks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.rt-look { position: relative; display: block; padding: 0; aspect-ratio: 1; border-radius: 12px; overflow: hidden; border: 2px solid var(--border-line); background: var(--bg-card); cursor: pointer; }
.rt-look img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rt-look span { position: absolute; inset: auto 0 0 0; padding: 18px 6px 6px; background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.78)); color: #fff; font: 600 12.5px/1.15 var(--font-body); text-align: left; }
.rt-look[aria-pressed="true"] { border-color: #F97316; box-shadow: 0 0 0 3px rgba(249,115,22,.3); }
.rt-wrap { --st-c: #F97316; --st-on: #fff; }

.rt-album { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 4px; }
.rt-snap { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.rt-snap .rt-print { padding: 10px 10px 40px; }
.rt-snap .rt-print figcaption { left: 10px; right: 10px; bottom: 10px; }
.rt-snap .rt-print figcaption b { font-size: 16px; }
.rt-snap p { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--ink-secondary); }
.rt-snap .st-btn { align-self: flex-start; min-height: 40px; font-size: 14px; }

@media (max-width: 860px) {
  .rt-print { max-width: 360px; width: 100%; margin-inline: auto; box-sizing: border-box; }
  .rt-album { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 520px) {
  .rt-album { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .rt-print, .rt-photo img { transition: none; }
  .rt-print.rt-pop { animation: none; }
}
.rt-album-cta { display: flex; justify-content: center; margin: 18px 0 0; }
/* Most example pictures are before/after pairs: show only the "after" half, cropped past its label. */
.rt-after { object-position: 100% 0; transform: scale(1.1); transform-origin: 100% 0; }
.rt-look { aspect-ratio: 4 / 5; }
