/* Inspection viewer: all card art remains the supplied photograph. */
.card-viewer{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;color:#eee7d9;background:radial-gradient(ellipse at 50% 42%,#302e2b 0%,#17191b 54%,#0a0c0d 100%);overflow:hidden;overscroll-behavior:contain}
.card-viewer::backdrop{background:#050607ed}
.inspection-shell{height:100%;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:6px;padding:clamp(12px,2vh,24px) clamp(14px,3vw,36px) clamp(18px,2.5vh,30px)}
.inspection-head,.inspection-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(100%,960px);margin:auto}
.inspection-head{min-height:42px}.inspection-head p{margin:0;color:#d7c7a8;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;line-height:1.35}
.inspection-button{font:inherit;font-size:.78rem;letter-spacing:.08em;color:#e9dfce;background:#191a1bb8;border:1px solid #817158;border-radius:3px;min-height:42px;padding:9px 14px;cursor:pointer;white-space:nowrap;touch-action:manipulation}
.inspection-button:hover,.inspection-button:focus-visible{background:#6f5a3d;color:#fff;outline-offset:3px}
.inspection-button.primary{border-color:#b39968;color:#f3dfb7}
.inspection-stage{position:relative;min-height:0;width:min(100%,1100px);margin:auto;display:grid;place-items:center;perspective:1400px;overflow:hidden;touch-action:none;user-select:none;cursor:grab;contain:layout}
.inspection-stage.is-dragging{cursor:grabbing}
.inspection-stage::before{content:"";position:absolute;width:min(70vw,680px);height:38px;left:50%;bottom:5%;transform:translateX(-50%);border-radius:50%;background:#0009;filter:blur(20px);pointer-events:none}
.inspection-pan,.inspection-scale,.inspection-lift{display:grid;place-items:center;transform-style:preserve-3d;will-change:transform}
.inspection-pan{transform:translate3d(var(--pan-x,0px),var(--pan-y,0px),0)}
.inspection-scale{transform:scale(var(--zoom,1))}
.inspection-card{position:relative;width:min(50vw,460px,46.5dvh);aspect-ratio:464/729;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));will-change:transform;filter:drop-shadow(var(--shadow-x,0px) var(--shadow-y,26px) 22px #000b);border-radius:8px}
.inspection-card.triple{width:min(50vw,430px,43.8dvh);aspect-ratio:709/1182}
.inspection-card::before{content:"";position:absolute;inset:-4px;border-radius:9px;border:4px solid #bfc7c349;box-shadow:inset 0 0 3px #fff7,0 0 2px #c5d1d177;transform:translateZ(0);pointer-events:none}
.inspection-face{position:absolute;inset:0;overflow:hidden;border:1px solid #bbc2be6b;border-radius:6px;background:#202225;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:inset 0 0 0 2px #ffffff25,inset 0 0 0 5px #13171950}
.inspection-face.front{transform:translateZ(5px)}
.inspection-face.back{transform:rotateY(180deg) translateZ(5px)}
.inspection-face img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none}
.inspection-card.triple .inspection-face img{object-fit:cover;object-position:center 62%}
.inspection-face::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(var(--sheen-angle,110deg),transparent 29%,#e9f3f40d 47%,#ffffff18 50%,transparent 68%);opacity:var(--sheen-opacity,.35);mix-blend-mode:screen}
.inspection-card.is-flat{transform:none!important}.inspection-card.is-flat .inspection-face{transform:none!important;backface-visibility:visible}.inspection-card.is-flat[data-side="front"] .inspection-face.back,.inspection-card.is-flat[data-side="back"] .inspection-face.front{display:none}
.inspection-missing{height:100%;padding:12%;display:grid;place-content:center;text-align:center;gap:18px;background:linear-gradient(135deg,#22272a,#0e1012);border:15px solid #33383a;color:#d7c7aa}
.inspection-missing strong{font:normal clamp(1.6rem,3vw,2.6rem)/1.08 Georgia,serif}.inspection-missing span{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#ada79c}
.inspection-controls{justify-content:center;flex-wrap:wrap;min-height:96px;align-content:center;gap:8px 14px}
.inspection-controls .instruction{flex-basis:100%;order:2;text-align:center;color:#b9aea0;font-size:.81rem;letter-spacing:.025em;margin:4px 0 0}
.inspection-controls .zoom-group{display:flex;align-items:center;gap:0;border:1px solid #817158;border-radius:3px;overflow:hidden}
.zoom-group .inspection-button{border:0;border-radius:0;min-width:42px;padding:9px}.zoom-group .inspection-button+.inspection-button{border-left:1px solid #817158}
.inspection-side{position:absolute;bottom:12px;right:14px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#d3c6b1;pointer-events:none}
.inspection-lift-image{position:fixed;z-index:20;pointer-events:none;box-shadow:0 24px 42px #000a;will-change:transform,opacity}
@media(max-width:640px){.inspection-head p{font-size:.7rem;letter-spacing:.07em;max-width:65%}.inspection-button{font-size:.72rem;min-height:40px;padding:8px 10px}.inspection-controls{gap:7px;min-height:105px}.inspection-card{width:min(88vw,43.3dvh)}.inspection-card.triple{width:min(88vw,40.8dvh)}.inspection-stage::before{bottom:2%}.inspection-controls .instruction{font-size:.75rem}}
@media(max-height:570px){.inspection-shell{padding:8px 12px}.inspection-card{width:min(42vw,41.4dvh)}.inspection-card.triple{width:min(42vw,39dvh)}.inspection-controls{min-height:65px}.inspection-controls .instruction{display:none}}
@media(prefers-reduced-motion:reduce){.inspection-pan,.inspection-scale,.inspection-card,.inspection-lift{transition:none!important;animation:none!important}.inspection-face::after{opacity:.12}}
