.collection-page { max-width:1280px; margin:auto; padding:44px 24px 70px; }
.collection-page h1 { font-size:clamp(30px,4vw,48px); margin:12px 0; }
.collection-tabs { display:flex; flex-wrap:wrap; gap:12px; margin:26px 0; }
.collection-tabs a { padding:12px 20px; border:1px solid var(--line); border-radius:10px; }
.collection-tabs a[aria-current] { background:#dbb66c; color:#231f15; border-color:#bf943e; font-weight:700; }
.collection-meta { font-size:14px; color:var(--muted); line-height:1.8; }
.collection-note { padding:16px 20px; line-height:1.8; border-left:3px solid var(--gold); background:color-mix(in srgb,var(--gold) 8%,var(--panel)); }
.collection-controls { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto; gap:18px; align-items:end; padding:20px; border:1px solid var(--line); background:var(--panel); border-radius:12px; }
.collection-controls label { display:grid; gap:8px; font-size:14px; min-width:0; }
.collection-controls :is(input[type=search],select) { width:100%; min-width:0; min-height:44px; }
.collection-controls .collection-wanted { display:flex; gap:10px; align-items:center; min-height:44px; }
.collection-wanted input { width:18px; height:18px; }
.collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.collection-card { border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--panel); display:flex; flex-direction:column; min-width:0; }
.collection-card > img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; background:#18191c; }
.collection-card-body { padding:20px; display:flex; flex-direction:column; gap:12px; flex:1; }
.collection-card h2 { font-size:20px; margin:0; line-height:1.5; }
.collection-card p { margin:0; line-height:1.8; overflow-wrap:anywhere; }
.collection-original { font-size:13px; color:var(--muted); }
.collection-tag { color:var(--gold); font-size:14px; font-weight:600; }
.collection-location { font-size:14px; }
.collection-card summary { cursor:pointer; font-weight:600; padding:8px 0; }
.collection-card details { font-size:14px; line-height:1.8; }
.collection-map-links { display:grid; gap:10px; margin:14px 0; }
.collection-card button { align-self:start; margin-top:auto; }
.collection-card button[aria-pressed=true] { background:#dbb66c; color:#231f15; }
.collection-empty { grid-column:1/-1; padding:30px; border:1px dashed var(--line); }
.collection-image-error { min-height:200px; padding:30px; }
@media(max-width:900px) { .collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .collection-controls { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .collection-page { padding:30px 16px 50px; } .collection-grid,.collection-controls { grid-template-columns:1fr; } }
