.archive .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.archive .place-card{border-radius:12px}
.archive .card-image{aspect-ratio:2.05}
.archive .card-content{padding:16px}
.archive .card-content h3{font-size:17px;line-height:1.45;margin:0 0 10px;letter-spacing:-.5px}
.archive .version-field{font-size:12px;gap:8px;margin:0 0 12px}
.archive .version-field select{min-height:34px;padding:5px 8px;font-size:13px}
.archive .card-description{font-size:13px;line-height:1.7;margin:0;word-break:keep-all}
.archive .intro-source{font-size:12px;margin:10px 0 0}
.archive .image-label{left:10px;top:10px;font-size:10px;padding:4px 7px}
.card-visual-link{position:absolute;inset:0;display:block;text-decoration:none;color:white}
.card-visual-link:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#10254175);pointer-events:none}
.card-visual-link:focus-visible{outline:3px solid var(--blue);outline-offset:-3px;z-index:1}
.card-open-label{position:absolute;right:10px;bottom:10px;z-index:2;background:#15213ce8;color:white;border:1px solid #ffffff70;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:700;line-height:1.4}
.card-visual-link:hover .card-open-label{background:var(--blue)}
.archive .card-bottom{margin-top:12px;padding-top:12px}
.archive .card-status{font-size:13px}
@media(min-width:1100px){.archive .cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.archive .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:520px){.archive .cards{grid-template-columns:1fr}.archive .card-image{aspect-ratio:2.3}.archive .card-content h3{font-size:18px}.archive .version-field select{min-height:40px}.archive .card-description{font-size:14px}.card-open-label{padding:8px 11px;font-size:13px}}
