/* One artwork and card system for recorded achievements and Founder honours. */
.badge-art{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:middle;line-height:0}
.badge-art img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 6px #0004)}
.badge-art--small{width:24px;height:24px;margin-inline-start:5px}
.badge-art--strip{width:54px;height:54px}
.badge-art--large{width:88px;height:88px}
.profile-earned-badges{padding:0 16px 17px}
.earned-badge-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px}
.badge-strip-link{display:inline-flex;flex:0 0 auto;min-width:44px;min-height:44px;align-items:center;justify-content:center;border-radius:50%;text-decoration:none}
.badge-strip-more{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);color:var(--ink);font-size:13px;text-decoration:none}
.profile-reputation .badge-art{display:inline-flex;font-size:inherit;line-height:0}
.profile-reputation .badge-strip-empty{font-size:11px;color:var(--muted);margin:0;line-height:1.6}
.badge-collection{scroll-margin-top:22px;min-width:0}
.badge-collection .badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px}
.badge-entry{min-width:0;display:flex}
.badge-card{width:100%;min-width:0;display:flex;align-items:center;flex-direction:column;gap:13px;text-align:center;padding:22px 18px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(ellipse at 50% 0,var(--mist),transparent 65%),var(--surface-1);box-shadow:inset 0 1px #fff04;scroll-margin:24px;overflow-wrap:anywhere}
.badge-card-copy{width:100%;min-width:0;display:flex;flex-direction:column;flex:1}
.badge-card .badge-category{margin:0 0 7px;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);line-height:1.5}
.badge-card h3{font-size:16px;line-height:1.4;color:var(--ink);margin:0 0 10px}
.badge-card .badge-description{font-size:12px;line-height:1.75;color:var(--muted);margin:0 0 14px}
.badge-card .badge-criteria{padding-top:13px;border-top:1px solid var(--line);font-size:11px;line-height:1.75;color:var(--muted);margin:0 0 15px}
.badge-criteria strong{display:block;font-size:11px;color:var(--ink);margin-bottom:5px}
.badge-card-status{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 10px;margin-top:auto;font-size:10px;line-height:1.5;color:var(--muted)}
.badge-card-status>span{padding:3px 8px;border:1px solid var(--line);border-radius:20px;color:var(--accent-ghost)}
.badge-card--locked{background:var(--surface-1);border-style:dashed}
.badge-card--locked .badge-art{filter:saturate(.15);opacity:.48}
.badge-card--locked .badge-card-status>span{color:var(--muted)}
.badge-card.founder-badge--site_founder{border-color:#90723b80;background:radial-gradient(ellipse at 50% 0,#ab804b18,transparent 65%),var(--surface-1)}
.badge-card.founder-badge--site_founder h3{color:#e2bc70}
.badge-card.founder-badge--founding_member{border-color:#9a7cb780}
.locked-badge-collection{margin-top:32px;padding-top:4px;border-top:1px solid var(--line)}
.locked-badge-collection>p,.badge-collection-empty p{font-size:12px;color:var(--muted);line-height:1.7}
.badge-collection-empty{padding:18px 20px;border:1px dashed var(--line);border-radius:12px}
.badge-strip-link:focus-visible,.badge-strip-more:focus-visible,.badge-art--small:focus-visible,.badge-card:focus-visible,.badge-card:target,.badge-collection:focus-visible{outline:2px solid var(--moonlight,var(--accent-ghost));outline-offset:4px}
#panel .profile-earned-badges{padding:0 10px 16px}
#panel .badge-art--strip{width:48px;height:48px}
#panel .earned-badge-strip{flex-wrap:nowrap;overflow-x:auto;justify-content:safe center;gap:4px}
#panel .badge-collection .badge-grid{grid-template-columns:minmax(0,1fr)}
#panel .badge-criteria strong{font-size:11px;margin-bottom:5px}
@media(max-width:600px){.badge-collection .badge-grid{grid-template-columns:minmax(0,1fr)}.badge-card{padding:20px 16px}.badge-art--strip{width:48px;height:48px}.profile-earned-badges{padding-inline:10px}.earned-badge-strip{gap:4px;flex-wrap:nowrap;overflow-x:auto;justify-content:safe center;scrollbar-width:thin}}
@media(max-width:380px){.badge-art--strip,#panel .badge-art--strip{width:44px;height:44px}.profile-earned-badges,#panel .profile-earned-badges{padding-inline:8px}.earned-badge-strip,#panel .earned-badge-strip{gap:3px}}
@media(prefers-reduced-motion:no-preference){.badge-strip-link,.badge-card{transition:border-color .15s,filter .15s}.badge-strip-link:hover{filter:brightness(1.12)}.badge-card:hover{border-color:var(--moonlight,var(--accent-ghost))}}
