﻿        flex-direction: column;
    }
    .profile-card-wide .profile-stats {
        flex-wrap: wrap;
    }
    .profile-card-wide .profile-stat-card {
        flex: 1 1 calc(33.33% - 8px);
        min-width: 100px;
    }
}

/* ============================================================
   V3.1 修复 - 店铺额度卡片浅色模式文字颜色
   ============================================================ */

.shop-limit-card {
    color: var(--text-primary) !important;
}

.shop-limit-used {
    color: var(--text-primary) !important;
}

.shop-limit-expire,
.shop-limit-tip {
    color: var(--text-tertiary) !important;
    font-size: 12px;
}

/* 浅色模式下额外确保进度条可见 */
[data-theme="light"] .shop-limit-bar {
    background: var(--bg-tertiary) !important;
}

[data-theme="light"] .shop-limit-progress {
    background: var(--primary) !important;
}

/* ============================================================
   通知中心 V2 - 高级感升级
   ============================================================ */

.notification-panel {
    width: 380px !important;
    max-height: 480px !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18),
                0 6px 16px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid var(--border-color) !important;
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    background: var(--bg-float);
}

/* 头部升级 */
.notification-header {
    padding: 16px 18px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    flex-shrink: 0;
}

.notification-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text-primary);
    letter-spacing: -0.2px;
}

.notification-title::before {
    display: none !important;
}

.notification-title svg {
    width: 16px;
    height: 16px;
    color: var(--primary);
}

/* 列表升级 */
.notification-list {
    flex: 1;
    overflow-y: auto;
    padding: 8px !important;
}

.notification-list::-webkit-scrollbar {
    width: 4px;
}

.notification-list::-webkit-scrollbar-track {
    background: transparent;
}

.notification-list::-webkit-scrollbar-thumb {
    background: var(--border-color-light);
    border-radius: 2px;
}

/* 通知项 - 精致卡片式 */
.notification-item {
    display: flex;
    gap: 12px;
    padding: 12px 14px !important;
    border-radius: 10px !important;
    cursor: pointer;
    transition: all 0.15s ease;
    position: relative;
    margin-bottom: 2px;
    border: 1px solid transparent;
}

.notification-item:hover {
    background: var(--bg-secondary) !important;
    border-color: var(--border-color-light);
}

.notification-item.unread {
    background: var(--bg-secondary) !important;
}

.notification-item.unread::before {
    display: none !important;
}

.notification-item.unread::after {
    content: '';
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 7px;
    height: 7px;
    background: var(--primary);
    border-radius: 50%;
    flex-shrink: 0;
}

/* 图标升级 */
.notification-icon {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 1px solid;
}

.notification-icon.info {
    background: rgba(59, 130, 246, 0.08) !important;
    color: #3b82f6 !important;
    border-color: rgba(59, 130, 246, 0.15);
}

.notification-icon.success {
    background: rgba(34, 197, 94, 0.08) !important;
    color: #22c55e !important;
    border-color: rgba(34, 197, 94, 0.15);
}

.notification-icon.warning {
    background: rgba(245, 158, 11, 0.08) !important;
    color: #f59e0b !important;
    border-color: rgba(245, 158, 11, 0.15);
}

.notification-icon.danger {
    background: rgba(239, 68, 68, 0.08) !important;
    color: #ef4444 !important;
    border-color: rgba(239, 68, 68, 0.15);
}

/* 内容升级 */
.notification-content {
    flex: 1;
    min-width: 0;
    padding-right: 16px;
}

.notification-item-title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    margin-bottom: 4px !important;
    line-height: 1.3;
}

.notification-item.unread .notification-item-title {
    font-weight: 600;
}

.notification-item-desc {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    line-height: 1.5 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.notification-item-time {
    font-size: 11px !important;
    color: var(--text-muted);
    margin-top: 6px !important;
    display: flex;
    align-items: center;
    gap: 4px;
}

/* 空状态升级 */
.notification-empty {
    text-align: center;
    padding: 50px 20px !important;
    color: var(--text-tertiary);
    font-size: 13px !important;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.notification-empty svg {
    width: 56px !important;
    height: 56px !important;
    margin-bottom: 12px !important;
    opacity: 0.3;
    stroke-width: 1.2 !important;
}

.notification-empty div {
    font-size: 12px;
    color: var(--text-tertiary);
}

/* ============================================================
   通知中心 V3 - 高端精致版 + 删除功能
   ============================================================ */

.notification-panel {
    width: 400px !important;
    max-height: 520px !important;
    border-radius: 16px !important;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.2),
                0 8px 20px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid var(--border-color) !important;
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    background: var(--bg-float);
    animation: panelSlideIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes panelSlideIn {
    from { opacity: 0; transform: translateY(-8px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

/* 头部升级 */
.notification-header {
    padding: 14px 16px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.notification-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text-primary);
    letter-spacing: -0.2px;
}

.notification-title svg {
    width: 15px;
    height: 15px;
    color: var(--primary);
}

.notification-unread-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 9px;
    background: var(--primary);
    color: white;
    font-size: 10px;
    font-weight: 600;
    line-height: 1;
}

/* 头部操作按钮 */
.notification-header-actions {
    display: flex;
    align-items: center;
    gap: 4px;
}

.notification-action-btn {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--text-tertiary);
    transition: all 0.15s ease;
}

.notification-action-btn:hover {
    background: var(--bg-tertiary);
    color: var(--text-primary);
}

/* 列表 */
.notification-list {
    flex: 1;
    overflow-y: auto;
    padding: 6px !important;
}

.notification-list::-webkit-scrollbar {
    width: 4px;
}

.notification-list::-webkit-scrollbar-track {
    background: transparent;
}

.notification-list::-webkit-scrollbar-thumb {
    background: var(--border-color-light);
    border-radius: 2px;
}

/* 通知项 - 高端卡片式 */
.notification-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 12px 12px 12px !important;
    border-radius: 10px !important;
    cursor: default;
    transition: all 0.15s ease;
    position: relative;
    margin-bottom: 2px;
    border: 1px solid transparent;
}

.notification-item:hover {
    background: var(--bg-secondary) !important;
    border-color: var(--border-color-light);
}

.notification-item.unread {
    background: var(--bg-secondary) !important;
    border-color: var(--border-color-light);
}

.notification-item.unread::before {
    display: none !important;
}

.notification-item.unread::after {
    content: '';
    position: absolute;
    left: 6px;
    top: 18px;
    width: 6px;
    height: 6px;
    background: var(--primary);
    border-radius: 50%;
    flex-shrink: 0;
}

/* 图标 */
.notification-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: 9px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-left: 8px;
    border: 1px solid;
}

.notification-item.unread .notification-icon {
    margin-left: 14px;
}

.notification-icon.info {
    background: rgba(59, 130, 246, 0.08) !important;
    color: #3b82f6 !important;
    border-color: rgba(59, 130, 246, 0.15);
}

.notification-icon.success {
    background: rgba(34, 197, 94, 0.08) !important;
    color: #22c55e !important;
    border-color: rgba(34, 197, 94, 0.15);
}

.notification-icon.warning {
    background: rgba(245, 158, 11, 0.08) !important;
    color: #f59e0b !important;
    border-color: rgba(245, 158, 11, 0.15);
}

.notification-icon.danger {
    background: rgba(239, 68, 68, 0.08) !important;
    color: #ef4444 !important;
    border-color: rgba(239, 68, 68, 0.15);
}

/* 内容区 */
.notification-content {
    flex: 1;
    min-width: 0;
    cursor: pointer;
}

.notification-item-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
    gap: 8px;
}

.notification-item-title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    line-height: 1.3;
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.notification-item.unread .notification-item-title {
    font-weight: 600;
}

.notification-item-time {
    font-size: 11px !important;
    color: var(--text-tertiary);
    flex-shrink: 0;
    white-space: nowrap;
}

.notification-item-desc {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    line-height: 1.5 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* 删除按钮 */
.notification-item-delete {
    width: 22px;
    height: 22px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--text-tertiary);
    opacity: 0;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.notification-item:hover .notification-item-delete {
    opacity: 1;
}

.notification-item-delete:hover {
    background: var(--danger-bg);
    color: var(--danger);
}

/* 空状态升级 */
.notification-empty {
    text-align: center;
    padding: 60px 20px !important;
    color: var(--text-tertiary);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.notification-empty-icon {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--bg-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px;
    color: var(--text-tertiary);
}

.notification-empty-icon svg {
    width: 32px !important;
    height: 32px !important;
    opacity: 0.6;
    stroke-width: 1.2 !important;
}

.notification-empty-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 4px;
}

.notification-empty-desc {
    font-size: 12px;
    color: var(--text-tertiary);
}

/* 旧样式覆盖 */

/* ============================================================
   仪表盘 V2 - 克制高级感
   ============================================================ */

/* 顶部栏升级 */
.top-bar {
    height: 56px !important;
    padding: 0 24px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    background: var(--bg-header) !important;
}

.page-title {
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: -0.3px !important;
    gap: 10px !important;
}

.page-title .title-accent {
    width: 4px !important;
    height: 16px !important;
    border-radius: 2px !important;
    opacity: 0.9;
}

.top-actions {
    gap: 8px !important;
}

.top-action-btn {
    width: 34px !important;
    height: 34px !important;
    border-radius: 8px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    color: var(--text-secondary) !important;
    box-shadow: none !important;
    transition: all 0.15s ease !important;
}

.top-action-btn::before {
    display: none !important;
}

.top-action-btn:hover {
    background: var(--bg-tertiary) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-color) !important;
    transform: none !important;
    box-shadow: none !important;
}

.top-action-btn:active {
    transform: scale(0.96) !important;
}

.top-action-btn.primary {
    width: auto !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    background: var(--primary) !important;
    color: white !important;
    border-color: var(--primary) !important;
    display: flex;
    align-items: center;
    gap: 6px;
}

.top-action-btn.primary:hover {
    background: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
    color: white !important;
    filter: brightness(1.05);
}

/* 批量操作栏升级 */
.batch-bar {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    margin-bottom: 16px !important;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.batch-bar.show {
    display: flex !important;
}

.batch-info {
    font-size: 13px !important;
    color: var(--text-secondary) !important;
    font-weight: 500 !important;
}

.batch-info strong {
    color: var(--primary);
    font-weight: 600;
    margin: 0 2px;
}

.batch-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

/* 统计卡片升级 - 克制高级感 */
.stats-grid {
    gap: 14px !important;
    margin-bottom: 20px !important;
}

.stat-card {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 12px !important;
    padding: 18px !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    position: relative;
    transition: all 0.2s ease !important;
    overflow: hidden;
}

/* 去掉所有科幻效果 */
.stat-card::before,
.stat-card::after {
    display: none !important;
}

.stat-card .corner-glow,
.stat-card .data-flow,
.stat-card .stat-shine {
    display: none !important;
}

.stat-card:hover {
    transform: translateY(-1px) !important;
    border-color: var(--border-color) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
}

.stat-card:hover .stat-icon-wrap {
    transform: none !important;
}

.stat-card:hover .stat-value {
    filter: none !important;
}

/* 图标容器 - 极简描边风 */
.stat-icon-wrap {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    transition: all 0.2s ease;
    border: 1px solid;
    background: transparent !important;
}

.stat-icon-wrap::after {
    display: none !important;
}

.stat-icon-wrap::before {
    display: none !important;
}

.stat-icon-wrap.blue {
    background: rgba(59, 130, 246, 0.08) !important;
    color: #3b82f6 !important;
    border-color: rgba(59, 130, 246, 0.2);
}

.stat-icon-wrap.green {
    background: rgba(34, 197, 94, 0.08) !important;
    color: #22c55e !important;
    border-color: rgba(34, 197, 94, 0.2);
}

.stat-icon-wrap.orange {
    background: rgba(245, 158, 11, 0.08) !important;
    color: #f59e0b !important;
    border-color: rgba(245, 158, 11, 0.2);
}

.stat-icon-wrap.red {
    background: rgba(239, 68, 68, 0.08) !important;
    color: #ef4444 !important;
    border-color: rgba(239, 68, 68, 0.2);
}

.stat-icon {
    width: 20px !important;
    height: 20px !important;
    stroke-width: 1.8 !important;
}

/* 统计信息 */
.stat-info {
    flex: 1;
    min-width: 0;
}

.stat-value {
    font-size: 24px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.5px !important;
    margin-bottom: 2px !important;
    font-variant-numeric: tabular-nums;
}

.stat-label {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

/* 进度环隐藏（太花哨） */

/* 图表卡片升级 */
.stats-chart-row {
    gap: 14px !important;
    margin-bottom: 20px !important;
}

.chart-card {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 12px !important;
    padding: 18px !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
    overflow: hidden;
}

.chart-card::before,
.chart-card::after {
    display: none !important;
}

.chart-card .liquid-border {
    display: none !important;
}

.chart-card:hover {
    border-color: var(--border-color) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
    transform: translateY(-1px) !important;
}

.chart-header {
    margin-bottom: 14px !important;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.chart-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    letter-spacing: -0.2px !important;
}

.chart-subtitle {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    margin-top: 2px !important;
}

/* 运单区域升级 */
.waybill-section {
    margin-bottom: 16px !important;
}

.filter-bar {
    padding: 14px 18px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.filter-left {
    display: flex;
    align-items: center;
    gap: 16px;
}

.section-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    letter-spacing: -0.2px !important;
}

.filter-tabs {
    display: flex;
    gap: 0;
    background: var(--bg-tertiary);
    border-radius: 6px;
    padding: 2px;
}

.filter-tab {
    padding: 4px 12px !important;
    font-size: 12px !important;
    color: var(--text-secondary) !important;
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.15s ease;
    font-weight: 400 !important;
}

.filter-tab:hover {
    color: var(--text-primary) !important;
}

.filter-tab.active {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    font-weight: 500 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.filter-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

.filter-action-btn,
.copy-all-btn {
    height: 30px;
    padding: 0 12px;
    border-radius: 6px;
    background: var(--bg-tertiary);
    border: 1px solid var(--border-color-light);
    color: var(--text-secondary);
    font-size: 12px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: all 0.15s ease;
}

.filter-action-btn:hover,
.copy-all-btn:hover {
    background: var(--bg-card);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* 运单列表升级 */
.waybill-list {
    padding: 0 !important;
}

.waybill-header {
    display: grid;
    grid-template-columns: 50px 1fr 130px 80px 120px;
    gap: 12px;
    padding: 10px 18px !important;
    background: var(--bg-tertiary);
    border-bottom: 1px solid var(--border-color-light) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    color: var(--text-tertiary) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.waybill-item {
    display: grid;
    grid-template-columns: 50px 1fr 130px 80px 120px;
    gap: 12px;
    padding: 12px 18px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    font-size: 13px !important;
    align-items: center;
    transition: background 0.15s ease;
}

.waybill-item:last-child {
    border-bottom: none !important;
}

/* 运单空状态升级 */
.waybill-empty {
    padding: 60px 20px !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.waybill-empty-icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--bg-tertiary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-tertiary);
    margin-bottom: 8px;
}

.waybill-empty-icon svg {
    width: 28px !important;
    height: 28px !important;
    opacity: 0.6;
}

.waybill-empty-text {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--text-secondary) !important;
}

.waybill-empty-hint {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    margin-bottom: 12px !important;
}

.waybill-empty-action {
    height: 32px;
    padding: 0 16px;
    border-radius: 6px;
    background: var(--primary);
    color: white;
    font-size: 12px;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: all 0.15s ease;
}

.waybill-empty-action:hover {
    background: var(--primary-hover);
    filter: brightness(1.05);
}

/* 活动日志升级 */
.log-section {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 12px !important;
    overflow: hidden;
}

.log-section .filter-bar {
    padding: 14px 18px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
}

.log-container {
    padding: 8px !important;
    max-height: 300px;
    overflow-y: auto;
}

.log-item {
    padding: 10px 12px !important;
    border-radius: 8px !important;
    margin-bottom: 2px !important;
    transition: background 0.15s ease;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.log-item:hover {
    background: var(--bg-secondary) !important;
    cursor: pointer;
}

.log-copy-hint {
    margin-left: auto;
    font-size: 11px;
    color: var(--text-tertiary);
    opacity: 0;
    transition: opacity 0.15s ease;
    flex-shrink: 0;
    padding-top: 1px;
}

.log-item:hover .log-copy-hint {
    opacity: 1;
}

.log-time {
    font-size: 11px !important;
    color: var(--text-tertiary) !important;
    font-family: 'SF Mono', Menlo, Monaco, Consolas, monospace;
    flex-shrink: 0;
    padding-top: 1px;
}

/* 快递公司筛选升级 */
.company-filter {
    padding: 12px 18px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.company-tag {
    padding: 4px 10px !important;
    font-size: 12px !important;
    border-radius: 6px !important;
    background: var(--bg-tertiary) !important;
    color: var(--text-secondary) !important;
    cursor: pointer;
    transition: all 0.15s ease;
    border: 1px solid transparent;
}

.company-tag:hover {
    background: var(--bg-secondary) !important;
    color: var(--text-primary) !important;
}

.company-tag.active {
    background: rgba(59, 130, 246, 0.1) !important;
    color: var(--primary) !important;
    border-color: rgba(59, 130, 246, 0.2);
}

/* ============================================================
   仪表盘 V3 - 现有结构基础上的精致化升级
   ============================================================ */

/* 内容区整体间距优化 */
.content-area {
    padding: 20px 24px !important;
}

/* 顶部栏精致化 */
.top-bar {
    height: 52px !important;
    padding: 0 24px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    background: var(--bg-header) !important;
}

.page-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: -0.2px !important;
    gap: 8px !important;
}

.page-title .title-accent {
    width: 3px !important;
    height: 14px !important;
    border-radius: 1px !important;
    opacity: 0.85;
}

/* 顶部按钮精致化 */
.top-actions {
    gap: 8px !important;
}

.top-action-btn {
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    color: var(--text-secondary) !important;
    box-shadow: none !important;
    transition: all 0.15s ease !important;
}

.top-action-btn::before {
    display: none !important;
}

.top-action-btn:hover {
    background: var(--bg-tertiary) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-color) !important;
    transform: none !important;
    box-shadow: none !important;
}

.top-action-btn:active {
    transform: scale(0.96) !important;
}

.top-action-btn.primary {
    width: auto !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    background: var(--primary) !important;
    color: white !important;
    border-color: var(--primary) !important;
    height: 32px !important;
    display: flex;
    align-items: center;
    gap: 6px;
}

.top-action-btn.primary:hover {
    background: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
    color: white !important;
    filter: brightness(1.05);
}

/* 通知角标精致化 */
.notification-badge {
    top: 2px !important;
    right: 2px !important;
    min-width: 14px !important;
    height: 14px !important;
    padding: 0 4px !important;
    font-size: 9px !important;
    border-radius: 7px !important;
    animation: none !important;
}

/* 统计卡精致化 - 保持4列等宽布局 */
.stats-grid {
    gap: 12px !important;
    margin-bottom: 18px !important;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
}

.stat-card {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 10px !important;
    padding: 16px !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    position: relative;
    transition: all 0.2s ease !important;
    overflow: hidden;
}

/* 去掉所有装饰效果 */
.stat-card::before,
.stat-card::after {
    display: none !important;
}

.stat-card .corner-glow,
.stat-card .data-flow,
.stat-card .stat-shine {
    display: none !important;
}

.stat-card:hover {
    transform: translateY(-1px) !important;
    border-color: var(--border-color) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
}

.stat-card:hover .stat-icon-wrap {
    transform: none !important;
}

.stat-card:hover .stat-value {
    filter: none !important;
}

/* 图标容器 - 简洁描边 */
.stat-icon-wrap {
    width: 40px !important;
    height: 40px !important;
    border-radius: 8px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    transition: all 0.2s ease;
    border: 1px solid transparent;
    background: transparent !important;
}

.stat-icon-wrap::after {
    display: none !important;
}

.stat-icon-wrap::before {
    display: none !important;
}

.stat-icon-wrap.blue {
    background: rgba(59, 130, 246, 0.08) !important;
    color: #3b82f6 !important;
    border-color: rgba(59, 130, 246, 0.15);
}

.stat-icon-wrap.green {
    background: rgba(34, 197, 94, 0.08) !important;
    color: #22c55e !important;
    border-color: rgba(34, 197, 94, 0.15);
}

.stat-icon-wrap.orange {
    background: rgba(245, 158, 11, 0.08) !important;
    color: #f59e0b !important;
    border-color: rgba(245, 158, 11, 0.15);
}

.stat-icon-wrap.red {
    background: rgba(239, 68, 68, 0.08) !important;
    color: #ef4444 !important;
    border-color: rgba(239, 68, 68, 0.15);
}

.stat-icon {
    width: 18px !important;
    height: 18px !important;
    stroke-width: 1.8 !important;
}

/* 统计信息排版 */
.stat-info {
    flex: 1;
    min-width: 0;
}

.stat-value {
    font-size: 22px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.5px !important;
    margin-bottom: 2px !important;
    font-variant-numeric: tabular-nums;
}

.stat-label {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
}

/* 进度环隐藏 */

/* 图表卡片精致化 */
.stats-chart-row {
    gap: 12px !important;
    margin-bottom: 18px !important;
}

.chart-card {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 10px !important;
    padding: 16px !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
    overflow: hidden;
}

.chart-card::before,
.chart-card::after {
    display: none !important;
}

.chart-card .liquid-border {
    display: none !important;
}

.chart-card:hover {
    border-color: var(--border-color) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    transform: translateY(-1px) !important;
}

.chart-header {
    margin-bottom: 12px !important;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.chart-title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    letter-spacing: -0.2px !important;
}

.chart-subtitle {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    margin-top: 2px !important;
}

/* 运单区域精致化 */
.waybill-section {
    margin-bottom: 16px !important;
}

.filter-bar {
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.filter-left {
    display: flex;
    align-items: center;
    gap: 14px;
}

.section-title {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    letter-spacing: -0.2px !important;
}

/* 筛选 Tab 精致化 - segmented control */
.filter-tabs {
    display: flex;
    gap: 0;
    background: var(--bg-tertiary);
    border-radius: 6px;
    padding: 2px;
}

.filter-tab {
    padding: 3px 10px !important;
    font-size: 12px !important;
    color: var(--text-secondary) !important;
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.15s ease;
    font-weight: 400 !important;
}

.filter-tab:hover {
    color: var(--text-primary) !important;
}

.filter-tab.active {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    font-weight: 500 !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}

.filter-right {
    display: flex;
    align-items: center;
    gap: 8px;
}

.filter-action-btn,
.copy-all-btn {
    height: 28px;
    padding: 0 12px;
    border-radius: 6px;
    background: var(--bg-tertiary);
    border: 1px solid var(--border-color-light);
    color: var(--text-secondary);
    font-size: 12px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: all 0.15s ease;
}

.filter-action-btn:hover,
.copy-all-btn:hover {
    background: var(--bg-card);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* 运单列表精致化 */
.waybill-list {
    padding: 0 !important;
}

.waybill-header {
    display: grid;
    grid-template-columns: 50px 1fr 120px 70px 100px;
    gap: 10px;
    padding: 8px 16px !important;
    background: var(--bg-tertiary);
    border-bottom: 1px solid var(--border-color-light) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    color: var(--text-tertiary) !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.waybill-item {
    display: grid;
    grid-template-columns: 50px 1fr 120px 70px 100px;
    gap: 10px;
    padding: 10px 16px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    font-size: 13px !important;
    align-items: center;
    transition: background 0.15s ease;
}

.waybill-item:last-child {
    border-bottom: none !important;
}

/* 运单状态标签 */
.waybill-status {
    display: inline-block;
    padding: 2px 8px;
    font-size: 11px;
    font-weight: 500;
    border-radius: 4px;
}

.waybill-status.normal {
    background: var(--success-bg);
    color: var(--success);
}

.waybill-status.warning {
    background: var(--warning-bg);
    color: var(--warning);
}

.waybill-status.danger {
    background: var(--danger-bg);
    color: var(--danger);
}

/* 运单空状态精致化 */
.waybill-empty {
    padding: 50px 20px !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
}

.waybill-empty-icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--bg-tertiary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-tertiary);
    margin-bottom: 6px;
}

.waybill-empty-icon svg {
    width: 24px !important;
    height: 24px !important;
    opacity: 0.5;
}

.waybill-empty-text {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--text-secondary) !important;
}

.waybill-empty-hint {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    margin-bottom: 10px !important;
}

.waybill-empty-action {
    height: 30px;
    padding: 0 14px;
    border-radius: 6px;
    background: var(--primary);
    color: white;
    font-size: 12px;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: all 0.15s ease;
}

.waybill-empty-action:hover {
    background: var(--primary-hover);
    filter: brightness(1.05);
}

/* 活动日志精致化 */
.log-section {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 10px !important;
    overflow: hidden;
}

.log-section .filter-bar {
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
}

.log-container {
    padding: 6px !important;
    max-height: 280px;
    overflow-y: auto;
}

.log-item {
    padding: 8px 10px !important;
    border-radius: 6px !important;
    margin-bottom: 2px !important;
    transition: background 0.15s ease;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.log-item:hover {
    background: var(--bg-secondary) !important;
}

.log-time {
    font-size: 11px !important;
    color: var(--text-tertiary) !important;
    font-family: 'SF Mono', Menlo, Monaco, Consolas, 'Microsoft YaHei', monospace;
    flex-shrink: 0;
    padding-top: 1px;
}

/* 快递公司筛选精致化 */
.company-filter {
    padding: 10px 16px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.company-tag {
    padding: 3px 10px !important;
    font-size: 12px !important;
    border-radius: 6px !important;
    background: var(--bg-tertiary) !important;
    color: var(--text-secondary) !important;
    cursor: pointer;
    transition: all 0.15s ease;
    border: 1px solid transparent;
}

.company-tag:hover {
    background: var(--bg-secondary) !important;
    color: var(--text-primary) !important;
}

.company-tag.active {
    background: rgba(59, 130, 246, 0.1) !important;
    color: var(--primary) !important;
    border-color: rgba(59, 130, 246, 0.2);
}

/* 批量操作栏精致化 */
.batch-bar {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    margin-bottom: 14px !important;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
}

.batch-bar.show {
    display: flex !important;
}

.batch-info {
    font-size: 12px !important;
    color: var(--text-secondary) !important;
    font-weight: 500 !important;
}

.batch-actions {
    display: flex;
    gap: 6px;
    align-items: center;
}

/* ============================================================
   仪表盘 V4 - 精致光效版（克制但有质感）
   ============================================================ */

/* 统计卡 - 精致光效 */
.stat-card {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 12px !important;
    padding: 16px !important;
    box-shadow: 
        0 1px 2px rgba(0, 0, 0, 0.04),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    position: relative;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    overflow: hidden;
}

/* 顶部内高光 */
.stat-card::before {
    content: '' !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        rgba(255,255,255,0) 0%, 
        rgba(255,255,255,0.5) 30%,
        rgba(255,255,255,0.5) 70%,
        rgba(255,255,255,0) 100%);
    pointer-events: none;
    display: block !important;
    opacity: 0.6;
    z-index: 1;
}

/* 角落微光 */
.stat-card::after {
    content: '' !important;
    position: absolute;
    top: -40px;
    right: -40px;
    width: 100px;
    height: 100px;
    background: radial-gradient(circle, var(--stat-glow, rgba(59, 130, 246, 0.08)) 0%, transparent 70%);
    pointer-events: none;
    display: block !important;
    transition: all 0.3s ease;
}

.stat-card:hover {
    transform: translateY(-2px) !important;
    border-color: var(--border-color) !important;
    box-shadow: 
        0 8px 24px rgba(0, 0, 0, 0.08),
        0 2px 6px rgba(0, 0, 0, 0.04),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset !important;
}

.stat-card:hover::after {
    width: 140px;
    height: 140px;
    opacity: 0.8;
}

/* 扫光效果 - 克制版 */
.stat-card .stat-shine {
    display: block !important;
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.06) 50%,
        transparent 100%
    );
    transform: skewX(-20deg);
    transition: none;
    pointer-events: none;
    z-index: 2;
}

/* 数据流效果 - 极细底部光 */
.stat-card .data-flow {
    display: block !important;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%, 
        var(--stat-accent, var(--primary)) 50%, 
        transparent 100%);
    opacity: 0.15;
    pointer-events: none;
    z-index: 1;
}

/* 角落发光隐藏 - 用径向光代替 */
.stat-card .corner-glow {
    display: none !important;
}

/* 图标容器 - 精致发光 */
.stat-icon-wrap {
    width: 42px !important;
    height: 42px !important;
    border-radius: 10px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    border: 1px solid transparent;
    background: transparent !important;
    z-index: 3;
}

.stat-icon-wrap::after {
    content: '' !important;
    position: absolute;
    inset: -4px;
    border-radius: 12px;
    background: inherit;
    filter: blur(10px);
    opacity: 0.3;
    z-index: -1;
    transition: all 0.25s ease;
    display: block !important;
}

.stat-icon-wrap::before {
    content: '' !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.2) 0%, transparent 100%);
    border-radius: 10px 10px 0 0;
    pointer-events: none;
    display: block !important;
}

.stat-icon-wrap.blue {
    background: rgba(59, 130, 246, 0.1) !important;
    color: #3b82f6 !important;
    border-color: rgba(59, 130, 246, 0.2);
    --stat-accent: #3b82f6;
    --stat-glow: rgba(59, 130, 246, 0.1);
}

.stat-icon-wrap.green {
    background: rgba(34, 197, 94, 0.1) !important;
    color: #22c55e !important;
    border-color: rgba(34, 197, 94, 0.2);
    --stat-accent: #22c55e;
    --stat-glow: rgba(34, 197, 94, 0.1);
}

.stat-icon-wrap.orange {
    background: rgba(245, 158, 11, 0.1) !important;
    color: #f59e0b !important;
    border-color: rgba(245, 158, 11, 0.2);
    --stat-accent: #f59e0b;
    --stat-glow: rgba(245, 158, 11, 0.1);
}

.stat-icon-wrap.red {
    background: rgba(239, 68, 68, 0.1) !important;
    color: #ef4444 !important;
    border-color: rgba(239, 68, 68, 0.2);
    --stat-accent: #ef4444;
    --stat-glow: rgba(239, 68, 68, 0.1);
}

.stat-card:hover .stat-icon-wrap {
    transform: scale(1.05) !important;
}

.stat-icon {
    width: 19px !important;
    height: 19px !important;
    stroke-width: 1.8 !important;
    position: relative;
    z-index: 1;
}

/* 统计数字 - 微发光 */
.stat-value {
    font-size: 24px !important;
    font-weight: 600 !important;
    color: var(--text-primary) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.5px !important;
    margin-bottom: 2px !important;
    font-variant-numeric: tabular-nums;
    transition: all 0.25s ease;
    position: relative;
    z-index: 3;
}

.stat-card:hover .stat-value {
    filter: none !important;
    transform: none !important;
}

.stat-label {
    font-size: 12px !important;
    color: var(--text-tertiary) !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    position: relative;
    z-index: 3;
}

/* 图表卡片 - 精致光效 */
.chart-card {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 12px !important;
    padding: 18px !important;
    box-shadow: 
        0 1px 2px rgba(0, 0, 0, 0.04),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset !important;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative;
    overflow: hidden;
}

.chart-card::before {
    content: '' !important;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        rgba(255,255,255,0) 0%, 
        rgba(255,255,255,0.5) 30%,
        rgba(255,255,255,0.5) 70%,
        rgba(255,255,255,0) 100%);
    pointer-events: none;
    display: block !important;
    opacity: 0.6;
    z-index: 1;
}

.chart-card::after {
    display: none !important;
}

.chart-card .liquid-border {
    display: none !important;
}

.chart-card:hover {
    transform: translateY(-2px) !important;
    border-color: var(--border-color) !important;
    box-shadow: 
        0 8px 24px rgba(0, 0, 0, 0.08),
        0 2px 6px rgba(0, 0, 0, 0.04) !important;
}

/* 运单区域 - 精致光效 */
.waybill-section {
    margin-bottom: 16px !important;
}

/* 活动日志 - 精致光效 */
.log-section {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 12px !important;
    overflow: hidden;
    box-shadow: 
        0 1px 2px rgba(0, 0, 0, 0.03),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset !important;
    transition: all 0.25s ease;
}

/* 顶部按钮 - 精致光效 */
.top-action-btn {
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    color: var(--text-secondary) !important;
    box-shadow: 
        0 1px 2px rgba(0, 0, 0, 0.03),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    position: relative;
    overflow: hidden;
}

.top-action-btn::before {
    display: none !important;
}

.top-action-btn:hover {
    background: var(--bg-card) !important;
    color: var(--primary) !important;
    border-color: var(--primary-light) !important;
    transform: translateY(-1px) !important;
    box-shadow: 
        0 4px 12px rgba(59, 130, 246, 0.15),
        0 0 0 1px rgba(59, 130, 246, 0.1) inset !important;
}

.top-action-btn:active {
    transform: translateY(0) scale(0.96) !important;
}

.top-action-btn.primary {
    width: auto !important;
    padding: 0 14px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    background: var(--primary) !important;
    color: white !important;
    border-color: var(--primary) !important;
    height: 32px !important;
    display: flex;
    align-items: center;
    gap: 6px;
    box-shadow: 
        0 2px 8px rgba(59, 130, 246, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
}

/* 筛选 Tab 精致化 */
.filter-tab.active {
    background: var(--bg-card) !important;
    color: var(--text-primary) !important;
    font-weight: 500 !important;
    box-shadow: 
        0 1px 3px rgba(0, 0, 0, 0.06),
        0 0 0 1px rgba(0, 0, 0, 0.02) !important;
}

/* 批量操作栏精致化 */
.batch-bar {
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    margin-bottom: 14px !important;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.06),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset !important;
}

/* 状态标签发光 */
.waybill-status.danger {
    background: var(--danger-bg);
    color: var(--danger);
    box-shadow: 0 0 8px rgba(239, 68, 68, 0.2);
}

.waybill-status.warning {
    background: var(--warning-bg);
    color: var(--warning);
    box-shadow: 0 0 8px rgba(245, 158, 11, 0.15);
}

.waybill-status.normal {
    background: var(--success-bg);
    color: var(--success);
    box-shadow: 0 0 8px rgba(34, 197, 94, 0.15);
}

/* ============================================================
   仪表盘 V5 - 加强光效版
   ============================================================ */

/* 统计卡 - 加强光效 */
.stat-card {
    border-radius: 14px !important;
    padding: 18px !important;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.06),
        0 0 20px rgba(59, 130, 246, 0.03),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset !important;
}

/* 顶部内高光 - 加强 */
.stat-card::before {
    height: 2px !important;
    background: linear-gradient(90deg, 
        rgba(255,255,255,0) 0%, 
        rgba(255,255,255,0.7) 20%,
        rgba(255,255,255,0.7) 80%,
        rgba(255,255,255,0) 100%) !important;
    opacity: 0.7 !important;
}

/* 角落微光 - 加强为两侧光 */
.stat-card::after {
    top: -60px !important;
    right: -60px !important;
    width: 160px !important;
    height: 160px !important;
    background: radial-gradient(circle at 70% 30%, var(--stat-glow, rgba(59, 130, 246, 0.12)) 0%, transparent 65%) !important;
    opacity: 1 !important;
}

.stat-card:hover::after {
    width: 200px !important;
    height: 200px !important;
    top: -80px !important;
    right: -80px !important;
}

/* 左下角补一个微光 */
.stat-card .corner-glow.bottom-right {
    display: block !important;
    position: absolute;
    bottom: -50px;
    left: -50px;
    width: 140px;
    height: 140px;
    background: radial-gradient(circle at 30% 70%, var(--stat-glow, rgba(59, 130, 246, 0.06)) 0%, transparent 60%);
    pointer-events: none;
    z-index: 0;
    top: auto !important;
    right: auto !important;
}

.stat-card .corner-glow.top-left {
    display: none !important;
}

/* 扫光效果 - 加强 */
.stat-card .stat-shine {
    width: 60% !important;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(255, 255, 255, 0.1) 50%,
        transparent 100%
    ) !important;
}

.stat-card:hover .stat-shine {
    left: 160% !important;
    transition: left 0.8s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* 底部数据流 - 加强 */
.stat-card .data-flow {
    height: 2px !important;
    opacity: 0.25 !important;
    background: linear-gradient(90deg, 
        transparent 0%, 
        var(--stat-accent, var(--primary)) 30%,
        var(--stat-accent, var(--primary)) 70%,
        transparent 100%) !important;
    box-shadow: 0 0 8px var(--stat-glow, rgba(59, 130, 246, 0.3)) !important;
}

.stat-card:hover .data-flow {
    opacity: 0.45 !important;
    box-shadow: 0 0 16px var(--stat-glow, rgba(59, 130, 246, 0.4)) !important;
}

/* 悬浮时外发光加强 */
.stat-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 
        0 12px 32px rgba(0, 0, 0, 0.1),
        0 4px 12px rgba(0, 0, 0, 0.06),
        0 0 40px var(--stat-glow, rgba(59, 130, 246, 0.1)),
        0 0 0 1px rgba(255, 255, 255, 0.06) inset !important;
}

/* 图标容器 - 加强发光 */
.stat-icon-wrap {
    width: 46px !important;
    height: 46px !important;
    border-radius: 12px !important;
}

.stat-icon-wrap::after {
    inset: -6px !important;
    border-radius: 14px !important;
    opacity: 0.5 !important;
    filter: blur(14px) !important;
}

.stat-card:hover .stat-icon-wrap::after {
    opacity: 0.7 !important;
    filter: blur(20px) !important;
}

.stat-icon-wrap::before {
    opacity: 0.8 !important;
}

.stat-icon {
    width: 20px !important;
    height: 20px !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}

/* 统计数字 - 加微发光 */
.stat-value {
    font-size: 26px !important;
    font-weight: 600 !important;
    letter-spacing: -0.8px !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.06) !important;
}

/* 图表卡片 - 加强光效 */
.chart-card {
    border-radius: 14px !important;
    padding: 20px !important;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.06),
        0 0 20px rgba(59, 130, 246, 0.02),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset !important;
}

.chart-card::before {
    height: 2px !important;
    opacity: 0.7 !important;
}

.chart-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 
        0 12px 32px rgba(0, 0, 0, 0.1),
        0 4px 12px rgba(0, 0, 0, 0.06),
        0 0 30px rgba(59, 130, 246, 0.06) !important;
}

/* 运单区域 - 加强光效（已移除，容器不再有样式） */

/* 运单表格行 - 左侧发光条 */
.waybill-item {
    position: relative;
    overflow: hidden;
}

.waybill-item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--primary);
    opacity: 0;
    transition: opacity 0.2s ease;
    box-shadow: 0 0 8px var(--primary);
}

.waybill-item:hover::before {
    opacity: 1;
}

.waybill-item:hover {
    background: var(--bg-secondary) !important;
    box-shadow: none !important;
}

/* 活动日志 - 加强光效 */
.log-section {
    border-radius: 14px !important;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.05),
        0 0 20px rgba(59, 130, 246, 0.02),
        0 0 0 1px rgba(255, 255, 255, 0.03) inset !important;
}

.log-section:hover {
    box-shadow: 
        0 8px 24px rgba(0, 0, 0, 0.08),
        0 2px 8px rgba(0, 0, 0, 0.04),
        0 0 30px rgba(59, 130, 246, 0.04) !important;
}

/* 顶部按钮 - 加强光效 */
.top-action-btn {
    width: 34px !important;
    height: 34px !important;
    border-radius: 9px !important;
    box-shadow: 
        0 1px 3px rgba(0, 0, 0, 0.05),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset !important;
}

.top-action-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 
        0 6px 16px rgba(59, 130, 246, 0.2),
        0 2px 6px rgba(59, 130, 246, 0.1),
        0 0 0 1px rgba(59, 130, 246, 0.15) inset !important;
}

.top-action-btn.primary {
    height: 34px !important;
    border-radius: 9px !important;
    box-shadow: 
        0 4px 14px rgba(59, 130, 246, 0.35),
        0 1px 3px rgba(59, 130, 246, 0.2),
        0 0 0 1px rgba(255, 255, 255, 0.12) inset !important;
}

.top-action-btn.primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 
        0 8px 24px rgba(59, 130, 246, 0.45),
        0 3px 8px rgba(59, 130, 246, 0.25),
        0 0 20px rgba(59, 130, 246, 0.2),
        0 0 0 1px rgba(255, 255, 255, 0.18) inset !important;
}

/* 状态标签 - 加强发光 */
.waybill-status.danger {
    box-shadow: 
        0 0 12px rgba(239, 68, 68, 0.3),
        0 0 4px rgba(239, 68, 68, 0.2) !important;
}

.waybill-status.warning {
    box-shadow: 
        0 0 12px rgba(245, 158, 11, 0.25),
        0 0 4px rgba(245, 158, 11, 0.15) !important;
}

.waybill-status.normal {
    box-shadow: 
        0 0 12px rgba(34, 197, 94, 0.25),
        0 0 4px rgba(34, 197, 94, 0.15) !important;
}

/* 批量操作栏 - 加强光效 */
.batch-bar {
    border-radius: 12px !important;
    padding: 12px 16px !important;
    box-shadow: 
        0 4px 16px rgba(0, 0, 0, 0.08),
        0 1px 3px rgba(0, 0, 0, 0.04),
        0 0 0 1px rgba(255, 255, 255, 0.04) inset !important;
}

/* 筛选 Tab 选中态发光 */
.filter-tab.active {
    box-shadow: 
        0 2px 6px rgba(0, 0, 0, 0.08),
        0 0 0 1px rgba(0, 0, 0, 0.03) !important;
}

/* 快递公司筛选标签发光 */
.company-tag.active {
    box-shadow: 
        0 0 10px rgba(59, 130, 246, 0.15),
        0 0 0 1px rgba(59, 130, 246, 0.1) inset !important;
}

/* 统计卡呼吸动画 - 很弱的环境光 */
@keyframes cardPulse {
    0%, 100% { 
        box-shadow: 
            0 2px 8px rgba(0, 0, 0, 0.06),
            0 0 20px rgba(59, 130, 246, 0.03),
            0 0 0 1px rgba(255, 255, 255, 0.04) inset;
    }
    50% { 
        box-shadow: 
            0 2px 8px rgba(0, 0, 0, 0.06),
            0 0 30px rgba(59, 130, 246, 0.05),
            0 0 0 1px rgba(255, 255, 255, 0.04) inset;
    }
}

.stat-card {
    animation: cardPulse 4s ease-in-out infinite;
}

.stat-card:nth-child(2) { animation-delay: 1s; }
.stat-card:nth-child(3) { animation-delay: 2s; }
.stat-card:nth-child(4) { animation-delay: 3s; }

/* ============================================================
   修复：打开全部店铺按钮浅色模式适配
   ============================================================ */

/* 主按钮 - 浅色模式优化 */
.top-action-btn.primary {
    background: var(--primary) !important;
    color: white !important;
    border-color: var(--primary) !important;
    position: relative;
    overflow: hidden;
}

/* 顶部高光 - 浅色模式下调弱，深色模式下增强 */
.top-action-btn.primary::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0.05) 100%);
    border-radius: 9px 9px 0 0;
    pointer-events: none;
    opacity: 0.8;
    z-index: 1;
}

/* 按钮文字层级 */
.top-action-btn.primary span,
.top-action-btn.primary svg {
    position: relative;
    z-index: 2;
}

/* 浅色模式下：发光调整为更柔和的蓝色光 */
@media (prefers-color-scheme: light) {
    .top-action-btn.primary {
        box-shadow: 
            0 2px 8px rgba(0, 0, 0, 0.08),
            0 1px 3px rgba(0, 0, 0, 0.04),
            0 0 0 1px rgba(255, 255, 255, 0.2) inset !important;
    }
    
    .top-action-btn.primary:hover {
        box-shadow: 
            0 6px 20px rgba(59, 130, 246, 0.25),
            0 2px 6px rgba(59, 130, 246, 0.15),
            0 0 0 1px rgba(255, 255, 255, 0.25) inset !important;
    }
    
    .top-action-btn.primary::after {
        opacity: 0.6;
        background: linear-gradient(180deg, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0.08) 100%);
    }
}

/* 深色模式下：发光更强 */
@media (prefers-color-scheme: dark) {
    .top-action-btn.primary {
        box-shadow: 
            0 4px 14px rgba(59, 130, 246, 0.4),
            0 1px 3px rgba(59, 130, 246, 0.25),
            0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
    }
    
    .top-action-btn.primary:hover {
        box-shadow: 
            0 8px 24px rgba(59, 130, 246, 0.5),
            0 3px 8px rgba(59, 130, 246, 0.3),
            0 0 20px rgba(59, 130, 246, 0.25),
            0 0 0 1px rgba(255, 255, 255, 0.15) inset !important;
    }
}

/* 确保 primary 按钮的 hover 状态正确 */
.top-action-btn.primary:hover {
    background: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
    color: white !important;
}

/* ============================================================
   修复：打开全部店铺按钮文字颜色
   ============================================================ */

/* 强制 primary 按钮文字和图标为白色 */
.top-action-btn.primary,
.top-action-btn.primary span,
.top-action-btn.primary svg {
    color: #fff !important;
    fill: none !important;
    stroke: #fff !important;
}

.top-action-btn.primary:hover,
.top-action-btn.primary:hover span,
.top-action-btn.primary:hover svg {
    color: #fff !important;
    stroke: #fff !important;
}

/* 确保按钮层级正确 */
.top-action-btn.primary {
    z-index: 1;
}

.top-action-btn.primary > * {
    position: relative;
    z-index: 2;
}

/* ============================================================
   修复：批量操作栏按钮样式
   ============================================================ */

/* 批量操作栏按钮统一精致化 */
.batch-actions .btn {
    height: 30px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    border-radius: 6px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    color: var(--text-secondary) !important;
    box-shadow: 
        0 1px 2px rgba(0, 0, 0, 0.03),
        0 0 0 1px rgba(255, 255, 255, 0.02) inset !important;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-weight: 500 !important;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.batch-actions .btn:hover {
    background: var(--bg-card) !important;
    color: var(--primary) !important;
    border-color: var(--primary-light) !important;
    transform: translateY(-1px) !important;
    box-shadow: 
        0 4px 12px rgba(59, 130, 246, 0.15),
        0 0 0 1px rgba(59, 130, 246, 0.1) inset !important;
}

.batch-actions .btn:active {
    transform: translateY(0) scale(0.97) !important;
}

.batch-actions .btn svg {
    width: 13px !important;
    height: 13px !important;
    stroke-width: 2 !important;
    flex-shrink: 0;
}

/* 批量删除按钮 - 红色 */
.batch-actions .btn[onclick*="batchDeleteShops"],
.batch-actions .btn.danger,
.batch-actions .btn.btn-danger {
    color: var(--danger) !important;
    border-color: rgba(239, 68, 68, 0.2) !important;
    background: var(--danger-bg) !important;
}

.batch-actions .btn[onclick*="batchDeleteShops"]:hover,
.batch-actions .btn.danger:hover,
.batch-actions .btn.btn-danger:hover {
    color: white !important;
    background: var(--danger) !important;
    border-color: var(--danger) !important;
    box-shadow: 
        0 4px 12px rgba(239, 68, 68, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
}

.batch-actions .btn[onclick*="batchDeleteShops"]:hover svg,
.batch-actions .btn.danger:hover svg,
.batch-actions .btn.btn-danger:hover svg {
    stroke: white !important;
}

/* 批量操作栏选中数字颜色 */
.batch-info strong {
    color: var(--primary) !important;
    font-weight: 600 !important;
    font-variant-numeric: tabular-nums;
}

/* ============================================================
   修复：primary 按钮 hover 背景变白问题
   ============================================================ */

/* 确保 primary 按钮 hover 时背景保持主题色 */
button.top-action-btn.primary:hover,
.top-bar .top-action-btn.primary:hover,
.top-actions .top-action-btn.primary:hover {
    background: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
    color: white !important;
}

button.top-action-btn.primary:hover span,
button.top-action-btn.primary:hover svg {
    color: white !important;
    stroke: white !important;
}

/* 空状态打开全部店铺按钮 */
button.waybill-empty-action:hover,
.waybill-empty button.waybill-empty-action:hover {
    background: var(--primary-hover) !important;
    color: white !important;
}

/* ============================================================
   最终修复：primary 按钮 hover 背景（最高优先级）
   ============================================================ */

body .top-actions .top-action-btn.primary,
body .top-bar .top-action-btn.primary {
    background: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #fff !important;
}

body .top-actions .top-action-btn.primary:hover,
body .top-bar .top-action-btn.primary:hover {
    background: var(--primary-hover) !important;
    border-color: var(--primary-hover) !important;
    color: #fff !important;
    transform: translateY(-1px) !important;
    box-shadow: 
        0 6px 20px rgba(59, 130, 246, 0.35),
        0 0 0 1px rgba(255, 255, 255, 0.15) inset !important;
}

body .top-actions .top-action-btn.primary svg,
body .top-bar .top-action-btn.primary svg {
    stroke: #fff !important;
    color: #fff !important;
}

body .top-actions .top-action-btn.primary:hover svg,
body .top-bar .top-action-btn.primary:hover svg {
    stroke: #fff !important;
    color: #fff !important;
}

/* 空状态按钮 */
body .waybill-empty .waybill-empty-action {
    background: var(--primary) !important;
    color: #fff !important;
}

body .waybill-empty .waybill-empty-action:hover {
    background: var(--primary-hover) !important;
    color: #fff !important;
}

/* ============================================================
   根本修复：定义缺失的 --primary-hover 变量
   ============================================================ */

:root {
    --primary-hover: #1d4ed8;
}

[data-theme="light"] {
    --primary-hover: #1d4ed8;
}

/* 同时确认所有主题色都有 hover 态 */
[data-color="blue"] { --primary-hover: #06c; }
[data-color="indigo"] { --primary-hover: #4a48d9; }
[data-color="purple"] { --primary-hover: #a845e0; }
[data-color="pink"] { --primary-hover: #e8254d; }
[data-color="red"] { --primary-hover: #e0352d; }
[data-color="orange"] { --primary-hover: #e88d00; }
[data-color="yellow"] { --primary-hover: #e6c000; }
[data-color="green"] { --primary-hover: #22b547; }
[data-color="teal"] { --primary-hover: #45c5f5; }
[data-color="cyan"] { --primary-hover: #2595c9; }
[data-color="mint"] { --primary-hover: #00a89f; }
[data-color="brown"] { --primary-hover: #8b6d48; }
[data-color="gray"] { --primary-hover: #76767a; }
[data-color="gold"] { --primary-hover: #b08b4a; }
[data-color="rose"] { --primary-hover: #e81e47; }
[data-color="violet"] { --primary-hover: #9a3dcc; }
[data-color="navy"] { --primary-hover: #03a; }
[data-color="steel"] { --primary-hover: #3a7bc8; }

/* ============================================================
   会员中心 - 专业工具风
   ============================================================ */
.member-modal .modal, .invite-modal .modal, .leaderboard-modal .modal { border-radius: 12px !important; }
.member-modal .modal { max-width: 520px; width: 92%; }
.invite-modal .modal { max-width: 520px; width: 92%; }
.leaderboard-modal .modal { max-width: 560px; width: 92%; }

/* 三个弹窗统一 header 样式 */
.member-modal .modal-header, .invite-modal .modal-header, .leaderboard-modal .modal-header {
    padding: 20px 24px 16px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    display: flex; align-items: center; gap: 12px;
}
.member-modal .modal-title, .invite-modal .modal-title, .leaderboard-modal .modal-title {
    font-size: 16px !important; font-weight: 600 !important; flex: 1; margin: 0;
}
.member-modal .modal-close, .invite-modal .modal-close, .leaderboard-modal .modal-close {
    width: 32px; height: 32px; border-radius: 8px; background: transparent;
    border: none; color: var(--text-secondary); cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: all 0.15s ease; flex-shrink: 0;
}
.member-modal .modal-close:hover, .invite-modal .modal-close:hover, .leaderboard-modal .modal-close:hover {
    background: var(--bg-tertiary); color: var(--text-primary);
}

.member-body { padding: 0; max-height: 72vh; overflow-y: auto; }
.member-loading, .member-error { padding: 48px 20px; text-align: center; color: var(--text-tertiary); font-size: 13px; }
.member-error { color: #ef4444; }

/* 会员信息卡片 - 高端质感 */
/* 顶部渐变光晕装饰 */

/* 通用卡片 */

/* 升级进度条 - 精致渐变 */

/* 区块 */

/* 权益网格 - 精致卡片 */

/* 等级列表 - 大气排版 */

/* ============================================================
   邀请好友 - 专业工具风
   ============================================================ */
.invite-modal .modal { max-width: 500px; width: 92%; border-radius: 12px !important; }
.invite-body { padding: 0; max-height: 70vh; overflow-y: auto; }
.invite-loading, .invite-error { padding: 40px; text-align: center; color: var(--text-tertiary); font-size: 13px; }
.invite-error { color: #ef4444; }

/* 邀请码卡片 */
.inv-code-card {
    margin: 16px;
    padding: 20px;
    background: var(--bg-card);
    border: 1px solid var(--border-color-light);
    border-radius: 12px;
    position: relative;
    overflow: hidden;
}
.inv-code-card::before {
    content: '';
    position: absolute;
    left: 0; top: 0; bottom: 0;
    width: 3px;
    background: var(--primary);
}
.inv-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
}
.inv-card-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
}
.inv-card-sub {
    font-size: 12px;
    color: var(--text-tertiary);
}
.inv-code-box {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--bg-secondary);
    border: 1px dashed color-mix(in srgb, var(--primary) 40%, var(--border-color));
    border-radius: 10px;
    padding: 14px 18px;
}
.inv-code-text {
    flex: 1;
    font-size: 22px;
    font-weight: 700;
    color: var(--primary);
    letter-spacing: 3px;
    font-family: 'SF Mono', 'Consolas', monospace;
    font-variant-numeric: tabular-nums;
}
.inv-copy-btn {
    padding: 7px 16px;
    background: var(--primary);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}
.inv-copy-btn:hover { background: var(--primary-dark); opacity: 0.9; }
.inv-link {
    font-size: 11px;
    color: var(--text-tertiary);
    margin-top: 12px;
    word-break: break-all;
    opacity: 0.7;
}

/* 统计卡片 */
.inv-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    padding: 0 16px 16px;
}
.inv-stat-card {
    text-align: center;
    padding: 14px 6px;
    background: var(--bg-card);
    border: 1px solid var(--border-color-light);
    border-radius: 10px;
    transition: all 0.15s ease;
}
.inv-stat-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    border-color: color-mix(in srgb, var(--primary) 30%, var(--border-color-light));
}
.inv-stat-num {
    font-size: 20px;
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}
.inv-stat-label {
    font-size: 11px;
    color: var(--text-tertiary);
    margin-top: 4px;
}

/* 邀请记录 */
.inv-section { padding: 0 16px 20px; }
.inv-section-header { margin-bottom: 12px; padding: 0 2px; }
.inv-section-title {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
}
.inv-records-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.inv-empty {
    text-align: center;
    padding: 36px 20px;
    color: var(--text-tertiary);
    font-size: 13px;
    background: var(--bg-card);
    border: 1px solid var(--border-color-light);
    border-radius: 10px;
}
.inv-empty-icon { font-size: 28px; margin-bottom: 8px; opacity: 0.5; }
.inv-empty-text { font-weight: 500; color: var(--text-secondary); }
.inv-empty .inv-empty-tip { font-size: 11px; color: var(--text-tertiary); margin-top: 6px; opacity: 0.7; }

.inv-record-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    background: var(--bg-card);
    border: 1px solid var(--border-color-light);
    border-radius: 10px;
    transition: all 0.15s ease;
}
.inv-record-row:hover {
    border-color: color-mix(in srgb, var(--primary) 25%, var(--border-color-light));
    background: var(--bg-secondary);
}
.inv-record-avatar {
    width: 36px; height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--primary), #764ba2);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 600;
    flex-shrink: 0;
}
.inv-record-info { flex: 1; min-width: 0; }
.inv-record-name { font-size: 13px; font-weight: 600; color: var(--text-primary); }
.inv-record-time { font-size: 11px; color: var(--text-tertiary); margin-top: 2px; }
.inv-record-status {
    font-size: 11px;
    font-weight: 500;
    padding: 3px 8px;
    border-radius: 4px;
    flex-shrink: 0;
}
.inv-record-status.pending { color: #f59e0b; background: rgba(245,158,11,0.12); }
.inv-record-status.completed { color: #22c55e; background: rgba(34,197,94,0.12); }
.inv-record-status.cancelled { color: var(--text-tertiary); background: var(--bg-tertiary); }
.inv-record-reward {
    font-size: 14px;
    font-weight: 700;
    color: #f59e0b;
    flex-shrink: 0;
    font-variant-numeric: tabular-nums;
}


/* ============================================================
   会员中心 - 高端奢华升级版 V2
   ============================================================ */

/* 弹窗整体升级 */
.member-modal .modal {
    max-width: 560px !important;
    width: 92% !important;
    border-radius: 20px !important;
    overflow: hidden;
    box-shadow: 
        0 30px 60px -15px rgba(0, 0, 0, 0.25),
        0 0 0 1px rgba(255, 255, 255, 0.05) inset;
    background: var(--bg-card) !important;
}

.member-modal .modal-header {
    padding: 24px 28px 20px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    background: linear-gradient(180deg, 
        color-mix(in srgb, var(--primary) 3%, var(--bg-card)),
        var(--bg-card));
}

.member-modal .modal-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px;
    background: linear-gradient(135deg, var(--text-primary), color-mix(in srgb, var(--primary) 40%, var(--text-primary)));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.member-modal .modal-close {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
}

.member-body {
    max-height: 75vh !important;
    scrollbar-width: thin;
    scrollbar-color: var(--border-color) transparent;
}

.member-body::-webkit-scrollbar {
    width: 6px;
}
.member-body::-webkit-scrollbar-track {
    background: transparent;
}
.member-body::-webkit-scrollbar-thumb {
    background: var(--border-color);
    border-radius: 3px;
}

/* 会员信息卡片 - 奢华质感 */

/* 新增奢华装饰光效 */

@keyframes badgeShine {
    0%, 100% { left: -100%; }
    50% { left: 100%; }
}

/* ========== 顶部文字按钮（卖家广场等） ========== */
.top-action-btn.top-action-btn-text {
    width: auto !important;
    padding: 0 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    color: var(--text-primary) !important;
    background: var(--bg-secondary) !important;
    border: 1px solid var(--border-color) !important;
    transition: all 0.2s ease !important;
    position: relative;
    overflow: hidden;
}

.top-action-btn.top-action-btn-text svg {
    width: 15px !important;
    height: 15px !important;
    flex-shrink: 0;
    color: var(--primary) !important;
    stroke: var(--primary) !important;
}

.top-action-btn.top-action-btn-text:hover {
    background: var(--bg-tertiary) !important;
    border-color: var(--primary) !important;
    color: var(--primary) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15) !important;
}

.top-action-btn.top-action-btn-text:hover svg {
    color: var(--primary) !important;
    stroke: var(--primary) !important;
}

.top-action-btn.top-action-btn-text:active {
    transform: translateY(0) scale(0.97) !important;
}

/* 浅色模式适配 */
@media (prefers-color-scheme: light) {
    .top-action-btn.top-action-btn-text {
        background: #fff !important;
        border-color: #e5e7eb !important;
        color: #374151 !important;
    }
    .top-action-btn.top-action-btn-text:hover {
        background: #f9fafb !important;
        border-color: var(--primary) !important;
    }
}

/* ========== 推广中心 - 首页卖家广场横幅 ========== */
.promo-entrance-row {
    margin: 16px 0;
}

.promo-entrance-banner {
    position: relative;
    border-radius: 14px;
    padding: 20px 24px;
    cursor: pointer;
    overflow: hidden;
    background: linear-gradient(135deg, rgba(249, 115, 22, 0.12), rgba(234, 88, 12, 0.06));
    border: 1px solid rgba(249, 115, 22, 0.25);
    transition: all 0.25s ease;
}

.promo-entrance-banner:hover {
    transform: translateY(-2px);
    border-color: rgba(249, 115, 22, 0.5);
    box-shadow: 0 8px 24px rgba(249, 115, 22, 0.15);
}

.promo-banner-bg {
    position: absolute;
    top: -50%;
    right: -10%;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(249, 115, 22, 0.15) 0%, transparent 70%);
    pointer-events: none;
}

.promo-banner-content {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 16px;
}

.promo-banner-icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    background: linear-gradient(135deg, #f97316, #ea580c);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(249, 115, 22, 0.3);
}

.promo-banner-text {
    flex: 1;
    min-width: 0;
}

.promo-banner-title {
    font-size: 17px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.promo-banner-desc {
    font-size: 12px;
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.promo-banner-cta {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    font-weight: 600;
    color: #f97316;
    flex-shrink: 0;
    padding: 8px 14px;
    border-radius: 8px;
    background: rgba(249, 115, 22, 0.1);
    transition: all 0.2s ease;
}

.promo-entrance-banner:hover .promo-banner-cta {
    background: rgba(249, 115, 22, 0.2);
    gap: 8px;
}

/* ========== 个人中心 - 可点击项 & 箭头 ========== */
.profile-info-item.clickable {
    cursor: pointer;
    transition: background 0.15s ease;
}

.profile-info-item.clickable:hover {
    background: var(--bg-tertiary) !important;
}

.profile-info-arrow {
    flex-shrink: 0;
    color: var(--text-tertiary);
    opacity: 0.5;
    transition: all 0.15s ease;
}

.profile-info-item.clickable:hover .profile-info-arrow {
    opacity: 1;
    color: var(--primary);
    transform: translateX(2px);
}

/* 响应式：小屏隐藏描述 */
@media (max-width: 600px) {
    .promo-banner-desc {
        display: none;
    }
    .promo-entrance-banner {
        padding: 16px;
    }
    .promo-banner-icon {
        width: 44px;
        height: 44px;
    }
}

/* 升级进度卡片 - 高端版 */

/* 进度条 - 奢华渐变 + 流光 */

@keyframes progressShimmer {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

/* 区块标题 - 高端化 */

/* 权益网格 - 高端卡片 */

/* 等级列表 - 高端大气 */

/* ============================================================
   积分排行榜 - 高端奢华升级版 V2
   ============================================================ */

.leaderboard-modal .modal {
    max-width: 580px !important;
    width: 92% !important;
    border-radius: 20px !important;
    overflow: hidden;
    box-shadow: 
        0 30px 60px -15px rgba(0, 0, 0, 0.25),
        0 0 0 1px rgba(255, 255, 255, 0.05) inset;
    background: var(--bg-card) !important;
}

.leaderboard-modal .modal-header {
    padding: 24px 28px 20px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    background: linear-gradient(180deg, 
        color-mix(in srgb, #f59e0b 4%, var(--bg-card)),
        var(--bg-card));
}

.leaderboard-modal .modal-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.leaderboard-modal .modal-title::before {
    content: '🏆';
    font-size: 20px;
    filter: drop-shadow(0 2px 4px rgba(245, 158, 11, 0.3));
}

.leaderboard-modal .modal-close {
    width: 36px !important;
    height: 36px !important;
    border-radius: 10px !important;
}

.leaderboard-body {
    max-height: 75vh !important;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--border-color) transparent;
}
.leaderboard-loading,
.leaderboard-error {
    padding: 40px;
    text-align: center;
    color: var(--text-tertiary);
    font-size: 13px;
}
.leaderboard-error { color: #ef4444; }

.leaderboard-body::-webkit-scrollbar {
    width: 6px;
}
.leaderboard-body::-webkit-scrollbar-track {
    background: transparent;
}
.leaderboard-body::-webkit-scrollbar-thumb {
    background: var(--border-color);
    border-radius: 3px;
}

/* Tab - 高端胶囊式 */
.lb-tabs {
    display: flex !important;
    justify-content: center !important;
    gap: 4px !important;
    padding: 6px !important;
    margin: 20px 20px 0 !important;
    border: none !important;
    background: var(--bg-tertiary) !important;
    border-radius: 12px !important;
    margin-bottom: 0 !important;
}

.lb-tab {
    flex: 1 !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--text-tertiary) !important;
    border: none !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    margin-bottom: 0 !important;
    text-align: center;
    position: relative;
}

.lb-tab:hover {
    color: var(--text-secondary) !important;
    background: var(--bg-secondary);
}

.lb-tab.active {
    color: #fff !important;
    background: linear-gradient(135deg, var(--primary), color-mix(in srgb, var(--primary) 70%, #a855f7)) !important;
    border-bottom: none !important;
    font-weight: 700 !important;
    box-shadow: 
        0 4px 12px color-mix(in srgb, var(--primary) 35%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

/* 前三名 - 领奖台设计 */
.lb-top3 {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 24px 20px 20px !important;
    position: relative;
}

/* 领奖台背景 */
.lb-top3::before {
    content: '';
    position: absolute;
    bottom: 20px;
    left: 20px;
    right: 20px;
    height: 80px;
    background: linear-gradient(180deg, transparent, color-mix(in srgb, var(--primary) 5%, transparent));
    border-radius: 0 0 16px 16px;
    pointer-events: none;
}

.lb-top3-card {
    flex: 1;
    text-align: center;
    padding: 20px 12px 18px !important;
    background: var(--bg-card) !important;
    border: 1px solid var(--border-color-light) !important;
    border-radius: 16px !important;
    position: relative;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 1;
}

.lb-top3-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 16px 32px -8px rgba(0, 0, 0, 0.12) !important;
}

/* 第一名 - 最高领奖台 */
.lb-top3-card.rank-1 {
    order: 2;
    padding-top: 28px !important;
    margin-bottom: 16px;
    border: 1px solid color-mix(in srgb, #f59e0b 40%, transparent) !important;
    background: 
        radial-gradient(ellipse at 50% 0%, color-mix(in srgb, #f59e0b 15%, transparent) 0%, transparent 60%),
        linear-gradient(180deg, color-mix(in srgb, #f59e0b 8%, var(--bg-card)), var(--bg-card)) !important;
    box-shadow: 
        0 12px 30px -8px color-mix(in srgb, #f59e0b 30%, transparent),
        0 0 0 1px color-mix(in srgb, #f59e0b 20%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

/* 冠军皇冠 */
.lb-top3-card.rank-1 .lb-top3-medal::after {
    content: '👑';
    position: absolute;
    top: -22px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 26px;
    animation: crownFloat 2s ease-in-out infinite;
    filter: drop-shadow(0 2px 6px rgba(245, 158, 11, 0.4));
}

@keyframes crownFloat {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(-4px); }
}

/* 第二名 */
.lb-top3-card.rank-2 {
    order: 1;
    border: 1px solid color-mix(in srgb, #9ca3af 35%, transparent) !important;
    background: 
        radial-gradient(ellipse at 50% 0%, color-mix(in srgb, #9ca3af 10%, transparent) 0%, transparent 60%),
        linear-gradient(180deg, color-mix(in srgb, #9ca3af 5%, var(--bg-card)), var(--bg-card)) !important;
    box-shadow: 
        0 8px 20px -6px color-mix(in srgb, #9ca3af 25%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

/* 第三名 */
.lb-top3-card.rank-3 {
    order: 3;
    border: 1px solid color-mix(in srgb, #cd7f32 35%, transparent) !important;
    background: 
        radial-gradient(ellipse at 50% 0%, color-mix(in srgb, #cd7f32 10%, transparent) 0%, transparent 60%),
        linear-gradient(180deg, color-mix(in srgb, #cd7f32 5%, var(--bg-card)), var(--bg-card)) !important;
    box-shadow: 
        0 8px 20px -6px color-mix(in srgb, #cd7f32 25%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.06) !important;
}

.lb-top3-medal {
    font-size: 24px !important;
    margin-bottom: 10px !important;
    position: relative;
    display: inline-block;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.15));
}

.lb-top3-avatar {
    width: 52px !important;
    height: 52px !important;
    margin: 0 auto 10px !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    border: 3px solid rgba(255,255,255,0.4) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    position: relative;
}

/* 冠军头像光环 */
.lb-top3-card.rank-1 .lb-top3-avatar {
    border-color: #f59e0b !important;
    box-shadow: 
        0 0 0 3px color-mix(in srgb, #f59e0b 20%, transparent),
        0 4px 16px color-mix(in srgb, #f59e0b 30%, transparent);
    animation: championGlow 2s ease-in-out infinite;
}

@keyframes championGlow {
    0%, 100% { 
        box-shadow: 
            0 0 0 3px color-mix(in srgb, #f59e0b 20%, transparent),
            0 4px 16px color-mix(in srgb, #f59e0b 30%, transparent);
    }
    50% { 
        box-shadow: 
            0 0 0 5px color-mix(in srgb, #f59e0b 25%, transparent),
            0 6px 20px color-mix(in srgb, #f59e0b 40%, transparent);
    }
}

.lb-top3-name {
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 3px !important;
}

.lb-top3-level {
    font-size: 11px !important;
    margin-bottom: 8px !important;
    font-weight: 500;
}

.lb-top3-points {
    font-size: 16px !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #f59e0b, #d97706);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.5px;
}

.lb-top3-card.rank-2 .lb-top3-points {
    background: linear-gradient(135deg, #9ca3af, #6b7280);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.lb-top3-card.rank-3 .lb-top3-points {
    background: linear-gradient(135deg, #cd7f32, #a0522d);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* 排行列表 - 高端版 */
.lb-list {
    padding: 0 20px 16px !important;
    gap: 6px !important;
}

.lb-row {
    padding: 12px 14px !important;
    border-radius: 12px !important;
    gap: 14px !important;
    border: 1px solid transparent;
    transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
    background: transparent;
}

.lb-row:hover {
    background: var(--bg-secondary) !important;
    border-color: var(--border-color-light);
    transform: translateX(2px);
}

.lb-rank {
    width: 32px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums;
    color: var(--text-secondary);
    text-align: center;
    position: relative;
}

.lb-avatar {
    width: 36px !important;
    height: 36px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}

.lb-info { flex: 1; min-width: 0; }

.lb-name {
    font-size: 13px !important;
    font-weight: 600 !important;
}

.lb-level {
    font-size: 11px !important;
    margin-top: 3px !important;
    font-weight: 500;
}

.lb-points {
    font-size: 15px !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #f59e0b, #d97706);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.3px;
}

/* 我的排名 - 高端卡片 */
.lb-my-rank {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 16px 20px !important;
    margin: 8px 20px 24px !important;
    border-radius: 16px !important;
    background: 
        linear-gradient(135deg, 
            color-mix(in srgb, var(--primary) 12%, transparent),
            color-mix(in srgb, var(--primary) 5%, transparent)),
        var(--bg-card) !important;
    border: 1px solid color-mix(in srgb, var(--primary) 25%, transparent) !important;
    box-shadow: 
        0 8px 24px -8px color-mix(in srgb, var(--primary) 20%, transparent),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
    position: relative;
    overflow: hidden;
}

.lb-my-rank::before {
    content: '';
    position: absolute;
    top: -30px;
    right: -30px;
    width: 100px;
    height: 100px;
    background: radial-gradient(circle, color-mix(in srgb, var(--primary) 20%, transparent) 0%, transparent 60%);
    pointer-events: none;
}

.lb-my-rank-num {
    font-size: 20px !important;
    font-weight: 800 !important;
    min-width: 44px !important;
    background: linear-gradient(135deg, var(--primary), color-mix(in srgb, var(--primary) 70%, #a855f7));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.5px;
    position: relative;
    z-index: 1;
}

.lb-my-avatar {
    width: 40px !important;
    height: 40px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    box-shadow: 0 4px 10px color-mix(in srgb, var(--primary) 25%, transparent);
    border: 2px solid color-mix(in srgb, var(--primary) 30%, transparent);
    position: relative;
    z-index: 1;
}

.lb-my-info {
    flex: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
}

.lb-my-name {
    font-size: 14px !important;
    font-weight: 700 !important;
}

.lb-my-level {
    font-size: 11px !important;
    margin-top: 3px !important;
    font-weight: 500;
}

.lb-my-points {
    font-size: 17px !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #f59e0b, #d97706);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.5px;
    position: relative;
    z-index: 1;
}

/* 空状态 - 高端版 */
.lb-empty {
    padding: 60px 20px !important;
    font-size: 13px !important;
}

.lb-empty-icon {
    font-size: 40px !important;
    margin-bottom: 12px !important;
    opacity: 0.4;
    filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
}

/* 菜单等级徽章 - 高端升级 */
.auth-menu-badge {
    padding: 2px 8px !important;
    border-radius: 6px !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #FFD700, #FFA500, #FF8C00) !important;
    box-shadow: 
        0 2px 8px rgba(255, 165, 0, 0.35),
        inset 0 1px 0 rgba(255, 255, 255, 0.3);
    position: relative;
    overflow: hidden;
    letter-spacing: 0.3px;
}

.auth-menu-badge::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    animation: badgeShine 3s ease-in-out infinite;
}

/* ============================================================
   会员中心 - 复刻积分商城V3 专业工具风
   ============================================================ */

.member-modal .modal {
    max-width: 600px !important;
    width: 92% !important;
    border-radius: 16px !important;
    overflow: hidden;
    box-shadow: 0 20px 50px -15px rgba(0, 0, 0, 0.2) !important;
}

.member-modal .modal-header {
    padding: 22px 28px 18px !important;
    border-bottom: 1px solid var(--border-color-light) !important;
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--bg-card) !important;
}

.member-modal .modal-title {
    font-size: 18px !important;
    font-weight: 600 !important;
    letter-spacing: -0.2px !important;
    flex: 1;
    margin: 0;
    background: none !important;
    -webkit-text-fill-color: var(--text-primary) !important;
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
}

.member-modal .modal-close {
    width: 32px !important;
    height: 32px !important;
    border-radius: 8px !important;
}

.member-body {
    padding: 0 !important;
    max-height: calc(72vh - 60px) !important;
}

/* ============================================================
   店铺卡片加载遮罩 + 停止按钮
   ============================================================ */

.shop-card.loading-shop {
    position: relative;
}

/* 左侧加载指示条 */
.shop-loading-indicator {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, var(--primary), var(--primary-light, #7c9fff));
    z-index: 5;
    pointer-events: none;
    animation: loadingPulse 1.5s ease-in-out infinite;
}

@keyframes loadingPulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* 停止按钮 */
.shop-action-btn.stop-btn {
    color: var(--danger) !important;
    background: transparent !important;
    border: none !important;
}

.shop-action-btn.stop-btn:hover {
    background: rgba(239, 68, 68, 0.1) !important;
    transform: scale(1.1);
}
