.ou-badge-gallery,.ou-profile-badges{--badge-blue:#17639b;--badge-ink:#241713;--badge-paper:#f7f2df;--badge-line:#d7d3c5;color:var(--badge-ink);font-family:'DM Sans','Microsoft YaHei','PingFang SC',sans-serif}
.ou-badge-gallery{padding:clamp(32px,5vw,64px) 0}.ou-badge-heading{max-width:760px;margin-bottom:24px}.ou-badge-heading h2{font-family:Manrope,'Microsoft YaHei',sans-serif;color:var(--badge-blue);font-size:clamp(26px,3.4vw,38px);line-height:1.4;letter-spacing:-.025em;margin:0 0 14px}.ou-badge-heading p,.ou-badge-policy p{line-height:1.8;margin:8px 0}
.ou-badge-preview-note{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--badge-line);border-bottom:1px solid var(--badge-line);font-size:13px;line-height:1.7}.ou-badge-preview-note strong{color:var(--badge-blue);white-space:nowrap}
.ou-badge-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;margin-top:30px;align-items:start}.ou-badge-item{min-width:0;text-align:center}.ou-badge-item>img{display:block;width:min(100%,160px);height:auto;margin:0 auto 16px}.ou-badge-item h3{font-family:Manrope,'Microsoft YaHei',sans-serif;font-size:20px;color:var(--badge-blue);margin:0 0 7px;line-height:1.45}.ou-badge-role{font-size:12px;color:#6c5f58;margin:0 0 12px}.ou-badge-summary{font-size:14px;line-height:1.7;min-height:48px;margin:0 0 18px}
.ou-badge-rules{text-align:left;font-size:13px;line-height:1.75;border-top:1px solid var(--badge-line)}.ou-badge-rules summary,.ou-badge-policy summary{color:var(--badge-blue);font-weight:700;cursor:pointer;padding:12px 0;min-height:44px;list-style-position:outside;margin-left:16px}.ou-badge-rules h4{font-size:13px;margin:18px 0 6px}.ou-badge-rules ul{padding-left:18px;margin:0}.ou-badge-rules li+li{margin-top:8px}.ou-badge-rules p{margin:0 0 12px}.ou-badge-rules a{display:inline-block;padding:8px 0;line-height:1.6;color:var(--badge-blue);text-underline-offset:4px}.ou-badge-policy{margin-top:32px;padding-top:20px;border-top:1px solid var(--badge-line);font-size:12px;color:#6c5f58;line-height:1.8}.ou-badge-policy a{color:var(--badge-blue);text-underline-offset:4px}.ou-badge-policy ul{padding-left:18px}.ou-badge-gallery :is(summary,a):focus-visible{outline:3px solid #3085c8;outline-offset:4px;border-radius:2px}.ou-badge-gallery :is(summary,a):hover{color:#124e7c}.ou-badge-gallery ::selection,.ou-profile-badges ::selection{color:var(--badge-ink);background:#ffe48b}.ou-badge-gallery .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ou-profile-badges{padding:22px 0;border-top:1px solid var(--badge-line)}.ou-profile-badges-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.ou-profile-badges-heading h3{font-family:Manrope,'Microsoft YaHei',sans-serif;font-size:18px;color:var(--badge-blue);margin:0}.ou-profile-badges-heading>span{font-size:12px;color:#6c5f58}.ou-profile-badges ul{display:flex;flex-wrap:wrap;gap:18px 28px;padding:0;margin:0;list-style:none}.ou-profile-badges li{display:flex;align-items:center;gap:10px;min-width:150px}.ou-profile-badges img{display:block;width:52px;height:52px;flex:none}.ou-profile-badges strong,.ou-profile-badges li span{display:block;font-size:13px;line-height:1.7}.ou-profile-badges li span{font-size:12px;color:#6c5f58}.ou-profile-badges>p{margin:16px 0 0;font-size:12px;line-height:1.7;color:#6c5f58}
.ou-profile-badges li{max-width:100%;align-items:flex-start}.ou-profile-badges li>div{min-width:0}.ou-profile-badge-evidence{font-size:12px;line-height:1.7;max-width:300px}.ou-profile-badge-evidence summary{cursor:pointer;color:var(--badge-blue);padding:8px 0;min-height:36px}.ou-profile-badge-evidence summary:focus-visible{outline:3px solid #3085c8;outline-offset:3px}.ou-profile-badge-evidence p{overflow-wrap:anywhere;margin:6px 0}.ou-profile-badges [data-badge-status="unearned"] img{opacity:.6}
@media(max-width:1050px){.ou-badge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.ou-badge-summary{min-height:0}}@media(max-width:640px){.ou-badge-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.ou-badge-item>img{width:128px}.ou-badge-item h3{font-size:18px}.ou-badge-summary{font-size:13px}.ou-badge-preview-note{gap:4px}.ou-badge-preview-note strong{width:100%}.ou-badge-policy{font-size:12px}.ou-profile-badges ul{gap:16px}.ou-profile-badges li{min-width:135px}}
