﻿.navigation-feedback { position: fixed; inset: 0; z-index: 1100; display: grid; place-items: center; padding: 20px; background: #eee9df70; pointer-events: none; animation: navigation-reveal .16s ease-out; }
.navigation-feedback[hidden] { display: none; }
.navigation-feedback-copy { box-sizing: border-box; width: min(400px, 100%); max-height: calc(100dvh - 40px); overflow-y: auto; padding: clamp(24px, 5vw, 36px); border: 1px solid #c5cbb9; background: #f5f1e7; color: #303c29; box-shadow: 0 16px 64px #11100e24; text-align: center; }
.navigation-feedback-spinner { display: block; width: 24px; height: 24px; margin: 0 auto 18px; border: 2px solid #c5cbb9; border-top-color: #455536; border-radius: 50%; animation: navigation-spin .9s linear infinite; }
.navigation-feedback-kicker { margin: 0 0 14px; font: 600 10px/1.5 'Manrope', sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.navigation-feedback-title { margin: 0; font: 400 28px/1.2 Georgia, serif; letter-spacing: -.025em; }
.navigation-feedback-detail { margin: 16px 0 0; color: #697052; font: 400 13px/1.7 'DM Sans', sans-serif; overflow-wrap: anywhere; }
.navigation-feedback-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; margin-top: 20px; pointer-events: auto; }
.navigation-feedback-actions[hidden] { display: none; }
.gallery-card[data-navigation-pending], .related-card[data-navigation-pending] { outline: 2px solid #455536; outline-offset: -2px; }
.gallery-card[data-navigation-pending] { border-color: #455536; box-shadow: 0 12px 32px #30372524; }
.gallery-card[data-navigation-pending] .card-open-icon svg { visibility: hidden; }
.gallery-card[data-navigation-pending] .card-open-icon::after { content: ''; position: absolute; width: 16px; height: 16px; border: 2px solid #c5cbb9; border-top-color: #455536; border-radius: 50%; animation: navigation-spin .9s linear infinite; }
a[data-navigation-pending] { cursor: progress; }
.print-shop-loading { display: flex; align-items: center; gap: 12px; margin: 0 0 24px; color: #505b3d; font: 500 13px/1.7 'DM Sans', sans-serif; }
.print-shop-loading .navigation-feedback-spinner { width: 20px; height: 20px; margin: 0; flex-shrink: 0; }
@keyframes navigation-spin { to { transform: rotate(360deg); } }
@keyframes navigation-reveal { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .navigation-feedback, .navigation-feedback-spinner, .gallery-card[data-navigation-pending] .card-open-icon::after { animation: none; } }
