/* ==========================================================
   site-theme.css · 用户端统一视觉（参考蓝橙营销站风格）
   最后加载的覆盖层：不改变业务结构，只重定义色板、圆角与层次。
   色板：主色 #2563eb / 强调 #f97316 / 画布 #f9fafb / 白卡 #fff
   ========================================================== */

:root {
    --st-primary:#2563eb;
    --st-primary-hover:#1d4ed8;
    --st-primary-soft:#eff6ff;
    --st-primary-border:#dbeafe;
    --st-accent:#f97316;
    --st-accent-soft:#fff7ed;
    --st-canvas:#f9fafb;
    --st-surface:#ffffff;
    --st-line:#f3f4f6;
    --st-line-strong:#e5e7eb;
    --st-ink:#111827;
    --st-body:#374151;
    --st-muted:#6b7280;
    --st-placeholder:#9ca3af;
    --st-radius-sm:8px;
    --st-radius:12px;
    --st-radius-lg:16px;
    --st-shadow-xs:0 1px 2px rgba(16,24,40,.05);
    --st-shadow-sm:0 1px 3px rgba(16,24,40,.06),0 1px 2px rgba(16,24,40,.04);
    --st-shadow-md:0 4px 14px rgba(16,24,40,.07);

    /* 覆盖旧版全局变量：任何残留的紫色都会被替换为主色 */
    --bg-gradient:var(--st-canvas);
    --primary-color:#2563eb;
    --primary-hover:#1d4ed8;
    --primary-light:#eff6ff;
    --primary-glow:rgba(37,99,235,.22);
    --secondary-color:#f97316;
    --text-color:#111827;
    --text-secondary:#374151;
    --text-muted:#6b7280;
    --card-bg:#ffffff;
    --card-border:#f3f4f6;
    --card-shadow:var(--st-shadow-sm);
    --card-hover-shadow:var(--st-shadow-md);
    --input-bg:#ffffff;
    --input-border:#e5e7eb;
    --input-focus:#2563eb;
    --nav-bg:rgba(255,255,255,.92);
    --border-radius:12px;
    --border-radius-sm:8px;
    --border-radius-lg:16px;
    --border-radius-xl:20px;

    /* 覆盖 figma / design-system 的私有变量 */
    --dv-primary:#2563eb;
    --dv-primary-strong:#1d4ed8;
    --dv-primary-soft:#eff6ff;
    --dv-blue:#2563eb;
    --dv-orange:#f97316;
    --dv-bg:#f9fafb;
    --dv-card:#ffffff;
    --dv-line:#f3f4f6;
    --dv-text:#111827;
    --dv-muted:#6b7280;
    --dv-shadow:var(--st-shadow-sm);
    --ds-primary:#2563eb;
    --ds-primary-hover:#1d4ed8;
    --ds-primary-soft:#eff6ff;
    --ds-primary-border:#dbeafe;
    --ds-bg:#f9fafb;
    --ds-card:#ffffff;
    --ds-line:#f3f4f6;
    --ds-ink:#111827;
    --ds-body:#374151;
    --ds-muted:#6b7280;
    --ds-input:#ffffff;
    --ds-radius-sm:8px;
    --ds-radius-md:12px;
    --ds-radius-lg:12px;
    --ds-shadow-sm:var(--st-shadow-sm);
    --ds-shadow-md:var(--st-shadow-md);
    --ui-primary:#2563eb;
    --ui-primary-2:#1d4ed8;
}

[data-theme="dark"] {
    --st-canvas:#0b1220;
    --st-surface:#111827;
    --st-line:#1f2937;
    --st-line-strong:#374151;
    --st-ink:#f9fafb;
    --st-body:#d1d5db;
    --st-muted:#9ca3af;
    --st-primary-soft:#172554;
    --st-primary-border:#1e40af;
    --primary-color:#3b82f6;
    --primary-hover:#2563eb;
    --primary-light:rgba(59,130,246,.16);
    --text-color:#f9fafb;
    --text-secondary:#d1d5db;
    --text-muted:#9ca3af;
    --card-bg:#111827;
    --card-border:#1f2937;
    --input-bg:#111827;
    --input-border:#374151;
    --input-focus:#3b82f6;
    --nav-bg:rgba(17,24,39,.92);
    --dv-bg:#0b1220;
    --dv-card:#111827;
    --dv-line:#1f2937;
    --dv-text:#f9fafb;
    --dv-muted:#9ca3af;
    --ds-bg:#0b1220;
    --ds-card:#111827;
    --ds-line:#1f2937;
    --ds-ink:#f9fafb;
    --ds-body:#d1d5db;
    --ds-muted:#9ca3af;
    --ds-input:#111827;
}

/* ---------- 基础画布 ---------- */
html, body {
    background:var(--st-canvas) !important;
    color:var(--st-body) !important;
}
body { letter-spacing:0 !important; }
body::before, body::after, .bg-orb { display:none !important; }
body:has(#authScreen) { background:var(--st-canvas) !important; color:var(--st-ink) !important; }

/* ---------- 顶部导航：白底 + 细边框 + 轻阴影 ---------- */
.navbar {
    height:64px !important;
    padding:0 max(20px, calc((100vw - 1200px)/2)) !important;
    background:rgba(255,255,255,.94) !important;
    border-bottom:1px solid var(--st-line) !important;
    box-shadow:0 1px 2px rgba(16,24,40,.05) !important;
    backdrop-filter:blur(14px) saturate(140%) !important;
    -webkit-backdrop-filter:blur(14px) saturate(140%) !important;
}
.navbar.scrolled {
    background:#fff !important;
    box-shadow:0 2px 8px rgba(16,24,40,.07) !important;
}
.navbar-brand { color:var(--st-ink) !important; font-weight:700 !important; text-shadow:none !important; }
.navbar-brand i {
    color:var(--st-primary) !important;
    background:none !important;
    -webkit-text-fill-color:currentColor !important;
    text-shadow:none !important;
}
.navbar-brand svg {
    color:var(--st-primary) !important;
    width:22px;
    height:22px;
}
.navbar-brand-logo {
    display:block;
    width:28px;
    height:28px;
    border-radius:6px;
    object-fit:contain;
    background:#fff;
}
.navbar-brand-logo[hidden] { display:none !important; }
.navbar-links a {
    color:var(--st-muted) !important;
    border-radius:8px !important;
    padding:8px 13px !important;
    font-size:13px !important;
    backdrop-filter:none !important;
}
.navbar-links a:hover, .navbar-links a.active {
    color:var(--st-primary) !important;
    background:var(--st-primary-soft) !important;
    box-shadow:none !important;
    text-shadow:none !important;
}
.navbar-user {
    color:var(--st-body) !important;
    background:#f9fafb !important;
    border:1px solid var(--st-line-strong) !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    border-radius:8px !important;
}
.navbar-user a { color:var(--st-body) !important; }
.theme-toggle, .theme-toggle-nav {
    width:38px !important;
    height:38px !important;
    min-height:38px !important;
    border-radius:10px !important;
    color:var(--st-muted) !important;
    background:#fff !important;
    border:1px solid var(--st-line-strong) !important;
    box-shadow:var(--st-shadow-xs) !important;
}
.theme-toggle:hover, .theme-toggle-nav:hover {
    color:var(--st-primary) !important;
    background:var(--st-primary-soft) !important;
    transform:none !important;
}

/* ---------- 主内容与标题 ---------- */
.main-content {
    width:min(1200px, calc(100% - 40px)) !important;
    max-width:1200px !important;
    margin:0 auto !important;
    padding:84px 0 100px !important;
    color:var(--st-body) !important;
}
.page-header {
    margin-bottom:20px !important;
    padding-bottom:14px !important;
    border-bottom:1px solid var(--st-line) !important;
}
.page-header h2, .section-title, .home-section-head b {
    color:var(--st-ink) !important;
    text-shadow:none !important;
    font-weight:700 !important;
}
.page-header h2 i {
    background:none !important;
    -webkit-text-fill-color:currentColor !important;
    color:var(--st-primary) !important;
    text-shadow:none !important;
}
.page-header p, .home-section-head small, .text-muted { color:var(--st-muted) !important; }

/* ---------- 卡片 ---------- */
.card, .glass, .glass-card, .task-execution-card,
.home-announcement-preview, .home-leaderboard-preview, .home-tool,
.profile-v2-grid a, .preclaim-block, .wizard-step, .task-step-card,
.global-board-card, .leader-choice-card, .account-list, .picker-sheet {
    background:var(--st-surface) !important;
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius) !important;
    box-shadow:var(--st-shadow-sm) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
.card:hover, .glass:hover, .home-tool:hover, .profile-v2-grid a:hover {
    transform:none !important;
    background:var(--st-surface) !important;
    box-shadow:var(--st-shadow-md) !important;
    border-color:var(--st-line-strong) !important;
}
.card { padding:20px !important; margin:10px 0 !important; }

/* ---------- 按钮 ---------- */
.btn, .btn-primary, input[type="submit"],
button:not(.support-fab):not(.support-close):not(.support-attach-btn):not(.support-attach-remove) {
    min-height:40px !important;
    border-radius:var(--st-radius-sm) !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
    box-shadow:none !important;
}
.btn::before { display:none !important; }
.btn:hover, .btn-primary:hover, input[type="submit"]:hover,
button:not(.support-fab):not(.support-close):not(.support-attach-btn):not(.support-attach-remove):hover {
    transform:none !important;
    box-shadow:var(--st-shadow-xs) !important;
}
.btn-primary, .task-submit-btn, .claim-primary-action, .task-poster-generate {
    background:var(--st-primary) !important;
    color:#fff !important;
    border:1px solid var(--st-primary) !important;
    box-shadow:0 2px 6px rgba(37,99,235,.18) !important;
}
.btn-primary:hover, .task-submit-btn:hover, .claim-primary-action:hover, .task-poster-generate:hover {
    background:var(--st-primary-hover) !important;
    border-color:var(--st-primary-hover) !important;
}
.btn, input[type="submit"],
button:not(.support-fab):not(.support-close):not(.support-attach-btn):not(.support-attach-remove) {
    background:#fff;
    color:var(--st-body);
    border:1px solid var(--st-line-strong);
}
.btn-outline {
    background:#fff !important;
    color:var(--st-body) !important;
    border:1px solid var(--st-line-strong) !important;
}
.btn-outline:hover {
    color:var(--st-primary) !important;
    border-color:var(--st-primary-border) !important;
    background:var(--st-primary-soft) !important;
}
.btn-success { background:#16a34a !important; color:#fff !important; border-color:#16a34a !important; }
.btn-danger { background:#dc2626 !important; color:#fff !important; border-color:#dc2626 !important; }
.btn-warning { background:var(--st-accent) !important; color:#fff !important; border-color:var(--st-accent) !important; }

/* ---------- 输入控件 ---------- */
input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="range"]):not([type="color"]),
select, textarea, .form-input {
    min-height:42px !important;
    padding:10px 13px !important;
    border:1px solid var(--st-line-strong) !important;
    border-radius:var(--st-radius-sm) !important;
    background:var(--st-surface) !important;
    color:var(--st-ink) !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
}
input::placeholder, textarea::placeholder { color:var(--st-placeholder) !important; }
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="reset"]):focus,
select:focus, textarea:focus, .form-input:focus {
    border-color:var(--st-primary) !important;
    background:var(--st-surface) !important;
    box-shadow:0 0 0 3px rgba(37,99,235,.12) !important;
}
label, .form-group label, .form-label {
    color:var(--st-body) !important;
    text-shadow:none !important;
    font-weight:600 !important;
}
.input-icon-wrap i { color:var(--st-placeholder) !important; }
.input-icon-wrap:focus-within i { color:var(--st-primary) !important; }

/* ---------- 标签 / 统计 / 任务 ---------- */
.badge, .status-chip { border-radius:6px !important; }
.badge-info, .status-info { color:var(--st-primary) !important; background:var(--st-primary-soft) !important; }
.badge-warning, .status-warning { color:#c2410c !important; background:var(--st-accent-soft) !important; }
.stats-pill, .task-summary .stats-pill {
    background:var(--st-surface) !important;
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius-sm) !important;
    color:var(--st-muted) !important;
    box-shadow:none !important;
}
.task-price, .mat-card .task-price { color:var(--st-primary) !important; }
.task-rule {
    background:var(--st-accent-soft) !important;
    border:1px solid #fed7aa !important;
    color:#9a3412 !important;
    border-radius:var(--st-radius-sm) !important;
}
.task-tabs .btn {
    background:#fff !important;
    color:var(--st-muted) !important;
    border:1px solid var(--st-line-strong) !important;
    border-radius:999px !important;
}
.task-tabs .btn:first-child, .task-tabs .btn.active {
    background:var(--st-primary) !important;
    color:#fff !important;
    border-color:var(--st-primary) !important;
}
.task-execution-title {
    background:var(--st-surface) !important;
    color:var(--st-ink) !important;
    border-bottom:1px solid var(--st-line) !important;
    border-radius:0 !important;
}
.task-execution-title h3 { color:var(--st-ink) !important; }
.next-action {
    background:var(--st-primary-soft) !important;
    border-left:3px solid var(--st-primary) !important;
    border-radius:var(--st-radius-sm) !important;
}
.task-step.active .task-step-dot {
    background:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
    box-shadow:0 0 0 3px rgba(37,99,235,.12) !important;
}

/* ---------- 排行榜 ---------- */
.global-board-card {
    color:var(--st-body) !important;
    box-shadow:var(--st-shadow-sm) !important;
}
.global-board-card::after { display:none !important; }
.global-board-card.task, .global-board-card.referral { border-top:1px solid var(--st-line) !important; }
.global-board-head { border-bottom:1px solid var(--st-line) !important; }
.global-board-head > i { color:var(--st-primary) !important; }
.global-board-card.referral .global-board-head > i { color:var(--st-accent) !important; }
.global-board-head b { color:var(--st-ink) !important; }
.global-board-head small { color:var(--st-muted) !important; }
.global-board-head::after { color:#f3f4f6 !important; }
.global-board-body::before { color:var(--st-placeholder) !important; }
.global-rank-row { border-bottom:1px solid var(--st-line) !important; }
.global-rank-row > b { color:var(--st-muted) !important; }
.global-rank-row span { color:var(--st-ink) !important; }
.global-rank-row strong { color:var(--st-accent) !important; font-weight:700; }
.global-rank-row span::before { background:#f3f4f6 !important; color:#9ca3af !important; }
.global-rank-row:nth-child(1), .global-rank-row:nth-child(2), .global-rank-row:nth-child(3) {
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius-sm) !important;
    background:#f9fafb !important;
}
.global-rank-row:nth-child(1) { background:#fff7ed !important; border-color:#fed7aa !important; }
.global-rank-row:nth-child(2), .global-rank-row:nth-child(3) { background:#f9fafb !important; }
.global-my-rank {
    background:var(--st-primary-soft) !important;
    color:var(--st-primary-hover) !important;
    border:1px solid var(--st-primary-border) !important;
    border-radius:var(--st-radius-sm) !important;
}
.leader-choice-card { color:#fff !important; border:0 !important; box-shadow:var(--st-shadow-sm) !important; }
.leader-choice-card.task { background:var(--st-primary) !important; }
.leader-choice-card.referral { background:var(--st-accent) !important; }
.leader-choice-card:hover { filter:brightness(.97); }
.leader-row:first-of-type { background:#fffbeb !important; }
.leader-row:nth-of-type(2) { background:#f9fafb !important; }
.leader-row:nth-of-type(3) { background:#fff7ed !important; }
.my-rank {
    background:var(--st-primary-soft) !important;
    border:1px solid var(--st-primary-border) !important;
    color:var(--st-primary-hover) !important;
    border-radius:var(--st-radius-sm) !important;
}

/* ---------- 首页工具 / 小组件 ---------- */
#app > .home-tools .home-tool,
#app > .home-tools .home-tool-icon,
.home-welcome-bar > a {
    border-radius:var(--st-radius) !important;
}
#app > .home-tools .home-tool-icon {
    background:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
}
.home-welcome-bar h1, .home-rank-row > b { color:var(--st-ink) !important; }
.home-rank-row { border-top:1px solid var(--st-line) !important; }
.home-rank-row > strong { color:var(--st-primary) !important; }
.mobile-home-hero, .mobile-task-hero {
    background:var(--st-primary-soft) !important;
    color:var(--st-ink) !important;
    border:1px solid var(--st-primary-border) !important;
    border-radius:var(--st-radius) !important;
    box-shadow:none !important;
}
.mobile-home-hero > i, .mobile-task-hero > i {
    background:var(--st-primary) !important;
    box-shadow:none !important;
    transform:none !important;
    border-radius:var(--st-radius) !important;
}
.mobile-task-hero small em { background:#fff !important; color:var(--st-muted) !important; }

/* ---------- 个人中心 ---------- */
.profile-v2 {
    margin:0 !important;
    padding:0 0 90px !important;
    background:var(--st-canvas) !important;
    color:var(--st-ink) !important;
    min-height:calc(100vh - 64px) !important;
}
.profile-v2-hero h2 { color:var(--st-ink) !important; }
.profile-v2-hero p { color:var(--st-muted) !important; }
.profile-v2-avatar {
    background:#fff !important;
    color:var(--st-primary) !important;
    border:1px solid var(--st-line) !important;
    box-shadow:var(--st-shadow-sm) !important;
}
.profile-v2-stats {
    background:var(--st-surface) !important;
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius) !important;
    box-shadow:var(--st-shadow-sm) !important;
}
.profile-v2-stats > div + div { border-left:1px solid var(--st-line) !important; }
.profile-v2-stats b { color:var(--st-ink) !important; }
.profile-v2-stats span { color:var(--st-muted) !important; }
.profile-v2-stats i {
    background:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
    border-radius:var(--st-radius-sm) !important;
}
.profile-v2-grid a {
    background:var(--st-surface) !important;
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius) !important;
    box-shadow:var(--st-shadow-sm) !important;
    color:var(--st-ink) !important;
}
.profile-v2-grid a i {
    background:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
    border-radius:var(--st-radius-sm) !important;
}
.profile-v2-grid a:nth-child(2) i { background:#fff7ed !important; color:var(--st-accent) !important; }
.profile-v2-grid a:nth-child(3) i,
.profile-v2-grid a:nth-child(4) i,
.profile-v2-grid a:nth-child(5) i { background:#f9fafb !important; color:var(--st-muted) !important; }
.profile-v2-grid small { color:var(--st-muted) !important; }
.profile-v2-grid em { color:var(--st-placeholder) !important; }
.profile-v2-title b {
    color:var(--st-ink) !important;
    border-left:3px solid var(--st-primary) !important;
    padding-left:9px !important;
}
.profile-v2-actions .logout-btn {
    background:#fff !important;
    color:#dc2626 !important;
    border:1px solid #fecaca !important;
}
.profile-v2-banner {
    background:var(--st-primary-soft) !important;
    border:1px solid var(--st-primary-border) !important;
    border-radius:var(--st-radius) !important;
    color:var(--st-primary-hover) !important;
}

/* ---------- 登录页 ---------- */
.auth-wrapper { min-height:100vh !important; }
.auth-brand { color:var(--st-ink) !important; text-shadow:none !important; }
.auth-brand-icon {
    background:var(--st-primary) !important;
    border-radius:var(--st-radius) !important;
    box-shadow:0 6px 16px rgba(37,99,235,.22) !important;
}
.auth-eyebrow { color:var(--st-primary) !important; }
.auth-brand h1 { color:var(--st-ink) !important; text-shadow:none !important; }
.auth-brand p { color:var(--st-muted) !important; }
.auth-card {
    background:var(--st-surface) !important;
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius-lg) !important;
    box-shadow:var(--st-shadow-md) !important;
}
.auth-card::before { background:var(--st-primary) !important; }
.auth-tabs {
    background:#f3f4f6 !important;
    border:1px solid var(--st-line) !important;
    border-radius:var(--st-radius-sm) !important;
    box-shadow:none !important;
}
.auth-tab { color:var(--st-muted) !important; border-radius:6px !important; }
.auth-tab.active {
    background:var(--st-primary) !important;
    color:#fff !important;
    box-shadow:none !important;
}
.auth-card .btn-primary {
    border-radius:var(--st-radius-sm) !important;
    box-shadow:0 2px 8px rgba(37,99,235,.18) !important;
}
.auth-trust-strip { border-top:1px solid var(--st-line) !important; }
.auth-trust-strip i { color:var(--st-primary) !important; }
.auth-trust-strip b { color:var(--st-body) !important; }
.auth-trust-strip small { color:var(--st-muted) !important; }
.auth-footer, .auth-footer a { color:var(--st-muted) !important; }
.auth-footer a:hover { color:var(--st-primary) !important; }

/* ---------- 客服入口：保持扁平单色 ---------- */
#supportWidget .support-fab {
    background:var(--st-primary) !important;
    box-shadow:0 6px 18px rgba(37,99,235,.24) !important;
    border-radius:var(--st-radius) !important;
}
#supportWidget .support-panel { border-radius:var(--st-radius) !important; }

/* ---------- 底部导航 ---------- */
.mobile-tab {
    background:rgba(255,255,255,.97) !important;
    border-top:1px solid var(--st-line) !important;
    box-shadow:0 -2px 10px rgba(16,24,40,.06) !important;
}
.mobile-tab a { color:var(--st-muted) !important; }
.mobile-tab a.active { color:var(--st-primary) !important; }
.mobile-tab a.active i { background:var(--st-primary-soft) !important; color:var(--st-primary) !important; }

/* ---------- 暗色收敛（保留可用性，不再出现紫色） ---------- */
[data-theme="dark"] body,
[data-theme="dark"] .main-content,
[data-theme="dark"] .profile-v2 { background:var(--st-canvas) !important; color:var(--st-body) !important; }
[data-theme="dark"] .navbar {
    background:rgba(17,24,39,.94) !important;
    border-bottom-color:var(--st-line) !important;
}
[data-theme="dark"] .navbar-brand { color:var(--st-ink) !important; }
[data-theme="dark"] .card,
[data-theme="dark"] .glass,
[data-theme="dark"] .task-execution-card,
[data-theme="dark"] .profile-v2-grid a,
[data-theme="dark"] .preclaim-block,
[data-theme="dark"] .picker-sheet,
[data-theme="dark"] .home-tool,
[data-theme="dark"] .global-board-card,
[data-theme="dark"] .auth-card {
    background:var(--st-surface) !important;
    border-color:var(--st-line) !important;
    color:var(--st-body) !important;
}
[data-theme="dark"] .page-header h2,
[data-theme="dark"] .section-title,
[data-theme="dark"] .home-welcome-bar h1,
[data-theme="dark"] .profile-v2-hero h2,
[data-theme="dark"] .global-board-head b,
[data-theme="dark"] .global-rank-row span { color:var(--st-ink) !important; }
[data-theme="dark"] .mobile-tab { background:rgba(17,24,39,.96) !important; border-top-color:var(--st-line) !important; }
[data-theme="dark"] .profile-v2-banner { background:var(--st-primary-soft) !important; border-color:var(--st-primary-border) !important; }
[data-theme="dark"] .task-execution-title { background:var(--st-surface) !important; border-bottom-color:var(--st-line) !important; }
[data-theme="dark"] .leader-row:nth-of-type(1) { background:#3b2f14 !important; }
[data-theme="dark"] .leader-row:nth-of-type(2), [data-theme="dark"] .leader-row:nth-of-type(3) { background:#111827 !important; }

/* ==========================================================
   扁平化收尾：清除用户端所有残留渐变与旧版装饰
   ========================================================== */
html[data-theme] body .btn,
html[data-theme] body button.btn,
html[data-theme] body input[type="submit"] {
    background-image:none !important;
    background-color:#fff !important;
    color:var(--st-body) !important;
    border:1px solid var(--st-line-strong) !important;
}
html[data-theme="dark"] body .btn,
html[data-theme="dark"] body button.btn,
html[data-theme="dark"] body input[type="submit"] {
    background-color:#111827 !important;
    color:var(--st-body) !important;
    border-color:var(--st-line-strong) !important;
}
html[data-theme] body .btn-primary,
html[data-theme] body .task-submit-btn,
html[data-theme] body .claim-primary-action,
html[data-theme] body .task-poster-generate,
html[data-theme] body .profile-actions .btn:first-child {
    background-image:none !important;
    background-color:var(--st-primary) !important;
    color:#fff !important;
    border-color:var(--st-primary) !important;
}
html[data-theme] body .btn-outline {
    background-color:#fff !important;
    color:var(--st-body) !important;
    border-color:var(--st-line-strong) !important;
}
html[data-theme] body .btn-success { background-color:#16a34a !important; color:#fff !important; border-color:#16a34a !important; }
html[data-theme] body .btn-danger { background-color:#dc2626 !important; color:#fff !important; border-color:#dc2626 !important; }
html[data-theme] body .btn-warning { background-color:var(--st-accent) !important; color:#fff !important; border-color:var(--st-accent) !important; }

/* 主体容器 */
html[data-theme] body .auth-wrapper,
html[data-theme] body .profile-v2,
html[data-theme] body .profile-v2-banner { background-image:none !important; }
html[data-theme] body .auth-wrapper { background-color:var(--st-canvas) !important; }
html[data-theme] body .profile-v2-banner {
    background-color:var(--st-primary-soft) !important;
    border:1px solid var(--st-primary-border) !important;
}
html[data-theme] body .profile-hero {
    background-image:none !important;
    background-color:var(--st-primary) !important;
    color:#fff !important;
}
html[data-theme] body .profile-v2:before,
html[data-theme] body .profile-v2:after,
html[data-theme] body .profile-page:after,
html[data-theme] body #app:has(.profile-hero):after,
html[data-theme] body .auth-wrapper:before,
html[data-theme] body .auth-wrapper:after { display:none !important; }

/* 运营横幅 / 工具图标 */
html[data-theme] body .referral-banner {
    background-image:none !important;
    background-color:var(--st-primary) !important;
    border-radius:var(--st-radius) !important;
    box-shadow:var(--st-shadow-sm) !important;
}
html[data-theme] body .referral-task-entry-card,
html[data-theme] body .claim-guide-banner,
html[data-theme] body .claim-guide-banner.lead {
    background-image:none !important;
    background-color:var(--st-primary-soft) !important;
    border:1px solid var(--st-primary-border) !important;
    color:var(--st-primary-hover) !important;
    border-radius:var(--st-radius) !important;
}
html[data-theme] body .home-tool-icon {
    background-image:none !important;
    background-color:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
    box-shadow:none !important;
}
html[data-theme] body .home-tool:nth-child(2) .home-tool-icon { background-color:#ecfdf5 !important; color:#059669 !important; }
html[data-theme] body .home-tool:nth-child(3) .home-tool-icon { background-color:var(--st-accent-soft) !important; color:#ea580c !important; }
html[data-theme] body .home-tool:nth-child(4) .home-tool-icon { background-color:#f3f4f6 !important; color:#475569 !important; }

/* 任务执行 / 客服面板 */
html[data-theme] body #taskExecution .task-execution-title {
    background-image:none !important;
    background-color:#fff !important;
    color:var(--st-ink) !important;
    border-bottom:1px solid var(--st-line) !important;
    border-radius:0 !important;
}
html[data-theme] body #taskExecution .task-execution-title h3 { color:var(--st-ink) !important; }
html[data-theme] body #taskExecution .next-action,
html[data-theme] body .next-action {
    background-image:none !important;
    background-color:var(--st-primary-soft) !important;
    border-left:3px solid var(--st-primary) !important;
    color:var(--st-primary-hover) !important;
}
html[data-theme] body .support-panel { background-color:#fff !important; background-image:none !important; }
html[data-theme] body .support-panel > header,
html[data-theme] body #supportWidget .support-panel > header {
    background-image:none !important;
    background-color:#fff !important;
    color:var(--st-ink) !important;
    border-bottom:1px solid var(--st-line) !important;
}

/* 分类筛选 / 记录页 */
html[data-theme] body #catTabs.task-tabs button:first-child,
html[data-theme] body #catTabs.task-tabs button.active {
    background-image:none !important;
    background-color:var(--st-primary) !important;
    color:#fff !important;
}
html[data-theme] body .history-summary {
    background-image:none !important;
    background-color:var(--st-primary-soft) !important;
    border:1px solid var(--st-primary-border) !important;
    color:var(--st-primary-hover) !important;
}
html[data-theme] body .history-summary:before,
html[data-theme] body .history-summary:after { border-color:rgba(37,99,235,.08) !important; }
html[data-theme] body .history-task-icon {
    background-image:none !important;
    background-color:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
}
html[data-theme] body .history-progress-compact span {
    background-image:none !important;
    background-color:var(--st-primary) !important;
}

/* 素材缩略图与名次徽章 */
html[data-theme] body .mat-thumb,
html[data-theme] body .lead-task-card .mat-thumb {
    background-image:none !important;
    background-color:#f3f4f6 !important;
    color:var(--st-muted) !important;
}
html[data-theme] body .global-rank-row:nth-child(1) > b:before {
    background:#f59e0b !important;
    border-color:#fbbf24 !important;
    color:#fff !important;
}
html[data-theme] body .global-rank-row:nth-child(2) > b:before {
    background:#9ca3af !important;
    border-color:#d1d5db !important;
    color:#fff !important;
}
html[data-theme] body .global-rank-row:nth-child(3) > b:before {
    background:#d97706 !important;
    border-color:#f59e0b !important;
    color:#fff !important;
}

/* 旧内联样式残留 */
.navbar-brand span {
    background:none !important;
    -webkit-text-fill-color:currentColor !important;
    color:var(--st-ink) !important;
}
.btn-primary::after, .mat-card.claimed::after { display:none !important; }
.wd-amount {
    background:none !important;
    -webkit-text-fill-color:currentColor !important;
    color:var(--st-primary) !important;
}
.quick-item i, .empty-state i,
.stat-icon, .stat-icon.purple, .stat-icon.green, .stat-icon.orange, .stat-icon.blue {
    background-image:none !important;
    background-color:var(--st-primary-soft) !important;
    color:var(--st-primary) !important;
    box-shadow:none !important;
}
.divider { background:var(--st-line) !important; }
.task-hero {
    background-image:none !important;
    background-color:var(--st-primary) !important;
    color:#fff !important;
    border-radius:var(--st-radius) !important;
}

/* ---------- 响应式 ---------- */
@media (max-width:1120px) {
    .navbar { padding:0 16px !important; }
    .main-content { width:calc(100% - 32px) !important; padding:76px 0 96px !important; }
}
@media (max-width:760px) {
    .navbar { height:58px !important; }
    .main-content { padding:72px 14px 100px !important; }
    .card { padding:16px !important; border-radius:var(--st-radius) !important; }
    .profile-v2 { padding:0 0 96px !important; }
}
@media (max-width:480px) {
    .auth-card { padding:22px 18px !important; border-radius:var(--st-radius) !important; }
}
