  .lede{font-size:1.05rem;color:var(--muted);max-width:44rem}
  .bull-art{display:flex;justify-content:center;margin:6px 0 12px}
  .bull-art .badge-img{width:170px;height:170px;border-radius:50%;filter:drop-shadow(0 6px 14px rgba(0,0,0,.55))}
  .tier-rule{font-weight:600;color:var(--gold-hi);font-size:1.02rem;margin:8px 0 4px}
  .tier-detail{color:var(--muted);font-size:1rem;margin:0 0 8px}
  .tier-count{font-size:.95rem;color:var(--muted);margin:0}
  .my-badges{margin:22px 0}
  .my-badges .rowline{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}
  .earned{display:flex;gap:14px;flex-wrap:wrap;margin:14px 0}
  .earned .ebadge{text-align:center;font-size:.95rem}
  .earned .ebadge .badge-img{width:84px;height:84px;display:block;margin:0 auto 6px;border-radius:50%}
  .earned .ebadge .when{color:var(--muted);font-size:.85rem}
  .table-scroll{overflow-x:auto;margin-top:14px;-webkit-overflow-scrolling:touch;
    background:linear-gradient(90deg,var(--bg) 0,transparent 24px) left/24px 100% no-repeat local,
               linear-gradient(-90deg,var(--bg) 0,transparent 24px) right/24px 100% no-repeat local}
  table.lb{width:100%;border-collapse:collapse;font-size:1rem;min-width:560px}
  table.lb th,table.lb td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:middle}
  table.lb th{color:var(--gold-hi);font-weight:700;white-space:nowrap}
  table.lb .rankcell{font-weight:700;color:var(--gold-hi);font-size:1.1rem;white-space:nowrap}
  table.lb .volcell{white-space:nowrap}
  .mini-badges{display:flex;gap:6px;align-items:center;flex-wrap:nowrap}
  .mini-badges>span{flex:0 0 auto;display:inline-flex}
  .mini-badges .badge-img{width:30px;height:30px;flex:0 0 auto;border-radius:50%}
  .collector-link{color:var(--gold-hi);text-decoration:none;font-weight:600}
  .rules-list{margin:14px 0 0;padding-left:1.2rem;color:var(--muted);font-size:1rem}
  .rules-list li{margin:6px 0}
  .rules-list b{color:var(--gold-hi)}
  #syncMsg{font-size:1rem}
