v0.5.84: matches origin filter, mobile gate, refresh reliability.
Ship Web refresh cache/lock, mobile demand gate, matches 职业/国服 filter, and related site updates through 0.5.84. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+241
-31
@@ -1873,13 +1873,18 @@ a.match-player-name:hover {
|
||||
color: rgba(180, 195, 215, 0.8);
|
||||
}
|
||||
.match-items,
|
||||
.match-skills,
|
||||
.match-backpack {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 6px;
|
||||
align-items: center;
|
||||
}
|
||||
.match-skills {
|
||||
display: flex;
|
||||
flex-wrap: nowrap;
|
||||
gap: 5px;
|
||||
align-items: center;
|
||||
}
|
||||
.match-inv {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@@ -2603,22 +2608,90 @@ body:has(#items-view:not(.hidden)) {
|
||||
}
|
||||
.matches-board .matches-body {
|
||||
min-height: 0;
|
||||
width: 100%;
|
||||
min-width: 0;
|
||||
}
|
||||
.matches-center-wrap {
|
||||
.matches-board .rankings-center-wrap.matches-center-wrap {
|
||||
align-items: stretch;
|
||||
/* Fixed column width so cards align; ~lv30 skill row + a little slack. */
|
||||
width: min(1680px, 100%, calc(100vw - 280px));
|
||||
}
|
||||
.matches-board .match-list,
|
||||
.matches-board .match-card {
|
||||
width: 100%;
|
||||
max-width: 100%;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.matches-board .match-skills {
|
||||
max-width: 100%;
|
||||
}
|
||||
@media (max-width: 1460px) {
|
||||
.match-skills {
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
}
|
||||
.matches-board .rankings-aside {
|
||||
align-items: stretch;
|
||||
}
|
||||
.matches-origins,
|
||||
.matches-players {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 6px;
|
||||
max-height: min(70vh, 560px);
|
||||
overflow: auto;
|
||||
scrollbar-width: thin;
|
||||
padding-right: 2px;
|
||||
width: 100%;
|
||||
}
|
||||
.matches-board .rankings-aside .rankings-region-btn {
|
||||
width: 100%;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.matches-board .match-list {
|
||||
gap: 12px;
|
||||
}
|
||||
.matches-page-wrap {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 16px;
|
||||
width: 100%;
|
||||
}
|
||||
.matches-pager {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 6px;
|
||||
padding: 4px 0 8px;
|
||||
}
|
||||
.matches-pager-btn {
|
||||
min-width: 36px;
|
||||
height: 34px;
|
||||
padding: 0 10px;
|
||||
border-radius: 6px;
|
||||
border: 1px solid rgba(140, 170, 210, 0.28);
|
||||
background: rgba(0, 0, 0, 0.28);
|
||||
color: rgba(220, 230, 245, 0.9);
|
||||
font: inherit;
|
||||
font-size: 13px;
|
||||
cursor: pointer;
|
||||
}
|
||||
.matches-pager-btn:hover:not(:disabled):not(.active) {
|
||||
border-color: rgba(180, 200, 230, 0.55);
|
||||
color: #fff;
|
||||
}
|
||||
.matches-pager-btn.active {
|
||||
border-color: rgba(232, 200, 120, 0.75);
|
||||
background: rgba(180, 130, 40, 0.28);
|
||||
color: rgba(255, 220, 160, 0.98);
|
||||
cursor: default;
|
||||
}
|
||||
.matches-pager-btn:disabled {
|
||||
opacity: 0.4;
|
||||
cursor: default;
|
||||
}
|
||||
.matches-pager-ell {
|
||||
color: rgba(160, 175, 195, 0.7);
|
||||
padding: 0 2px;
|
||||
user-select: none;
|
||||
}
|
||||
.rankings-empty {
|
||||
padding: 48px 0;
|
||||
text-align: center;
|
||||
@@ -2696,6 +2769,9 @@ body:has(#items-view:not(.hidden)) {
|
||||
gap: 18px;
|
||||
width: min(640px, 94%);
|
||||
}
|
||||
.matches-board .rankings-center-wrap.matches-center-wrap {
|
||||
width: min(1680px, 94%);
|
||||
}
|
||||
.rankings-aside {
|
||||
position: static;
|
||||
width: 100%;
|
||||
@@ -3232,7 +3308,7 @@ body:has(#items-view:not(.hidden)) {
|
||||
background: rgba(16, 24, 36, 0.92);
|
||||
box-sizing: border-box;
|
||||
}
|
||||
/* Row 1 only: avatar | nickname | actions — meta/signature live below as siblings */
|
||||
/* Row 1: avatar | info (name/meta/signature) | follow */
|
||||
.streamer-card-head {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@@ -3285,11 +3361,9 @@ a.streamer-avatar-wrap:hover .streamer-avatar {
|
||||
font-weight: 700;
|
||||
color: var(--muted);
|
||||
}
|
||||
/* Douyin search live: outer ring expands+fades; avatar shrinks (1s ease). */
|
||||
.streamer-avatar-wrap.is-live {
|
||||
padding-bottom: 10px;
|
||||
margin-bottom: -10px;
|
||||
}
|
||||
/* Douyin live avatar: ring pulse + badge overlaps ring (no gap).
|
||||
Measured on live.douyin.com: badge bottom:-6px on 54px wrap, ~10px overlap,
|
||||
gradient pill, no border/shadow. */
|
||||
.streamer-avatar-wrap.is-live .streamer-avatar {
|
||||
border-color: rgb(69, 71, 79);
|
||||
}
|
||||
@@ -3303,7 +3377,7 @@ a.streamer-avatar-wrap:hover .streamer-avatar {
|
||||
width: 99px;
|
||||
height: 99px;
|
||||
border-radius: 50%;
|
||||
border: 1px solid rgb(254, 26, 104);
|
||||
border: 1px solid rgb(254, 44, 85);
|
||||
box-sizing: border-box;
|
||||
pointer-events: none;
|
||||
z-index: 0;
|
||||
@@ -3335,23 +3409,37 @@ a.streamer-avatar-wrap:hover .streamer-avatar {
|
||||
.streamer-live-badge {
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
bottom: 0;
|
||||
/* Douyin: bottom:-6px → badge overlaps ring/avatar bottom, no air gap. */
|
||||
bottom: -6px;
|
||||
transform: translateX(-50%);
|
||||
z-index: 2;
|
||||
padding: 1px 6px;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
min-width: 38px;
|
||||
height: 16px;
|
||||
padding: 0 6px;
|
||||
font-size: 10px;
|
||||
font-weight: 700;
|
||||
line-height: 1.3;
|
||||
font-weight: 600;
|
||||
line-height: 1;
|
||||
letter-spacing: 0.02em;
|
||||
color: #fff;
|
||||
background: rgb(254, 26, 104);
|
||||
background: linear-gradient(131.17deg, rgb(255, 23, 100) 0%, rgb(237, 52, 149) 94.15%);
|
||||
border: 0;
|
||||
border-radius: 4px;
|
||||
box-shadow: none;
|
||||
white-space: nowrap;
|
||||
pointer-events: none;
|
||||
}
|
||||
.streamer-name {
|
||||
.streamer-card-info {
|
||||
flex: 1 1 auto;
|
||||
min-width: 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
gap: 5px;
|
||||
}
|
||||
.streamer-name {
|
||||
margin: 0;
|
||||
font-size: 20px;
|
||||
font-weight: 700;
|
||||
@@ -3362,38 +3450,52 @@ a.streamer-avatar-wrap:hover .streamer-avatar {
|
||||
white-space: nowrap;
|
||||
}
|
||||
.streamer-meta {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: fit-content;
|
||||
max-width: 100%;
|
||||
margin: 0;
|
||||
font-size: 13px;
|
||||
line-height: 20px;
|
||||
letter-spacing: 0.6px;
|
||||
line-height: 18px;
|
||||
letter-spacing: 0.2px;
|
||||
color: var(--muted);
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
font-variant-numeric: tabular-nums;
|
||||
}
|
||||
/* Douyin search card: 1×10px divider, 8px side margin */
|
||||
.streamer-meta-sep {
|
||||
display: inline-block;
|
||||
flex: 0 0 auto;
|
||||
width: 1px;
|
||||
height: 10px;
|
||||
margin: 0 8px;
|
||||
vertical-align: baseline;
|
||||
background: rgba(255, 255, 255, 0.16);
|
||||
height: 11px;
|
||||
margin: 0 10px;
|
||||
background: rgba(255, 255, 255, 0.13);
|
||||
}
|
||||
.streamer-meta-item {
|
||||
display: inline;
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
.streamer-meta-value {
|
||||
color: #dce5f2;
|
||||
font-weight: 600;
|
||||
}
|
||||
.streamer-meta-item.is-account .streamer-meta-value {
|
||||
color: #aab8cd;
|
||||
font-weight: 500;
|
||||
}
|
||||
.streamer-meta-item.is-stat .streamer-meta-label {
|
||||
margin-left: 3px;
|
||||
}
|
||||
.streamer-signature {
|
||||
margin: 0;
|
||||
font-size: 13px;
|
||||
line-height: 20px;
|
||||
letter-spacing: 0.4px;
|
||||
color: var(--muted);
|
||||
letter-spacing: 0.3px;
|
||||
color: #8e9bb0;
|
||||
display: -webkit-box;
|
||||
-webkit-line-clamp: 2;
|
||||
-webkit-line-clamp: 3;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
}
|
||||
.streamer-actions {
|
||||
flex: 0 0 auto;
|
||||
@@ -3586,9 +3688,21 @@ a.streamer-avatar-wrap:hover .streamer-avatar {
|
||||
.streamer-avatar-fallback {
|
||||
font-size: 24px;
|
||||
}
|
||||
.streamer-live-badge {
|
||||
bottom: -5px;
|
||||
min-width: 34px;
|
||||
height: 15px;
|
||||
font-size: 9px;
|
||||
}
|
||||
.streamer-name {
|
||||
font-size: 18px;
|
||||
}
|
||||
.streamer-meta {
|
||||
font-size: 12px;
|
||||
}
|
||||
.streamer-meta-sep {
|
||||
margin: 0 6px;
|
||||
}
|
||||
.streamer-actions {
|
||||
min-width: 76px;
|
||||
gap: 8px;
|
||||
@@ -3636,3 +3750,99 @@ a.streamer-avatar-wrap:hover .streamer-avatar {
|
||||
}
|
||||
}
|
||||
|
||||
/* —— Mobile gate (phones / tablets; set by mobile-gate.js) —— */
|
||||
#mobile-gate {
|
||||
display: none;
|
||||
}
|
||||
html.mobile-client,
|
||||
html.mobile-client body {
|
||||
height: 100%;
|
||||
max-height: none;
|
||||
overflow: auto;
|
||||
}
|
||||
html.mobile-client body > :not(#mobile-gate) {
|
||||
display: none !important;
|
||||
}
|
||||
html.mobile-client #mobile-gate {
|
||||
display: flex;
|
||||
flex: 1 1 auto;
|
||||
min-height: 100dvh;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 32px 20px;
|
||||
}
|
||||
.mobile-gate-card {
|
||||
width: min(360px, 100%);
|
||||
text-align: center;
|
||||
}
|
||||
.mobile-gate-brand {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
gap: 10px;
|
||||
margin-bottom: 28px;
|
||||
}
|
||||
.mobile-gate-logo {
|
||||
height: 28px;
|
||||
width: auto;
|
||||
display: block;
|
||||
}
|
||||
.mobile-gate-brand-title {
|
||||
font-size: 18px;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.16em;
|
||||
color: var(--text);
|
||||
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
|
||||
}
|
||||
.mobile-gate-title {
|
||||
margin: 0 0 10px;
|
||||
font-size: 22px;
|
||||
font-weight: 700;
|
||||
letter-spacing: 0.04em;
|
||||
color: var(--text);
|
||||
}
|
||||
.mobile-gate-desc {
|
||||
margin: 0 0 28px;
|
||||
font-size: 15px;
|
||||
line-height: 1.55;
|
||||
color: var(--muted);
|
||||
}
|
||||
.mobile-demand-btn {
|
||||
appearance: none;
|
||||
border: 1px solid rgba(94, 200, 255, 0.45);
|
||||
background: rgba(94, 200, 255, 0.12);
|
||||
color: var(--sel);
|
||||
font: inherit;
|
||||
font-size: 15px;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.06em;
|
||||
padding: 12px 22px;
|
||||
border-radius: 8px;
|
||||
cursor: pointer;
|
||||
transition: background 0.15s, border-color 0.15s, color 0.15s;
|
||||
}
|
||||
.mobile-demand-btn:hover:not(:disabled) {
|
||||
background: rgba(94, 200, 255, 0.2);
|
||||
border-color: rgba(94, 200, 255, 0.7);
|
||||
}
|
||||
.mobile-demand-btn:focus-visible {
|
||||
outline: 2px solid var(--sel);
|
||||
outline-offset: 2px;
|
||||
}
|
||||
.mobile-demand-btn:disabled {
|
||||
cursor: default;
|
||||
opacity: 0.75;
|
||||
border-color: rgba(140, 170, 210, 0.28);
|
||||
background: rgba(140, 170, 210, 0.1);
|
||||
color: var(--muted);
|
||||
}
|
||||
.mobile-demand-count {
|
||||
margin: 16px 0 0;
|
||||
font-size: 13px;
|
||||
color: var(--muted);
|
||||
}
|
||||
.mobile-demand-count span {
|
||||
color: var(--text);
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user