.hc-public-badge { display: inline-flex; align-items: center; gap: 4px; max-width: 100%; color: #755423; font-size: 11px; font-weight: 750; vertical-align: middle; }
.hc-profile .hc-public-badge { color: #f5ce76; }
.hc-badge-icon { display: block; width: 58px; height: 58px; color: #dbae5e; flex-shrink: 0; }
.hc-badge-edge { fill: #26251f; stroke: currentColor; stroke-width: 1; }
.hc-badge-half { fill: currentColor; opacity: .2; }
.hc-badge-icon text { fill: #f4f1e8; stroke: #26251f; stroke-width: 3px; paint-order: stroke; font: 900 15px sans-serif; }
.hc-public-badge .hc-badge-icon { width: 23px; height: 23px; }
.hc-record-honor { display: flex; grid-column: 1 / -1; gap: 12px; align-items: center; margin-top: 12px; padding-top: 12px; border-top: 1px solid currentColor; font-size: 11px; line-height: 1.65; }
.hc-record-honor > b { font-size: 22px; font-variant-numeric: tabular-nums; }
.hc-record-honor > span { font-size: 11px; color: inherit; letter-spacing: 0; }
.hc-profile { margin: 0 0 30px; padding: 24px 0; border-block: 1px solid var(--line); scroll-margin-top: 20px; }
.hc-profile h2 { margin: 6px 0 0; font-size: 23px; }
.hc-profile-head { display: flex; justify-content: space-between; align-items: end; gap: 16px; }
.hc-profile-head small { color: var(--coral); font-size: 10px; font-weight: 800; letter-spacing: .15em; }
.hc-profile label { display: grid; gap: 6px; color: #c8cad2; font-size: 12px; }
.hc-profile select,.hc-profile button { min-height: 44px; border: 1px solid var(--line); background: var(--night-soft); color: var(--paper); font: inherit; font-size: 13px; padding: 9px 12px; }
.hc-profile button { cursor: pointer; }
.hc-profile :is(button,select):focus-visible { outline: 2px solid var(--yellow); outline-offset: 3px; }
.hc-profile button:disabled { cursor: default; }
.hc-profile [aria-busy="true"] { opacity: .65; }
.hc-profile-status { min-height: 20px; margin: 12px 0; color: #c8cad2; font-size: 12px; line-height: 1.6; }
.hc-profile-status.is-error { color: var(--coral); }
.hc-profile-ranks { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; margin: 24px 0 12px; }
.hc-profile-ranks > div { min-width: 0; }
.hc-profile-ranks dt { font-size: 13px; color: #c8cad2; }
.hc-profile-ranks dd { margin: 7px 0; font-size: 28px; font-weight: 850; font-variant-numeric: tabular-nums; }
.hc-profile-ranks small { display: block; color: #a7aab6; font-size: 11px; line-height: 1.65; overflow-wrap: anywhere; }
.hc-profile-note { color: #a7aab6; font-size: 12px; line-height: 1.7; margin: 0 0 24px; }
.hc-profile-collection-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.hc-profile-collection-head h3 { font-size: 15px; margin: 0; }
.hc-profile-collection-head span { color: #dbae5e; font-size: 13px; font-variant-numeric: tabular-nums; }
.hc-profile-badges { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); padding: 0; margin: 14px 0 22px; gap: 8px; list-style: none; }
.hc-profile-badges li { min-width: 0; }
.hc-profile-badges button { display: flex; flex-direction: column; align-items: center; gap: 7px; width: 100%; height: 100%; padding: 15px 7px; text-align: center; border-color: transparent; background: transparent; }
.hc-profile-badges button[aria-pressed="true"] { border-color: #dbae5e; background: #26251f; }
.hc-profile-badges button:not(:disabled):hover { background: var(--night-soft); border-color: #79715a; }
.hc-profile-badges button[data-locked] .hc-badge-icon { color: #737680; }
.hc-profile-badges button[data-locked] .hc-badge-icon text { fill: #a7aab6; }
.hc-profile-badges strong { font-size: 12px; }
.hc-profile-badges em { color: #dbae5e; font-size: 10px; font-style: normal; }
.hc-profile-badges button[data-locked] em { color: #a7aab6; }
.hc-profile-badges small { font-size: 11px; line-height: 1.6; color: #b6b8c2; word-break: keep-all; overflow-wrap: anywhere; }
.hc-profile-representative { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; padding: 14px 0; border-block: 1px solid var(--line); }
.hc-profile-representative > span { font-size: 12px; color: #c8cad2; }
.hc-profile-representative button { margin-left: auto; }
.hc-profile-footer { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; margin-top: 18px; font-size: 13px; font-weight: 700; }
.hc-profile-footer a { text-underline-offset: 4px; }
@media(max-width:560px){
  .hc-profile { padding-top: 20px; }
  .hc-profile-head { align-items: start; }
  .hc-profile h2 { font-size: 20px; }
  .hc-profile-badges { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hc-profile-badges button { padding: 14px 10px; }
  .hc-profile-badges small { font-size: 11px; }
  .hc-profile-ranks { gap: 16px; }
  .hc-profile-ranks dd { font-size: 24px; }
}
