html,body{overflow:hidden;overscroll-behavior:none;background:#fcfcfc}
.header{z-index:10}
.archive{position:fixed;inset:0;overflow:hidden;touch-action:none;cursor:grab;outline:none;user-select:none;-webkit-user-select:none}
.archive.is-dragging{cursor:grabbing}
.archive:focus-visible{outline:1px solid #adb9c7;outline-offset:-3px}
.archive-field{position:absolute;inset:0;pointer-events:none}
.archive-image{position:absolute;left:0;top:0;margin:0;display:flex;align-items:center;justify-content:center;will-change:transform;background:transparent}
.archive-image img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;pointer-events:none}
.archive-page .notwork-link .notwork-domain{opacity:1!important;transform:none!important}.archive-page .notwork-link .notwork-soon{display:none}.archive-page .notwork-link>span{opacity:1}
@media(max-width:680px){.archive-image img{border-radius:6px}}

.archive-intro{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);margin:0;width:max-content;max-width:calc(100vw - 24px);font:inherit;font-size:12px;line-height:1.3;text-align:center;color:#fff;mix-blend-mode:difference;pointer-events:none}

.archive{background:#fcfcfc}

/* Reveal the initial image field after decoding; internal routes use navigation.js. */
.archive{transition:opacity 400ms cubic-bezier(.65,0,.35,1)}
.archive-loading .archive{opacity:0;pointer-events:none}
@media(prefers-reduced-motion:reduce){.archive{transition:none}.archive-loading .archive{opacity:0}}
