fix(ui): float VIP duplicates, hover cards, UC menu and light-theme contrast

This commit is contained in:
kate522 committed 2026-07-21 18:54:16 +08:00
1 parent f9b495eb14
commit 56434a9255
8 files changed
+388 -108

No files matched your search

+236 -67
View File
@@ -1,5 +1,5 @@
/**
* Header multi-function publish cluster + VIP CTA.
* Header multi-function publish cluster + VIP CTA + hover VIP cards.
*
* @package AKSRT
*/
@@ -50,7 +50,7 @@
justify-content: center;
width: 1em;
height: 1em;
margin: 0 !important; /* kill mr3/ml10 utility drift on icons */
margin: 0 !important;
flex: 0 0 auto;
line-height: 1;
font-size: 1em;
@@ -74,51 +74,58 @@
}
.navbar-but-cluster .ml10 {
margin-left: 0; /* spacing handled by cluster gap */
}
.navbar-but-cluster .theme-toggle-desktop,
.navbar-but-cluster .toggle-theme {
display: inline-flex;
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
padding: 0;
border-radius: 999px;
flex: 0 0 auto;
}
.navbar-but-cluster .theme-toggle-desktop > i,
.navbar-but-cluster .toggle-theme > i {
margin: 0 !important;
line-height: 1;
margin-left: 0;
}
/* Publish multi-type dropdown */
.newadd-btns.hover-show {
position: relative;
display: inline-flex;
align-items: center;
z-index: 20;
}
.newadd-btns .drop-newadd,
.newadd-btns .hover-show-con {
display: none;
display: block;
position: absolute;
top: calc(100% + 6px);
top: calc(100% + 0px);
right: 0;
min-width: 148px;
margin: 0;
padding: 6px 0;
padding-top: 10px; /* bridge gap so pointer can move into menu */
background: transparent;
border: 0;
box-shadow: none;
opacity: 0;
visibility: hidden;
transform: translateY(6px);
transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
z-index: 50;
pointer-events: none;
}
.newadd-btns .drop-newadd::before,
.newadd-btns .hover-show-con.drop-newadd::before {
content: "";
display: block;
background: var(--main-bg-color, #fff);
border-radius: 8px;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
padding: 6px 0;
z-index: 50;
position: absolute;
inset: 6px 0 0 0;
z-index: -1;
}
.newadd-btns.hover-show:hover .drop-newadd,
.newadd-btns.hover-show:hover .hover-show-con,
.newadd-btns.hover-show:focus-within .drop-newadd {
display: block;
.newadd-btns.hover-show:focus-within .drop-newadd,
.newadd-btns.hover-show:focus-within .hover-show-con {
opacity: 1;
visibility: visible;
transform: translateY(0);
pointer-events: auto;
}
.newadd-btns__item {
@@ -129,6 +136,7 @@
color: inherit;
text-decoration: none;
white-space: nowrap;
position: relative;
}
.newadd-btns__item > i {
@@ -143,29 +151,206 @@
color: var(--focus-color, var(--color-primary));
}
/* Header VIP hover cards */
.navbar-vip.hover-show {
/* Generic hover-show (zibll parity) */
.hover-show {
position: relative;
cursor: pointer;
z-index: 20;
}
.hover-show .hover-show-con {
position: absolute;
top: 100%;
right: 0;
opacity: 0;
visibility: hidden;
transform: translateY(6px);
transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
pointer-events: none;
z-index: 60;
/* invisible bridge so moving mouse into panel doesn't close it */
padding-top: 10px;
}
.hover-show:hover .hover-show-con,
.hover-show:focus-within .hover-show-con {
opacity: 1;
visibility: visible;
transform: translateY(0);
pointer-events: auto;
}
/* Header VIP hover cards — zibll .sub-vip-card */
.navbar-vip-hover,
.navbar-vip .hover-show {
position: relative;
display: inline-block;
z-index: 30;
}
.sub-vip-card.hover-show-con,
.hover-show-con.sub-vip-card {
font-size: 12px;
padding: 10px 0 0 !important; /* top bridge */
background: transparent !important;
border: none !important;
box-shadow: none !important;
white-space: nowrap;
left: auto;
right: 0;
min-width: 0;
}
.sub-vip-card .vip-card {
display: inline-block;
vertical-align: top;
width: 240px;
margin: 5px;
padding: 15px;
border-radius: var(--main-radius, 8px);
overflow: hidden;
position: relative;
box-shadow: 0 0 10px var(--main-shadow, rgba(0, 0, 0, 0.12));
box-sizing: border-box;
white-space: normal;
transition: 0.3s;
}
.sub-vip-card .vip-card.vip-theme1,
.sub-vip-card .vip-card.level-1 {
background: linear-gradient(25deg, #e6aa4f 10%, #f1d7ad 70%, #f5b97b 100%);
color: #866127;
}
.sub-vip-card .vip-card.vip-theme2,
.sub-vip-card .vip-card.level-2 {
background: linear-gradient(132deg, #9b7de4 0%, #4f48b8 30%, #624fba 80%, #574dba);
color: #e4e2fb;
}
.sub-vip-card .vip-baicon.abs-center,
.sub-vip-card .vip-baicon {
position: absolute;
font-size: 10em;
left: 55%;
top: 50%;
transform: translate(-50%, -50%);
opacity: 0.12;
pointer-events: none;
line-height: 1;
}
.sub-vip-card .vip-img {
display: none;
}
.sub-vip-card .vip-name {
font-size: 16px;
position: relative;
z-index: 1;
}
.sub-vip-card .vip-name .mr6 {
margin-right: 6px;
}
.sub-vip-card .v-equity,
.sub-vip-card ul.mb10 {
position: relative;
z-index: 1;
margin: 8px 0 12px;
padding: 0;
list-style: none;
text-align: left;
font-size: 12px;
line-height: 1.5;
opacity: 0.95;
}
.sub-vip-card .v-equity > li,
.sub-vip-card ul.mb10 > li {
display: block;
margin: 0 0 6px;
padding-left: 12px;
position: relative;
}
.navbar-vip .sub-vip-card {
display: none;
.sub-vip-card .v-equity > li::before,
.sub-vip-card ul.mb10 > li::before {
content: "";
position: absolute;
top: calc(100% + 8px);
right: 0;
z-index: 60;
width: min(420px, 90vw);
padding: 10px;
border-radius: 12px;
background: var(--main-bg-color, #fff);
box-shadow: 0 12px 36px rgba(0, 0, 0, 0.16);
gap: 10px;
flex-wrap: wrap;
left: 0;
top: 0.55em;
width: 5px;
height: 5px;
border-radius: 50%;
background: currentColor;
opacity: 0.5;
}
.navbar-vip.hover-show:hover .sub-vip-card,
.navbar-vip.hover-show:focus-within .sub-vip-card {
display: flex;
.sub-vip-card .payvip-button {
font-size: 1em !important;
margin: 0 !important;
display: inline-flex;
align-items: center;
gap: 4px;
background: linear-gradient(135deg, #ff9633 10%, #f14315 100%);
color: #fff;
padding: 4px 15px !important;
border-radius: 999px;
text-decoration: none;
box-shadow: 0 0 10px rgba(26, 22, 15, 0.3);
position: relative;
z-index: 2;
border: 0;
}
.sub-vip-card .payvip-button:hover {
filter: brightness(1.05);
color: #fff;
}
/* Theme toggle */
.navbar-but-cluster .theme-toggle-desktop,
.navbar-but-cluster .toggle-theme {
display: inline-flex;
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
padding: 0;
border-radius: 999px;
flex: 0 0 auto;
position: relative;
overflow: hidden;
}
.navbar-but-cluster .theme-toggle-desktop > i,
.navbar-but-cluster .toggle-theme > i {
margin: 0 !important;
line-height: 1;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
.theme-toggle-desktop,
.theme-toggle-mobile,
.toggle-theme {
position: relative;
}
.theme-toggle-desktop .theme-icon-moon,
.theme-toggle-desktop .theme-icon-sun,
.theme-toggle-mobile .theme-icon-moon,
.theme-toggle-mobile .theme-icon-sun,
.toggle-theme .theme-icon-moon,
.toggle-theme .theme-icon-sun {
margin: 0 !important;
line-height: 1;
width: 1em;
text-align: center;
}
/* float commerce */
@@ -198,10 +383,10 @@
color: #f5a623;
}
@media (max-width: 768px) {
.navbar-but-cluster .navbar-cta-text {
/* keep text on tablet; hide only on very narrow if needed */
}
.float-right .float-btn > i {
margin: 0 !important;
line-height: 1;
font-size: 1.1em;
}
@media (max-width: 520px) {
@@ -213,23 +398,7 @@
padding: 6px 10px;
font-size: 12px;
}
}
/* Theme toggle: keep moon/sun icons centered, no double-glyph overlap */
.theme-toggle-desktop,
.theme-toggle-mobile,
.toggle-theme {
position: relative;
}
.theme-toggle-desktop .theme-icon-moon,
.theme-toggle-desktop .theme-icon-sun,
.theme-toggle-mobile .theme-icon-moon,
.theme-toggle-mobile .theme-icon-sun,
.toggle-theme .theme-icon-moon,
.toggle-theme .theme-icon-sun {
margin: 0 !important;
line-height: 1;
width: 1em;
text-align: center;
.sub-vip-card .vip-card {
width: min(220px, 42vw);
}
}