
#trophy-case{scroll-margin-top:12px;padding:40px 4px;font:16px/1.5 var(--body);color:#f6efe4}
#trophy-case>h2,.showcase-public h1{font:400 clamp(25px,3.2vw,40px)/1.2 var(--display);margin:10px 0;color:#fff0d4}
.showcase-lede{font-size:18px;color:#c5bdcc;margin-bottom:24px}
.showcase-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr);gap:24px;align-items:start}
.player-card{border:1px solid #9663c2;border-radius:16px;overflow:hidden;background:#15101e;box-shadow:0 16px 40px #0006}
.player-card-head{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:20px 24px;background:radial-gradient(ellipse at right,#58346855,transparent),linear-gradient(120deg,#212254,#291830);min-height:140px}
.banner-gold{border-color:#d5ac51}.banner-gold .player-card-head{background:linear-gradient(120deg,#51341a,#211b13)}
.banner-green{border-color:#57b387}.banner-green .player-card-head{background:linear-gradient(120deg,#19473d,#17242d)}
.player-title{font:14px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#ffd23f;margin-bottom:8px}
.player-card h3{font:400 clamp(22px,2.7vw,34px)/1.15 var(--display);overflow-wrap:anywhere;margin:0}
.player-city{font:16px var(--body);margin-top:10px;color:#d4cadb}
.player-crest{width:85px;height:102px;flex:none;object-fit:contain;background:#07060b50;border:1px solid #ffffff20;border-radius:12px}
.postcard-scene{width:100%;height:auto;display:block;aspect-ratio:3/2;background:#15312b}
.player-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #ffffff20;padding:18px 20px;gap:16px}
.player-metrics strong{display:block;font:400 27px var(--display);color:#37e28a}.player-metrics span{font:14px var(--body);color:#c5bdcc}
.player-pins{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 18px 18px}
.player-pins>p{grid-column:1/-1;color:#c5bdcc;font-size:15px}
.badge-stamp{padding:12px 8px;border:1px solid #77708466;border-radius:10px;display:grid;gap:6px;text-align:center;background:#201829}
.badge-symbol{font-size:29px;line-height:1;color:#91889d}
.badge-stamp strong{font:700 14px/1.3 var(--body);color:#eee4d7}.badge-stamp small{font:12px var(--mono);color:#b9b0c3}
.badge-stamp.earned{border-color:#ffd23f70;background:linear-gradient(145deg,#40302566,#1b1723)}.badge-stamp.earned .badge-symbol{color:#ffd23f}.badge-stamp.earned small{color:#37e28a}
.showcase-customize{padding:22px;background:#17121f;border:1px solid #64526f;border-radius:14px;display:grid;gap:16px}
.showcase-customize h3,.achievement-shelf h3{font:400 22px/1.2 var(--display);margin:0}
.showcase-customize label{font:600 15px var(--body);display:grid;gap:8px;color:#d7ccd9}
.showcase-customize input,.showcase-customize select,.record-filters select,.showcase-actions input{min-height:44px;padding:10px 12px;border:1px solid #756381;border-radius:8px;background:#0d0b14;color:#f6efe4;font:16px var(--body);width:100%;max-width:100%}
.show-button,.show-link{min-height:44px;padding:10px 16px;border:1px solid #866c4d;border-radius:8px;background:linear-gradient(#ffe36b,#ffb020);color:#251a0b;font:700 15px/1.3 var(--body);text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.showcase-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.showcase-actions input{flex:1 0 100%;font-size:13px}
.showcase-customize .show-button{width:100%}.record-note{color:#bdb2c5;font:14px/1.5 var(--body);margin:12px 0}
#showcase-status{color:#a8edc5;font:15px var(--body);min-height:24px;margin:12px 0}
.achievement-shelf{margin-top:24px}.achievement-shelf>p{color:#c5bdcc;margin:12px 0 20px}
.badge-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.achievement-card{padding:12px;border:1px solid #ffffff20;background:#15101e;border-radius:12px;display:flex;flex-direction:column}
.achievement-card p{font:14px/1.5 var(--body);color:#c5bdcc;margin:14px 0;flex:1}
.achievement-card label{display:flex;align-items:center;gap:8px;font:14px var(--body);min-height:44px}.achievement-card input{width:20px;height:20px;accent-color:#37e28a;flex:none}
.achievement-card progress{accent-color:#37e28a;height:8px;margin:10px 0}
.personal-records{margin-top:24px;padding:16px 20px;border:1px solid #63526f;border-radius:12px;background:#17121f}
.personal-records summary{font:400 20px var(--display);padding:8px 0;cursor:pointer;min-height:44px;color:#ffd23f}
.record-filters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.record-filters select{width:auto;flex:1}.record-filters button{background:#241c30;color:#ece3d9;border-color:#756381}
.record-filters [aria-pressed=true]{border-color:#37e28a;color:#a9edc5;background:#193329}
.record-best{font:700 19px var(--body);color:#ffd23f;margin:14px 0}
.records-table{width:100%;border-collapse:collapse;text-align:left;font:15px var(--body)}
.records-table caption{text-align:left;color:#c5bdcc;font-size:14px;margin:12px 0}
.records-table th,.records-table td{padding:12px 8px;border-bottom:1px solid #ffffff20}.records-table th{color:#37e28a}.records-table td:nth-child(2){font-weight:750;color:#fff0d4}
.records-empty{padding:24px 0;color:#c5bdcc}.personal-records .show-link{margin:14px 0}
.leaderboard-note{padding:18px 20px;border:1px dashed #756381;border-radius:12px;margin-top:20px;color:#c5bdcc;font:15px var(--body)}
.leaderboard-note strong{color:#d7c6e5;font-size:17px}.leaderboard-note p{margin-top:10px}
.showcase-public{margin:0;background:#07060b;color:#f6efe4;font:18px/1.5 var(--body)}
.showcase-public main{width:min(940px,calc(100% - 32px));margin:32px auto;padding:0}
.showcase-public header{padding:18px 24px;border-bottom:1px solid #ffffff20;display:flex;align-items:center;justify-content:space-between;gap:16px}
.showcase-public header>a:last-child{color:#ffd23f;font-size:16px}
.showcase-public .player-card{margin:24px 0}.showcase-public .player-pins{padding-bottom:20px}
.shared-records{padding:24px;border:1px solid #51405f;border-radius:12px;background:#17121f;margin:24px 0}
.shared-records h2{font:400 24px var(--display);margin-bottom:16px}.shared-records p{margin:10px 0;color:#d7cdda}
@media(max-width:1000px){.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){#trophy-case{padding:30px 4px}.showcase-layout{grid-template-columns:1fr;gap:18px}.player-card-head{padding:16px;min-height:120px}.player-card h3{font-size:24px}.player-city{font-size:15px}.player-crest{width:70px;height:84px}.player-metrics{padding:16px 12px;gap:10px}.player-metrics strong{font-size:23px}.player-metrics span{font-size:13px}.player-pins{padding:0 10px 12px;gap:6px}.badge-stamp{padding:10px 6px}.badge-stamp strong{font-size:13px}.badge-stamp small{font-size:11px}.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.showcase-customize{padding:18px}.showcase-actions .show-button{flex:1}.personal-records{padding:14px 12px}.record-filters{gap:8px}.record-filters select{flex:1 0 100%;width:100%}.records-table th,.records-table td{padding:10px 5px;font-size:14px}.showcase-public main{margin-top:24px}.showcase-public h1{font-size:28px}}

.achievement-toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(620px,calc(100% - 24px));z-index:60;padding:18px;border:1px solid #ffd23f;border-radius:12px;background:#211a2f;color:#f6efe4;box-shadow:0 10px 45px #0009;display:grid;gap:7px;font:15px/1.4 var(--body)}.achievement-toast strong{color:#ffd23f}.achievement-toast a{color:#91edb4}

.postcard-export{padding:16px;margin:18px 0;border:1px solid #37e28a70;border-radius:12px;background:#13291f}.postcard-export summary{font:700 17px var(--body);cursor:pointer;margin-bottom:12px}.postcard-export img{width:100%;height:auto;margin-top:18px;border-radius:8px}.postcard-export .show-link{margin:10px 0}
