/* Collection pages share the game's warm paper, mint and lavender palette. */
.collection-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:8px 0 26px}
.collection-heading h1{font-size:clamp(30px,5vw,46px);line-height:1.12;letter-spacing:-1.5px;margin:10px 0}
.collection-heading p{color:#827065;font-size:14px;line-height:1.6;margin:0}
.collection-heading>a{flex:0 0 auto;font-size:13px;text-decoration:none;min-height:44px;display:grid;place-items:center;padding:12px 17px;border-radius:12px}
.collection-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:7px;border:1px solid #decebf;background:#f1e9dc;border-radius:16px;margin:0 0 28px;width:fit-content;max-width:100%}
.collection-tabs a{display:grid;place-items:center;min-height:44px;padding:10px 20px;border-radius:11px;color:#7b655a;text-decoration:none;font-size:13px;font-weight:750}
.collection-tabs a[aria-current=page]{background:#fffdf5;color:#5a493e;box-shadow:0 2px 5px #a38c6830}
.collection-cabinets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.collection-cabinet{display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:#654f41;padding:28px;border:2px solid #d4bd94;border-radius:24px;background:#fff0ca;box-shadow:0 5px 0 #d9c4a0;transition:transform .16s}
.collection-cabinet:hover{transform:translateY(-3px)}
.collection-cabinet.collection-mail{background:#e9e0f4;border-color:#c7b3d4;box-shadow:0 5px 0 #c7b4d2}
.collection-cabinet-art{width:160px;height:145px;display:grid;place-items:center;margin:10px auto 24px}
.collection-cabinet-art .honor-icon{width:155px;height:145px;filter:drop-shadow(0 8px 0 #b6956940)}
.collection-envelope{font-size:100px;line-height:1;color:#8b749b;transform:rotate(-8deg);background:#fff8e8;border:2px solid #bb9da7;border-radius:13px;box-shadow:8px 8px 0 #baa3cc50;height:110px;margin-top:28px;margin-bottom:41px}
.collection-cabinet h2{font-size:27px;margin:12px 0 10px;letter-spacing:-.6px}
.collection-cabinet>strong{padding:7px 14px;border-radius:20px;background:#ffffff80;font-size:12px}
.collection-cabinet p{max-width:310px;font-size:13px;line-height:1.6;color:#806f67;min-height:42px;margin:18px 0}
.collection-open{margin-top:auto;font-weight:800;font-size:13px;padding-top:10px}
.collection-local-note,.medal-wall-note{color:#8a796e;font-size:12px;line-height:1.7;margin:25px 0}
.collection-tabs a:focus-visible,.collection-cabinet:focus-visible,.medal-card summary:focus-visible{outline:3px solid #9574b0;outline-offset:4px}
.medal-wall-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px}
.medal-wall-header h2{font-size:27px;margin:0 0 12px}.medal-wall-header .section-kicker{display:block;margin-bottom:8px}
.medal-wall-count{background:#f9e3a6;padding:8px 15px;border-radius:20px;font-size:13px;font-weight:800}
.medal-wall-summary{padding:22px 25px;border:1px solid #d9c9b5;border-radius:18px;background:#fffaf0;margin:8px 0 25px;font-size:14px;line-height:1.6}
.medal-wall-current{font-weight:800;color:#775a43}.medal-wall-progress{max-width:540px}
.medal-wall-progress progress{display:block;width:100%;height:10px;accent-color:#a4c8ab;margin:12px 0}
.medal-wall-empty{font-size:14px;color:#8d7566}
.medal-wall-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.medal-card{min-width:0;border:2px solid #d8c6a5;border-radius:20px;background:linear-gradient(#fffaf0,#f5e6c7);box-shadow:0 4px 0 #dac6a4;overflow:hidden}
.medal-card.unearned{background:#f2eee7;border-color:#d6cdc0;box-shadow:0 4px 0 #ded6cb}
.medal-card-summary{display:flex;align-items:center;flex-direction:column;gap:14px;cursor:pointer;list-style:none;padding:25px 15px 20px;text-align:center;min-height:220px}
.medal-card-summary::-webkit-details-marker{display:none}
.medal-card-summary>.honor-icon{height:110px;width:125px;flex-shrink:0}
.medal-card.unearned .honor-icon{filter:grayscale(1);opacity:.38}
.medal-card-copy{display:grid;gap:7px;line-height:1.4}.medal-card-copy strong{font-size:16px}.medal-card-copy small{font-size:11px;color:#8b7662}
.medal-status{font-size:11px;font-weight:800;padding:5px 12px;border-radius:16px;background:#d8e8c7;color:#5f7954}
.unearned .medal-status{background:#e3ddd3;color:#8c8173}
.medal-card[open]{border-color:#ae8cc2}.medal-card-detail{border-top:1px dashed #ccbaa1;margin:0 17px;padding:18px 0;text-align:center;font-size:12px;line-height:1.65;color:#806856}
.medal-large-art .honor-icon{width:180px;height:160px;max-width:100%}
#collection-body>.postcard-panel{max-width:1020px;margin:auto;padding:25px;border:1px solid #d8c4ae;border-radius:22px;background:#fffaf0}
#collection-body .postcard-collection-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:22px 16px}
#collection-body .postcard-reveal{max-width:440px}
#collection-body .postcard-art .postcard-image{max-height:64dvh}
.postcard-filters{display:flex;gap:8px;justify-content:center;margin:0 0 18px;flex-wrap:wrap}
.postcard-filters button[aria-pressed=true]{background:#d5e8cd;border-color:#9eaf91;color:#486443}
.postcard-empty-album{padding:30px 18px;border:1px dashed #cdb9a0;border-radius:15px;color:#8a715f;font-size:14px;line-height:1.6}
@media(max-width:730px){.collection-heading{align-items:flex-start;flex-direction:column;gap:15px}.collection-heading>a{font-size:12px}.collection-cabinets{gap:17px}.collection-cabinet{padding:20px 13px}.collection-cabinet h2{font-size:21px}.medal-wall-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}#collection-body .postcard-collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}#collection-body>.postcard-panel{padding:20px 13px}}
@media(max-width:480px){.collection-cabinets{grid-template-columns:1fr}.collection-tabs{width:100%;gap:4px;padding:5px}.collection-tabs a{flex:1;padding:9px 6px;font-size:11px}.medal-card-summary{padding:18px 8px;min-height:210px}.medal-card-summary>.honor-icon{width:95px;height:95px}.medal-card-copy strong{font-size:14px}.medal-wall-summary{padding:18px}#collection-body .postcard-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}}
@media(prefers-reduced-motion:reduce){.collection-cabinet{transition:none}.collection-cabinet:hover{transform:none}}
@media(max-width:730px){body.collection-page .site-nav{display:none}body.collection-page.menu-open .site-nav{display:flex;position:static;margin-top:8px}body.collection-page #site-content{padding-top:12px}.medal-wall.site-box{padding:17px}.medal-wall-summary{margin-bottom:18px}}
