Files
halo-dark-mode-plugin/ui/src/styles/overrides/plugin-pages.css
T

383 lines
12 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* ============================================================
Halo Dark Mode — 第三方插件页面覆盖
针对用户服务器上已安装插件的内部 UI 残留。
⚠️ 这些插件使用 Vue scoped 样式 ([data-v-xxx])
需用 !important 才能稳定覆盖。
============================================================ */
[data-halo-theme="dark"] {
/* ===== 装备管理插件 (halo-plugin-equipments) ===== */
.equipments .group,
.equipment-group .group,
main .group {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
color: var(--halo-text-primary) !important;
}
.equipment-card,
.equipment-card__name,
.equipment-card__desc,
[class*="equipment"] {
color: var(--halo-text-primary) !important;
}
/* ===== 日程日历插件 (plugin-calendar) ===== */
.week-picker {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
}
.week-picker select,
.week-picker input,
.week-picker button {
background-color: var(--halo-bg-input) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-input) !important;
}
.day-column__body {
background-color: var(--halo-bg-content) !important;
border-color: var(--halo-border-light) !important;
}
.day-column,
.calendar-column,
[class*="day-column"] {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
}
[class*="calendar"] th,
[class*="calendar"] td {
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
/* ===== 心愿便签插件 (plugin-wishboard) ===== */
.ah-body {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
}
.wb-s-card {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
.wb-s-card-title {
color: var(--halo-text-primary) !important;
}
.wb-s-card-count {
color: var(--halo-accent-primary) !important;
}
.wb-s-list,
.wb-s-list-item,
[class*="wb-s-"] {
color: var(--halo-text-primary) !important;
}
/* ===== 瞬间插件 (plugin-moments) ===== */
.moment-editor,
.editor-main,
.moment-editor .card,
.editor-main .card {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
.moments-content .card,
.moments-content .preview,
.moment-preview,
.moment-card,
[class*="moment-"] .card {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
}
.moment-author-name,
.moment-content,
.moment-time,
[class*="moment"] p,
[class*="moment"] span,
[class*="moment"] div {
color: var(--halo-text-primary) !important;
}
.moment-editor input,
.moment-editor textarea,
.editor-main input,
.editor-main textarea {
background-color: var(--halo-bg-input) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-input) !important;
}
/* ===== 抽奖插件 (plugin-lottery) ===== */
[class*="lottery"] {
color: var(--halo-text-primary) !important;
}
/* ===== 存储工具箱 (plugin-storage-toolkit) ===== */
.toolkit-wrapper,
.st-scope {
background-color: var(--halo-bg-content) !important;
color: var(--halo-text-primary) !important;
}
.st-pill-tabs,
.stat-card.st-card,
.panel-card.st-card,
.st-card {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
.st-card h3,
.st-card h4,
.st-card p,
.st-card span,
.st-card li,
[class*="st-"] .title,
[class*="st-"] .name {
color: var(--halo-text-primary) !important;
}
[class*="st-"] {
color: var(--halo-text-primary) !important;
}
/* ===== 应用市场已安装 (Halo 内置 app-store) ===== */
.tabbar-wrapper,
.tabbar-outline,
[class*="tabbar"] {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
.tabbar-item,
[class*="tabbar"] a,
[class*="tabbar"] span {
color: var(--halo-text-primary) !important;
}
.tabbar-item:hover,
[class*="tabbar"] a:hover {
background-color: var(--halo-bg-active) !important;
color: var(--halo-text-primary) !important;
}
/* 已安装应用页的筛选和卡片 */
.app-card,
.app-card-header,
.app-card-body,
[class*="app-card"] {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
.app-card .title,
.app-card .name,
.app-card .desc,
[class*="app-card"] h3,
[class*="app-card"] p {
color: var(--halo-text-primary) !important;
}
/* ===== 文档/示例页面 (docs__box) ===== */
.docs__box {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
.docs__box h3,
.docs__box h4,
.docs__box p,
.docs__box li,
.docs__box a {
color: var(--halo-text-primary) !important;
}
.docs__box a:hover {
color: var(--halo-text-link) !important;
}
/* ===== 通用:任何插件页面的亮色卡片兜底 ===== */
main .bg-gray-50,
main .bg-gray-100,
main .bg-gray-200 {
background-color: var(--halo-bg-hover) !important;
}
main .bg-white {
background-color: var(--halo-bg-card) !important;
}
/* ===== 应用卡片内筛选 tabUnoCSS hash 类,用上下文定位) ===== */
.card-wrapper .card-header [class*="i-"],
.card-header [class*="i-"],
.card-wrapper .card-body [class*="i-"],
.card-body [class*="i-"],
[class*="app-card"] [class*="i-"] {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-primary) !important;
}
.card-wrapper .card-header [class*="i-"]:hover,
.card-header [class*="i-"]:hover,
.card-wrapper .card-body [class*="i-"]:hover,
.card-body [class*="i-"]:hover {
background-color: var(--halo-bg-active) !important;
color: var(--halo-text-primary) !important;
}
/* ===== 存储工具箱表格表头 (col-*) ===== */
.col-name,
.col-count,
.col-size,
.col-percent,
[class*="col-"] {
background-color: var(--halo-table-header-bg) !important;
color: var(--halo-text-secondary) !important;
}
/* ===== 侧边栏用户资料(Halo Pro 特有) ===== */
.sidebar__profile .user-profile {
background-color: transparent !important;
}
.user-profile__name {
color: var(--halo-text-primary) !important;
}
.user-profile__roles .tag-default,
.user-profile__roles .tag-wrapper {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-secondary) !important;
}
.user-profile__action-button {
color: var(--halo-text-secondary) !important;
background-color: transparent !important;
}
.user-profile__action-button:hover {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-primary) !important;
}
}
/* ===== AstraHub / 心愿便签(共用 ah-* UI ===== */
html[data-halo-theme="dark"] .ah-card,
html[data-halo-theme="dark"] .ah-topbar,
html[data-halo-theme="dark"] .ah-topbar-search,
html[data-halo-theme="dark"] .ah-float-nav {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .ah-topbar-search {
background-color: var(--halo-bg-input) !important;
}
html[data-halo-theme="dark"] .ah-topbar-brand,
html[data-halo-theme="dark"] .planet-hero-title {
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .ah-topbar-search input {
background-color: transparent !important;
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .planet-links-more {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-secondary) !important;
}
/* ===== RSS 订阅(links/rss ===== */
html[data-halo-theme="dark"] .subscription-panel,
html[data-halo-theme="dark"] .feed-main,
html[data-halo-theme="dark"] .feed-toolbar,
html[data-halo-theme="dark"] .feed-stream,
html[data-halo-theme="dark"] .feed-stream__footer {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .feed-status-tabs {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-secondary) !important;
}
html[data-halo-theme="dark"] .feed-brief__title,
html[data-halo-theme="dark"] .feed-stream p,
html[data-halo-theme="dark"] .feed-stream a,
html[data-halo-theme="dark"] .subscription-panel a,
html[data-halo-theme="dark"] .subscription-panel span {
color: var(--halo-text-primary) !important;
}
/* ===== 私密文章插件 ===== */
html[data-halo-theme="dark"] .focus-card,
html[data-halo-theme="dark"] .overview-card,
html[data-halo-theme="dark"] .list-card,
html[data-halo-theme="dark"] .empty-state {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .overview-card h2,
html[data-halo-theme="dark"] .page-shell h2,
html[data-halo-theme="dark"] .overview-stats dd,
html[data-halo-theme="dark"] .overview-stats dt {
color: var(--halo-text-primary) !important;
}
/* ===== AI 评论自动处理插件 ===== */
html[data-halo-theme="dark"] .settings-container,
html[data-halo-theme="dark"] .setting-panel,
html[data-halo-theme="dark"] .tabs-wrap,
html[data-halo-theme="dark"] .sidebar-card,
html[data-halo-theme="dark"] .list-empty,
html[data-halo-theme="dark"] .reply-card {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .form-row,
html[data-halo-theme="dark"] .list-col,
html[data-halo-theme="dark"] .panel-header,
html[data-halo-theme="dark"] .card-footer {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .section-header__text h3,
html[data-halo-theme="dark"] .sidebar-header h4,
html[data-halo-theme="dark"] .panel-header h3,
html[data-halo-theme="dark"] .reply-card h3 {
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .wake-word-tag {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-secondary) !important;
}
/* ===== 数据工坊 / 代码注入器等工具页语义容器 ===== */
html[data-halo-theme="dark"] .data-studio-card-body,
html[data-halo-theme="dark"] .injector-view-card-body,
html[data-halo-theme="dark"] .injector-editor-container {
background-color: var(--halo-bg-card) !important;
border-color: var(--halo-border-base) !important;
color: var(--halo-text-primary) !important;
}
/* ===== 示例插件页 ===== */
html[data-halo-theme="dark"] main section#plugin-starter {
background-color: var(--halo-bg-body) !important;
color: var(--halo-text-primary) !important;
}
/* ===== 友链卡片徽章 ===== */
html[data-halo-theme="dark"] .link-badge {
background-color: var(--halo-bg-hover) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
/* ===== 日程日历插件(time-column 布局) ===== */
html[data-halo-theme="dark"] .time-column__header,
html[data-halo-theme="dark"] .time-column__body,
html[data-halo-theme="dark"] [class*="time-column"] {
background-color: var(--halo-bg-card) !important;
color: var(--halo-text-primary) !important;
border-color: var(--halo-border-base) !important;
}
html[data-halo-theme="dark"] .entry-card-header__title {
color: var(--halo-text-primary) !important;
}
/* ===== 存储工具箱补充类 ===== */
html[data-halo-theme="dark"] .stat-value,
html[data-halo-theme="dark"] .stat-card .card-title,
html[data-halo-theme="dark"] .panel-card .card-title {
color: var(--halo-text-primary) !important;
}
html[data-halo-theme="dark"] .bar-track {
background-color: var(--halo-bg-disabled) !important;
}