MediaWiki:Common.css:修订间差异
MediaWiki界面页面
更多操作
无编辑摘要 |
无编辑摘要 |
||
| 第1,707行: | 第1,707行: | ||
} | } | ||
/* ===== | /* ============================================= | ||
.bl- | Hero 内嵌搜索栏 | ||
============================================= */ | |||
.bl-hero-search { | |||
padding: 0 36px 8px; | |||
} | } | ||
.bl- | .bl-hero-search-form { | ||
display: flex; | display: flex; | ||
gap: 10px; | |||
align-items: center; | align-items: center; | ||
background: rgba(255, 255, 255, 0.85); | |||
border: 1px solid #c7d2fe; | |||
background: | |||
border: 1px solid # | |||
border-radius: 14px; | border-radius: 14px; | ||
padding: 6px 6px 6px 20px; | |||
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04); | |||
transition: all 0.2s ease; | transition: all 0.2s ease; | ||
backdrop-filter: blur(8px); | |||
} | } | ||
.bl- | .bl-hero-search-form:focus-within { | ||
border-color: #6366f1; | border-color: #6366f1; | ||
box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15); | |||
} | } | ||
.bl- | .bl-hero-search-input { | ||
font-size: | flex: 1; | ||
color: # | border: none; | ||
outline: none; | |||
font-size: 0.95em; | |||
padding: 10px 0; | |||
color: #374151; | |||
background: transparent; | |||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; | |||
} | } | ||
.bl- | .bl-hero-search-input::placeholder { | ||
color: #9ca3af; | |||
} | } | ||
.bl- | .bl-hero-search-btn { | ||
font-size: 0. | display: inline-flex; | ||
align-items: center; | |||
gap: 6px; | |||
padding: 10px 22px; | |||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | |||
color: #fff; | |||
border: none; | |||
border-radius: 10px; | |||
font-size: 0.9em; | |||
font-weight: 600; | font-weight: 600; | ||
cursor: pointer; | |||
transition: all 0.2s ease; | |||
white-space: nowrap; | |||
} | } | ||
.bl- | .bl-hero-search-btn:hover { | ||
color: # | transform: translateY(-1px); | ||
box-shadow: 0 4px 12px rgba(99, 102, 241, 0.35); | |||
} | |||
.bl-hero-create-btn { | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 6px; | |||
padding: 10px 18px; | |||
background: rgba(255, 255, 255, 0.9); | |||
color: #16a34a; | |||
border: 1px solid #bbf7d0; | |||
border-radius: 10px; | |||
font-size: 0.9em; | |||
font-weight: 600; | |||
text-decoration: none !important; | text-decoration: none !important; | ||
transition: all 0.2s ease; | |||
white-space: nowrap; | |||
} | } | ||
.bl-hero-create-btn:hover { | |||
.bl- | background: #f0fdf4; | ||
transform: translateY(-1px); | |||
} | } | ||
.bl- | /* ============================================= | ||
flex: | Hero 内嵌统计栏 | ||
============================================= */ | |||
.bl-hero-stats { | |||
display: flex; | |||
gap: 8px; | |||
padding: 12px 36px 4px; | |||
flex-wrap: wrap; | |||
} | } | ||
.bl- | .bl-hero-stat { | ||
flex: 0 0 | display: flex; | ||
align-items: center; | |||
gap: 8px; | |||
padding: 8px 14px; | |||
background: rgba(255, 255, 255, 0.6); | |||
border: 1px solid rgba(199, 210, 254, 0.5); | |||
border-radius: 10px; | |||
flex: 1 0 auto; | |||
min-width: 90px; | |||
max-width: 160px; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl-hero-stat:hover { | |||
.bl- | background: rgba(255, 255, 255, 0.85); | ||
border-color: #6366f1; | |||
background: | |||
} | } | ||
.bl- | .bl-hero-stat-icon { | ||
font-size: 1.2em; | |||
color: #6366f1; | |||
flex: 0 0 auto; | |||
line-height: 1; | |||
} | } | ||
.bl- | .bl-hero-stat-info { | ||
display: flex; | display: flex; | ||
flex-direction: column; | |||
gap: 0; | |||
} | } | ||
.bl- | .bl-hero-stat-number { | ||
font-size: 1em; | font-size: 1em; | ||
font-weight: | font-weight: 800; | ||
color: #1f2937; | color: #1f2937; | ||
line-height: 1.2; | |||
} | } | ||
.bl- | .bl-hero-stat-number a { | ||
color: #1f2937 !important; | |||
text-decoration: none !important; | |||
color: # | |||
text- | |||
} | } | ||
.bl- | .bl-hero-stat-number a:hover { | ||
color: #6366f1 !important; | |||
} | } | ||
.bl-hero-stat-label { | |||
.bl- | font-size: 0.65em; | ||
color: #9ca3af; | |||
letter-spacing: 0.03em; | |||
text-transform: uppercase; | |||
text- | |||
} | } | ||
/* ============================================= | |||
.bl- | Hero 内嵌快捷入口 | ||
============================================= */ | |||
.bl-hero-links { | |||
display: flex; | |||
gap: 6px; | |||
padding: 12px 36px 28px; | |||
flex-wrap: wrap; | |||
} | } | ||
.bl-hero-link { | |||
.bl- | display: inline-flex; | ||
align-items: center; | |||
padding: 0; | gap: 6px; | ||
padding: 8px 16px; | |||
background: rgba(255, 255, 255, 0.5); | |||
border: 1px solid rgba(199, 210, 254, 0.4); | |||
border-radius: 10px; | |||
font-size: 0.85em; | |||
font-weight: 600; | |||
color: #4b5563; | |||
transition: all 0.2s ease; | |||
} | |||
.bl-hero-link:hover { | |||
background: rgba(255, 255, 255, 0.85); | |||
border-color: #6366f1; | |||
transform: translateY(-2px); | |||
} | } | ||
.bl- | .bl-hero-link i { | ||
font-size: 1.15em; | |||
color: #6366f1; | |||
} | } | ||
.bl- | .bl-hero-link a { | ||
color: #4b5563 !important; | |||
text-decoration: none !important; | |||
} | } | ||
.bl- | .bl-hero-link a:hover { | ||
color: #4f46e5 !important; | |||
color: # | |||
} | } | ||
/* ===== 快捷入口栏 ===== */ | |||
.bl-quick-bar { | |||
display: flex; | |||
/* ===== | |||
.bl- | |||
display: | |||
gap: 12px; | gap: 12px; | ||
margin-bottom: 28px; | |||
justify-content: center; | |||
flex-wrap: wrap; | |||
} | } | ||
.bl- | .bl-quick-item { | ||
display: flex; | display: flex; | ||
flex-direction: column; | flex-direction: column; | ||
align-items: center; | align-items: center; | ||
gap: 6px; | gap: 6px; | ||
padding: 18px | padding: 14px 18px; | ||
background: # | background: #fff; | ||
border: 1px solid #e5e7eb; | border: 1px solid #e5e7eb; | ||
border-radius: 14px; | border-radius: 14px; | ||
min-width: 80px; | |||
transition: all 0.2s ease; | transition: all 0.2s ease; | ||
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04); | |||
} | } | ||
.bl- | .bl-quick-item:hover { | ||
transform: translateY(-4px); | |||
box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08); | |||
border-color: #6366f1; | border-color: #6366f1; | ||
} | } | ||
.bl- | .bl-quick-item i { | ||
font-size: 1.5em; | |||
color: #6366f1; | |||
transition: transform 0.2s ease; | |||
transition: | |||
} | } | ||
.bl- | .bl-quick-item:hover i { | ||
transform: scale(1.15); | |||
} | } | ||
.bl- | .bl-quick-item span { | ||
font-size: 0.82em; | |||
font-weight: 600; | |||
color: #374151; | |||
} | } | ||
.bl- | .bl-quick-item span a { | ||
color: #374151 !important; | |||
text-decoration: none !important; | |||
color: # | |||
} | } | ||
.bl- | /* ===== 主体布局 ===== */ | ||
.bl-grid { | |||
display: flex; | |||
gap: 24px; | |||
align-items: flex-start; | |||
} | } | ||
.bl- | .bl-maincol { | ||
flex: 1 1 auto; | |||
min-width: 0; | |||
} | } | ||
.bl- | .bl-sidecol { | ||
flex: 0 0 320px; | |||
} | } | ||
/* | /* ===== 卡片 ===== */ | ||
.bl-box { | |||
margin-bottom: 22px; | |||
background: #fff; | |||
border: 1px solid #e5e7eb; | |||
border-radius: 16px; | |||
overflow: hidden; | |||
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04); | |||
} | } | ||
.bl-box-header { | |||
display: flex; | |||
align-items: center; | |||
gap: 10px; | |||
padding: 14px 18px; | |||
background: #f9fafb; | |||
border-bottom: 1px solid #e5e7eb; | |||
} | } | ||
.bl-box-icon { | |||
.bl- | font-size: 1.2em; | ||
color: #6366f1; | |||
display: flex; | |||
align-items: center; | |||
} | } | ||
.bl- | .bl-box-title { | ||
flex: 1; | |||
font-size: 1em; | |||
font-weight: 700; | |||
color: #1f2937; | |||
letter-spacing: 0.02em; | |||
font-weight: | |||
} | } | ||
.bl- | .bl-box-badge { | ||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | font-size: 0.65em; | ||
font-weight: 700; | |||
transform: | letter-spacing: 0.08em; | ||
padding: 3px 10px; | |||
border-radius: 20px; | |||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | |||
color: #fff; | |||
text-transform: uppercase; | |||
} | } | ||
.bl- | .bl-box-body { | ||
padding: 16px 18px; | |||
} | } | ||
.bl- | /* ===== 地图容器 ===== */ | ||
.bl-map-wrap { | |||
padding: 12px; | |||
background: #f9fafb; | |||
border: 1px dashed #d1d5db; | |||
border-radius: 10px; | |||
text-align: center; | |||
min-height: 320px; | |||
} | } | ||
.bl-map-wrap img, | |||
.bl- | .bl-map-wrap svg { | ||
max-width: 100%; | |||
height: auto; | |||
} | } | ||
.bl- | /* ===== 冷知识列表 ===== */ | ||
.bl-list-trivia { | |||
list-style: none; | |||
padding: 0; | |||
padding: | margin: 0; | ||
} | } | ||
.bl- | .bl-list-trivia li { | ||
background: | display: flex; | ||
border- | gap: 14px; | ||
padding: 14px 0; | |||
box-shadow: | border-bottom: 1px solid #f3f4f6; | ||
margin-bottom: 0; | |||
background: transparent !important; | |||
border-left: 0 !important; | |||
border-right: 0 !important; | |||
border-top: 0 !important; | |||
box-shadow: none !important; | |||
} | } | ||
.bl- | .bl-list-trivia li:last-child { | ||
border-bottom: none; | |||
} | } | ||
.bl- | .bl-trivia-marker { | ||
flex: 0 0 32px; | |||
height: 32px; | |||
color: # | display: flex; | ||
align-items: center; | |||
justify-content: center; | |||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | |||
color: #fff; | |||
font-size: 0.75em; | |||
font-weight: 800; | |||
border-radius: 10px; | |||
margin-top: 2px; | |||
} | } | ||
.bl- | .bl-trivia-text { | ||
color: # | flex: 1; | ||
font-size: 0.92em; | |||
line-height: 1.7; | |||
color: #4b5563; | |||
} | } | ||
.bl- | /* ===== 管理组名单 ===== */ | ||
.bl-team-grid { | |||
display: grid; | |||
grid-template-columns: repeat(4, 1fr); | |||
gap: 12px; | |||
} | } | ||
.bl-team-card { | |||
.bl- | |||
display: flex; | display: flex; | ||
flex-direction: column; | flex-direction: column; | ||
align-items: center; | |||
text-align: center; | text-align: center; | ||
border-radius: | gap: 6px; | ||
padding: 18px 10px 14px; | |||
background: #f9fafb; | |||
border: 1px solid #e5e7eb; | |||
border-radius: 14px; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl- | .bl-team-card:hover { | ||
border-color: #6366f1; | |||
box-shadow: 0 4px 20px rgba(99, 102, 241, 0.12); | |||
transform: translateY(-2px); | |||
} | } | ||
.bl- | .bl-team-avatar { | ||
width: 64px; | |||
height: 64px; | |||
border-radius: 50%; | |||
overflow: hidden; | |||
border: 2px solid #e5e7eb; | |||
flex-shrink: 0; | |||
transition: border-color 0.2s ease; | |||
} | } | ||
.bl- | .bl-team-card:hover .bl-team-avatar { | ||
color: # | border-color: #6366f1; | ||
} | } | ||
.bl- | .bl-team-avatar img { | ||
width: 100%; | |||
height: 100%; | |||
object-fit: cover; | |||
display: block; | |||
} | } | ||
.bl- | .bl-team-name { | ||
font-size: 0. | font-size: 0.92em; | ||
line-height: 1. | font-weight: 700; | ||
color: #1f2937; | |||
margin-top: 4px; | |||
line-height: 1.3; | |||
word-break: break-word; | |||
} | } | ||
.bl- | .bl-team-tag { | ||
font-size: 0. | font-size: 0.7em; | ||
font-weight: 600; | font-weight: 600; | ||
letter-spacing: 0.03em; | |||
padding: 2px 10px; | |||
border-radius: 6px; | |||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | |||
color: #fff; | |||
white-space: nowrap; | |||
} | } | ||
.bl- | .bl-team-social { | ||
display: inline-flex; | |||
align-items: center; | |||
gap: 3px; | |||
margin-top: 2px; | |||
font-size: 0.78em; | |||
color: #4f46e5 !important; | color: #4f46e5 !important; | ||
text-decoration: none !important; | text-decoration: none !important; | ||
font-weight: 600; | |||
} | } | ||
.bl- | .bl-team-social:hover { | ||
color: #6366f1 !important; | color: #6366f1 !important; | ||
text-decoration: underline !important; | text-decoration: underline !important; | ||
} | } | ||
/* | /* 管理组响应式 */ | ||
@media (max-width: 980px) { | |||
.bl-team-grid { | |||
.bl- | grid-template-columns: repeat(2, 1fr); | ||
} | |||
} | } | ||
@media (max-width: 640px) { | |||
.bl- | .bl-team-grid { | ||
grid-template-columns: 1fr; | |||
} | |||
} | } | ||
.bl- | /* ===== 导航网格 ===== */ | ||
.bl-navgrid { | |||
display: grid; | |||
grid-template-columns: 1fr 1fr; | |||
gap: 10px; | |||
} | } | ||
.bl-navitem { | |||
.bl- | padding: 12px 14px; | ||
background: #f9fafb; | |||
border: 1px solid #e5e7eb; | |||
border-radius: 10px; | |||
text-align: center; | |||
font-weight: 600; | |||
font-size: 0.92em; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl- | .bl-navitem:hover { | ||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | |||
border-color: #6366f1; | |||
transform: translateY(-2px); | |||
box-shadow: 0 6px 20px rgba(99, 102, 241, 0.2); | |||
} | } | ||
.bl-navitem a { | |||
. | display: block; | ||
color: #374151 !important; | |||
text-decoration: none !important; | |||
} | } | ||
.bl-navitem:hover a { | |||
color: #fff !important; | |||
} | |||
/* | /* ===== 推荐阅读列表 ===== */ | ||
.bl-rec-list { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 10px; | |||
} | } | ||
.bl-rec-item { | |||
display: flex; | |||
background: | align-items: center; | ||
border- | gap: 12px; | ||
padding: 10px 12px; | |||
background: #f9fafb; | |||
border: 1px solid #e5e7eb; | |||
border-radius: 10px; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl-rec-item:hover { | |||
background: rgba( | background: #fff; | ||
border-color: #6366f1; | |||
transform: translateX(4px); | |||
box-shadow: 0 4px 16px rgba(99, 102, 241, 0.1); | |||
} | } | ||
.bl-rec-text { | |||
flex: 1; | |||
min-width: 0; | |||
} | } | ||
.bl-rec-name { | |||
font-weight: 700; | |||
font-size: 0.92em; | |||
color: #374151; | |||
} | } | ||
.bl-rec-name a { | |||
color: | color: #374151 !important; | ||
text-decoration: none !important; | |||
} | } | ||
.bl-rec-name a:hover { | |||
color: #6366f1 !important; | |||
color: | |||
} | } | ||
.bl-rec-desc { | |||
font-size: 0.78em; | |||
color: #9ca3af; | |||
margin-top: 2px; | |||
} | } | ||
/* | /* ===== 典范条目 ===== */ | ||
.bl-featured { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 10px; | |||
} | } | ||
.bl-featured-img { | |||
text-align: center; | |||
border-radius: 10px; | |||
overflow: hidden; | |||
} | } | ||
.bl-featured-img img { | |||
width: 100%; | |||
border- | height: auto; | ||
border-radius: 10px; | |||
display: block; | |||
} | } | ||
.bl-featured-title { | |||
color: | font-size: 1.05em; | ||
font-weight: 700; | |||
color: #1f2937; | |||
line-height: 1.4; | |||
} | } | ||
.bl-featured-title a { | |||
color: #1f2937 !important; | |||
text-decoration: none !important; | |||
} | } | ||
.bl-featured-title a:hover { | |||
color: #6366f1 !important; | |||
text-decoration: underline !important; | |||
} | } | ||
.bl-featured-desc { | |||
font-size: 0.85em; | |||
color: | line-height: 1.7; | ||
color: #4b5563; | |||
} | } | ||
.bl-featured-link { | |||
font-size: 0.85em; | |||
font-weight: 600; | |||
} | } | ||
.bl-featured-link a { | |||
color: | color: #4f46e5 !important; | ||
text-decoration: none !important; | |||
} | } | ||
.bl-featured-link a:hover { | |||
color: #6366f1 !important; | |||
text-decoration: underline !important; | |||
color: | |||
} | } | ||
/* ===== 纯文本说明 ===== */ | |||
.bl-plaintext, | |||
.bl-plaintext p, | |||
.bl-box-body p { | |||
background: transparent !important; | |||
border: 0 !important; | |||
box-shadow: none !important; | |||
outline: 0 !important; | |||
padding: 0 !important; | |||
margin: 0 0 0.8em 0; | |||
color: #4b5563; | |||
line-height: 1.7; | |||
display: block; | |||
} | } | ||
/* ===== 通用列表 ===== */ | |||
.bl-list { | |||
margin: 0; | |||
padding-left: 1.35em; | |||
} | } | ||
.bl-list li { | |||
margin-bottom: 0.55em; | |||
background: transparent !important; | |||
border: 0 !important; | |||
box-shadow: none !important; | |||
} | } | ||
/* ===== 页脚导航 ===== */ | |||
.bl-footer-nav { | |||
margin-top: 24px; | |||
} | } | ||
.bl-footer-nav > * + * { | |||
margin-top: 14px; | |||
} | } | ||
/* | /* ===== 隐藏首页标题 ===== */ | ||
.page-Main_Page #firstHeading, | |||
.page-首页 #firstHeading { | |||
display: none; | |||
} | } | ||
/* | /* ============================================= | ||
深色模式兼容(补充 Citizen.css 未覆盖的新组件) | |||
============================================= */ | |||
/* ----- 手动深色模式 (night) ----- */ | |||
html.skin-theme-clientpref-night .bl- | /* Hero 描述文字 */ | ||
html.skin-theme-clientpref-night .bl-hero-desc { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | } | ||
html.skin-theme-clientpref-night .bl- | /* Hero 按钮 */ | ||
border-color: rgba(255, 255, 255, 0. | html.skin-theme-clientpref-night .bl-btn-secondary { | ||
background: rgba(255, 255, 255, 0.08) !important; | |||
border-color: rgba(255, 255, 255, 0.2) !important; | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | } | ||
html.skin-theme-clientpref-night .bl- | html.skin-theme-clientpref-night .bl-btn-secondary:hover { | ||
background: rgba(255, 255, 255, 0.15) !important; | |||
} | } | ||
html.skin-theme-clientpref-night .bl- | /* 统计图标 */ | ||
color: var(--color- | html.skin-theme-clientpref-night .bl-stat-icon { | ||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
/* 快捷入口栏 */ | |||
html.skin-theme-clientpref-night .bl-quick-item { | |||
background: var(--color-surface-1, #202122) !important; | |||
border-color: rgba(255, 255, 255, 0.1) !important; | |||
} | } | ||
html.skin-theme-clientpref-night .bl- | html.skin-theme-clientpref-night .bl-quick-item i { | ||
color: var(--color-primary, #6ba4ff) !important; | color: var(--color-primary, #6ba4ff) !important; | ||
} | } | ||
html.skin-theme-clientpref-night .bl- | html.skin-theme-clientpref-night .bl-quick-item span, | ||
color: var(--color- | html.skin-theme-clientpref-night .bl-quick-item span a { | ||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | } | ||
html.skin-theme-clientpref-night .bl-quick-item:hover { | |||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
/* 卡片头部 */ | |||
html.skin-theme-clientpref-night .bl-box-header { | |||
background: var(--color-surface-2, #2d2e2f) !important; | |||
border-bottom-color: rgba(255, 255, 255, 0.1) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-box-icon { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
/* 冷知识列表 */ | |||
html.skin-theme-clientpref-night .bl-list-trivia li { | |||
border-bottom-color: rgba(255, 255, 255, 0.08) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-trivia-text { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | |||
/* 推荐阅读列表 */ | |||
html.skin-theme-clientpref-night .bl-rec-item { | |||
} | background: var(--color-surface-1, #202122) !important; | ||
border-color: rgba(255, 255, 255, 0.08) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-rec-item:hover { | |||
background: var(--color-surface-2, #2d2e2f) !important; | |||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-rec-name, | |||
html.skin-theme-clientpref-night .bl-rec-name a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-rec-name a:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-rec-desc { | |||
color: var(--color-base-30, #a0a0a0) !important; | |||
} | |||
/* 典范条目 */ | |||
html.skin-theme-clientpref-night .bl-featured-title, | |||
html.skin-theme-clientpref-night .bl-featured-title a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-featured-title a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-featured-desc { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-featured-link a { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-featured-link a:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
/* 纯文本说明 */ | |||
html.skin-theme-clientpref-night .bl-plaintext, | |||
html.skin-theme-clientpref-night .bl-plaintext p, | |||
html.skin-theme-clientpref-night .bl-box-body p { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | |||
/* 地图容器 */ | |||
html.skin-theme-clientpref-night .bl-map-wrap { | |||
background: var(--color-surface-1, #202122) !important; | |||
border-color: rgba(255, 255, 255, 0.15) !important; | |||
} | } | ||
/* 管理组名单 */ | |||
html.skin-theme-clientpref-night .bl-team-card { | |||
} | background: var(--color-surface-1, #202122) !important; | ||
border-color: rgba(255, 255, 255, 0.1) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-team-card:hover { | |||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-team-avatar { | |||
border-color: rgba(255, 255, 255, 0.15) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-team-card:hover .bl-team-avatar { | |||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-team-name { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref- | html.skin-theme-clientpref-night .bl-team-social { | ||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-team-social:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
/* ----- 系统深色模式 (os) ----- */ | |||
@media (prefers-color-scheme: dark) { | |||
html.skin-theme-clientpref-os .bl-hero-desc { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | } | ||
html.skin-theme-clientpref-os .bl-btn-secondary { | |||
html.skin-theme-clientpref-os .bl- | background: rgba(255, 255, 255, 0.08) !important; | ||
background: | border-color: rgba(255, 255, 255, 0.2) !important; | ||
border-color: rgba(255, 255, 255, 0. | color: var(--color-base-20, #e0e0e0) !important; | ||
} | } | ||
html.skin-theme-clientpref-os .bl- | html.skin-theme-clientpref-os .bl-btn-secondary:hover { | ||
background: rgba(255, 255, 255, 0.15) !important; | |||
} | } | ||
html.skin-theme-clientpref-os .bl- | html.skin-theme-clientpref-os .bl-stat-icon { | ||
color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
html.skin-theme-clientpref-os .bl- | html.skin-theme-clientpref-os .bl-quick-item { | ||
background: var(--color-surface-1, #202122) !important; | |||
border-color: rgba(255, 255, 255, 0.1) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-quick-item i { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
html.skin-theme-clientpref-os .bl- | html.skin-theme-clientpref-os .bl-quick-item span, | ||
html.skin-theme-clientpref-os .bl-quick-item span a { | |||
color: var(--color-base-20, #e0e0e0) !important; | color: var(--color-base-20, #e0e0e0) !important; | ||
} | } | ||
html.skin-theme-clientpref-os .bl- | html.skin-theme-clientpref-os .bl-quick-item:hover { | ||
color: var(--color-primary, #6ba4ff) !important; | border-color: var(--color-primary, #6ba4ff) !important; | ||
} | } | ||
html.skin-theme-clientpref-os .bl- | html.skin-theme-clientpref-os .bl-box-header { | ||
background: var(--color-surface-2, #2d2e2f) !important; | |||
border-bottom-color: rgba(255, 255, 255, 0.1) !important; | |||
} | } | ||
html.skin-theme-clientpref-os .bl-box-icon { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-list-trivia li { | ||
border-bottom-color: rgba(255, 255, 255, 0.08) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-trivia-text { | ||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-rec-item { | ||
background: var(--color-surface-1, #202122) !important; | |||
border-color: rgba(255, 255, 255, 0.08) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-rec-item:hover { | ||
background: var(--color-surface-2, #2d2e2f) !important; | |||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-rec-name, | ||
html.skin-theme-clientpref-os .bl-rec-name a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-rec-name a:hover { | ||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-rec-desc { | ||
color: var(--color-base-30, #a0a0a0) !important; | |||
} | } | ||
.bl- | /* 典范条目 */ | ||
html.skin-theme-clientpref-os .bl-featured-title, | |||
html.skin-theme-clientpref-os .bl-featured-title a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-featured-title a:hover { | ||
color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
. | html.skin-theme-clientpref-os .bl-featured-desc { | ||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | |||
} | |||
.bl- | html.skin-theme-clientpref-os .bl-featured-link a { | ||
color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-featured-link a:hover { | ||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | } | ||
html.skin-theme-clientpref-os .bl-plaintext, | |||
html.skin-theme-clientpref-os .bl-plaintext p, | |||
.bl- | html.skin-theme-clientpref-os .bl-box-body p { | ||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-map-wrap { | ||
background: var(--color-surface-1, #202122) !important; | |||
border-color: rgba(255, 255, 255, 0.15) !important; | |||
} | } | ||
.bl- | /* 管理组名单 */ | ||
html.skin-theme-clientpref-os .bl-team-card { | |||
background: var(--color-surface-1, #202122) !important; | |||
border-color: rgba(255, 255, 255, 0.1) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-team-card:hover { | ||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-team-avatar { | ||
border-color: rgba(255, 255, 255, 0.15) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-team-card:hover .bl-team-avatar { | ||
border-color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-team-name { | ||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-team-social { | ||
color: var(--color-primary, #6ba4ff) !important; | |||
} | } | ||
.bl- | html.skin-theme-clientpref-os .bl-team-social:hover { | ||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | } | ||
} | |||
.bl- | /* ===== 响应式:平板 ===== */ | ||
@media (max-width: 980px) { | |||
.bl-grid { | |||
display: block; | |||
} | } | ||
.bl- | .bl-sidecol { | ||
margin-top: 18px; | |||
} | } | ||
.bl- | .bl-hero-inner { | ||
padding: | flex-direction: column; | ||
text-align: center; | |||
padding: 28px 24px; | |||
} | } | ||
.bl- | .bl-hero-desc { | ||
max-width: 100%; | |||
} | } | ||
.bl- | .bl-hero-actions { | ||
justify-content: center; | |||
} | } | ||
.bl- | .bl-stat { | ||
flex: none; | flex: none; | ||
width: 100%; | width: 100%; | ||
max-width: 260px; | |||
} | } | ||
.bl- | .bl-quick-bar { | ||
gap: | gap: 8px; | ||
} | } | ||
.bl- | .bl-quick-item { | ||
min-width: 70px; | min-width: 70px; | ||
padding: 10px 14px; | |||
padding: | |||
} | } | ||
.bl- | .bl-search-form { | ||
flex-wrap: wrap; | |||
padding: 10px; | |||
} | } | ||
.bl- | .bl-search-input { | ||
width: 100%; | |||
flex: 1 1 100%; | |||
padding: 8px 4px; | |||
} | } | ||
.bl- | .bl-search-btn, | ||
flex | .bl-create-btn { | ||
flex: 1; | |||
justify-content: center; | |||
} | } | ||
.bl- | .bl-stats-bar { | ||
gap: 8px; | |||
} | } | ||
.bl-stats-item { | |||
min-width: 80px; | |||
max-width: 160px; | |||
padding: 10px 14px; | |||
} | } | ||
.bl-hero-search { | |||
padding: 0 24px 8px; | |||
padding | |||
} | } | ||
.bl-hero-stats { | |||
padding: 12px 24px 4px; | |||
justify-content: center; | |||
} | } | ||
. | .bl-hero-stat { | ||
min-width: 75px; | |||
max-width: 130px; | |||
padding: 6px 10px; | |||
} | } | ||
.bl-hero-stat-icon { | |||
. | font-size: 1em; | ||
- | } | ||
.bl-hero-stat-number { | |||
font-size: 0.85em; | |||
} | |||
.bl-hero-links { | |||
padding: 12px 24px 24px; | |||
justify-content: center; | |||
} | } | ||
.bl-hero-link { | |||
padding: 6px 12px; | |||
font-size: 0.78em; | |||
} | } | ||
} | } | ||
/* ========== | /* ===== 响应式:手机 ===== */ | ||
@media (max-width: 700px) { | |||
.bl-hero-title { | |||
.bl- | font-size: 1.5em; | ||
} | |||
} | |||
.bl-hero-desc { | |||
font-size: 0.92em; | |||
} | |||
.bl-hero-inner { | |||
padding: 22px 18px; | |||
} | |||
.bl- | .bl-stat { | ||
padding: 16px; | |||
} | |||
.bl-stat-number { | |||
font-size: 1.8em; | |||
} | |||
} | |||
.bl- | .bl-quick-bar { | ||
gap: 6px; | |||
} | |||
} | |||
.bl- | .bl-quick-item { | ||
min-width: 56px; | |||
padding: 8px 10px; | |||
} | |||
.bl-quick-item i { | |||
font-size: 1.2em; | |||
} | |||
} | |||
.bl- | .bl-quick-item span { | ||
font-size: 0.7em; | |||
} | } | ||
.bl- | .bl-navgrid { | ||
grid-template-columns: 1fr; | |||
} | |||
.bl-box-header { | |||
padding: 12px 14px; | |||
} | |||
} | |||
.bl- | .bl-box-body { | ||
padding: 12px 14px; | |||
} | |||
} | |||
.bl- | .bl-trivia-marker { | ||
flex: 0 0 26px; | |||
height: 26px; | |||
font-size: 0.65em; | |||
} | |||
} | |||
.bl- | .bl-trivia-text { | ||
font-size: 0.85em; | |||
} | |||
} | |||
.bl-search-form { | |||
flex-direction: column; | |||
padding: 8px; | |||
.bl- | gap: 8px; | ||
} | |||
.bl-search-input { | |||
width: 100%; | |||
flex: none; | |||
} | padding: 10px 4px; | ||
} | |||
.bl- | .bl-search-btn, | ||
.bl-create-btn { | |||
width: 100%; | |||
justify-content: center; | |||
} | |||
} | |||
.bl-stats- | .bl-stats-bar { | ||
gap: 6px; | |||
} | |||
} | |||
.bl-stats- | .bl-stats-item { | ||
min-width: 70px; | |||
max-width: 140px; | |||
padding: 8px 10px; | |||
} | gap: 6px; | ||
} | |||
.bl-stats- | .bl-stats-icon { | ||
font-size: 1.1em; | |||
} | |||
} | |||
.bl-stats-number { | .bl-stats-number { | ||
font-size: 1em; | |||
} | |||
} | |||
.bl- | .bl-hero-search { | ||
padding: 0 18px 6px; | |||
} | |||
} | |||
.bl- | .bl-hero-search-form { | ||
flex-direction: column; | |||
} | padding: 8px; | ||
gap: 8px; | |||
} | |||
.bl-hero-search-input { | |||
width: 100%; | |||
flex: none; | |||
padding: 10px 4px; | |||
} | |||
.bl- | .bl-hero-search-btn, | ||
.bl-hero-create-btn { | |||
width: 100%; | |||
justify-content: center; | |||
} | } | ||
.bl-hero-stats { | |||
padding: 8px 18px 2px; | |||
gap: 6px; | |||
.bl- | justify-content: center; | ||
} | |||
.bl-hero-stat { | |||
min-width: 60px; | |||
max-width: 110px; | |||
padding: 5px 8px; | |||
gap: 5px; | |||
} | |||
} | |||
.bl- | .bl-hero-stat-icon { | ||
font-size: 0.9em; | |||
} | |||
} | |||
.bl-hero-stat-number { | |||
font-size: 0.78em; | |||
} | |||
.bl- | |||
} | |||
.bl- | .bl-hero-stat-label { | ||
font-size: 0.55em; | |||
} | |||
.bl-hero-links { | |||
padding: 8px 18px 20px; | |||
gap: 4px; | |||
} | justify-content: center; | ||
} | |||
.bl- | .bl-hero-link { | ||
padding: 5px 10px; | |||
} | font-size: 0.72em; | ||
gap: 4px; | |||
} | |||
.bl- | .bl-hero-link i { | ||
font-size: 1em; | |||
} | |||
} | |||
.bl-news- | .bl-news-item { | ||
flex-direction: column; | |||
gap: 4px; | |||
} | |||
} | |||
.bl-news- | .bl-news-date { | ||
flex: none; | |||
} | |||
} | } | ||
/* ========================================= */ | |||
/* 移动端适配 (当屏幕宽度小于 768px 时生效) */ | |||
/* ========================================= */ | |||
@media screen and (max-width: 768px) { | |||
/* 1. 压缩 Banner 整体高度与负边距 */ | |||
.page-banner { | |||
height: 350px !important; /* 手机端降低整体高度 */ | |||
margin-top: -50px !important; /* 适配手机端较窄的顶部导航栏 */ | |||
margin-bottom: -50px !important; | |||
} | |||
. | /* 2. 减少文字层顶部的过度留白 */ | ||
.page-banner-content { | |||
padding-top: 80px !important; | |||
} | } | ||
/* 3. 强行缩小字体(必须使用 !important 覆盖 HTML 里的内联样式) */ | |||
.page-banner-local { | |||
font-size: 2.2em !important; /* 主标题缩小,防止撑爆屏幕或异常换行 */ | |||
padding: 0 15px !important; /* 两侧增加一点安全内边距 */ | |||
} | |||
.page-banner-en { | |||
font-size: 1.1em !important; /* 英文副标题缩小 */ | |||
margin-top: 5px !important; | |||
} | |||
/* | /* 4. 优化背景图遮罩比例(可选:如果在手机上觉得不够黑,可以调整这里) */ | ||
.page-banner-bg { | |||
-webkit-mask-image: linear-gradient(to bottom, black 40%, transparent 100%) !important; | |||
. | mask-image: linear-gradient(to bottom, black 40%, transparent 100%) !important; | ||
} | |||
} | |||
. | /* 5. Ambox 提示框手机端全宽显示,释放空间 */ | ||
table.ambox { | |||
width: 96% !important; | |||
margin: 0px 2% 10px 2% !important; /* 左右边距从10%缩小到2% */ | |||
} | |||
} | } | ||
/* 让 .bl-mainpage 占据全宽 */ | |||
.bl- | .bl-mainpage { | ||
max-width: 100% !important; | |||
width: 100% !important; | |||
margin-left: 0 !important; | |||
margin-right: 0 !important; | |||
padding-left: 0 !important; | |||
padding-right: 0 !important; | |||
} | } | ||
/* 强制 .page-banner 基于视口全宽,突破所有父级限制 */ | |||
. | .page-banner { | ||
width: 100vw !important; | |||
max-width: 100vw !important; | |||
position: relative !important; | |||
left: 50% !important; | |||
right: 50% !important; | |||
margin-left: -50vw !important; | |||
margin-right: -50vw !important; | |||
} | } | ||
/* 当页面加载完成后执行 */ | |||
/* ============================================= | /* ============================================= | ||
搜索与创建栏 | |||
============================================= */ | ============================================= */ | ||
.bl- | .bl-search-bar { | ||
margin-bottom: 20px; | |||
} | } | ||
.bl- | .bl-search-form { | ||
display: flex; | |||
padding- | gap: 10px; | ||
align-items: center; | |||
background: #fff; | |||
border: 1px solid #e5e7eb; | |||
border-radius: 14px; | |||
padding: 6px 6px 6px 18px; | |||
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04); | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl- | .bl-search-form:focus-within { | ||
border-color: #6366f1; | |||
box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12); | |||
} | } | ||
.bl- | .bl-search-input { | ||
color: # | flex: 1; | ||
border: none; | |||
font- | outline: none; | ||
font-size: 0.95em; | |||
padding: 10px 0; | |||
color: #374151; | |||
background: transparent; | |||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; | |||
} | } | ||
.bl- | .bl-search-input::placeholder { | ||
color: # | color: #9ca3af; | ||
} | } | ||
.bl-search-btn { | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 6px; | |||
padding: 10px 20px; | |||
background: linear-gradient(135deg, #6366f1, #8b5cf6); | |||
color: #fff; | |||
border- | border: none; | ||
border-radius: 10px; | |||
font-size: 0.9em; | |||
font-weight: 600; | |||
cursor: pointer; | |||
transition: all 0.2s ease; | |||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; | |||
} | } | ||
.bl-search-btn:hover { | |||
transform: translateY(-1px); | |||
box-shadow: 0 | box-shadow: 0 4px 14px rgba(99, 102, 241, 0.35); | ||
} | } | ||
.bl-create-btn { | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 6px; | |||
padding: 10px 18px; | |||
background: #f0fdf4; | |||
color: #16a34a; | |||
border: 1px solid #bbf7d0; | |||
border-radius: 10px; | |||
font-size: 0.9em; | |||
font-weight: 600; | |||
text-decoration: none !important; | |||
transition: all 0.2s ease; | |||
white-space: nowrap; | |||
} | } | ||
.bl-create-btn:hover { | |||
background: | background: #dcfce7; | ||
transform: translateY(-1px); | |||
box-shadow: 0 4px 12px rgba(22, 163, 74, 0.2); | |||
} | } | ||
/* ============================================= | |||
站点统计栏 | |||
============================================= */ | |||
.bl-stats-bar { | |||
display: flex; | |||
gap: 12px; | |||
margin-bottom: 24px; | |||
flex-wrap: wrap; | |||
justify-content: center; | |||
} | } | ||
.bl-stats-item { | |||
background: | display: flex; | ||
align-items: center; | |||
gap: 10px; | |||
padding: 12px 18px; | |||
background: #fff; | |||
border: 1px solid #e5e7eb; | |||
border-radius: 12px; | |||
min-width: 110px; | |||
flex: 1 0 auto; | |||
max-width: 180px; | |||
transition: all 0.2s ease; | |||
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04); | |||
} | } | ||
.bl-stats-item:hover { | |||
transform: translateY(-2px); | |||
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06); | |||
border-color: #6366f1; | |||
} | } | ||
.bl-stats-icon { | |||
color: | font-size: 1.4em; | ||
color: #6366f1; | |||
flex: 0 0 auto; | |||
} | } | ||
.bl-stats-info { | |||
display: flex; | |||
flex-direction: column; | |||
min-width: 0; | |||
} | } | ||
.bl-stats-number { | |||
font-size: 1.15em; | |||
font-weight: 800; | |||
color: #1f2937; | |||
line-height: 1.2; | |||
} | } | ||
.bl-stats-number a { | |||
color: | color: #1f2937 !important; | ||
text-decoration: none !important; | |||
} | } | ||
.bl-stats-number a:hover { | |||
color: | color: #6366f1 !important; | ||
} | } | ||
.bl-stats-label { | |||
color: | font-size: 0.72em; | ||
color: #9ca3af; | |||
letter-spacing: 0.03em; | |||
} | } | ||
/* ============================================= | |||
卡片"更多"链接 | |||
============================================= */ | |||
.bl-box-more { | |||
margin-left: auto; | |||
font-size: 0.82em; | |||
font-weight: 600; | |||
color: #6366f1; | |||
text-decoration: none !important; | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 2px; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl-box-more:hover { | |||
color: #4f46e5; | |||
gap: 4px; | |||
} | } | ||
.bl-box-more-wrap { | |||
margin-left: auto; | |||
font-size: 0.82em; | |||
font-weight: 600; | |||
} | } | ||
.bl-box-more-wrap a { | |||
color: | color: #6366f1; | ||
text-decoration: none !important; | |||
display: inline-flex; | |||
align-items: center; | |||
gap: 2px; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl-box-more-wrap a:hover { | |||
color: | color: #4f46e5; | ||
} | } | ||
/* ============================================= | |||
最近新闻 | |||
============================================= */ | |||
.bl-news-list { | |||
display: flex; | |||
flex-direction: column; | |||
gap: 2px; | |||
} | } | ||
.bl-news-item { | |||
display: flex; | |||
align-items: baseline; | |||
gap: 12px; | |||
padding: 10px 0; | |||
border-bottom: 1px solid #f3f4f6; | |||
transition: background 0.15s ease; | |||
border- | |||
} | } | ||
.bl-news-item:last-child { | |||
border-bottom: none; | |||
} | } | ||
.bl-news-date { | |||
flex: 0 0 60px; | |||
font-size: 0.78em; | |||
font-weight: 700; | |||
color: #6366f1; | |||
letter-spacing: 0.02em; | |||
white-space: nowrap; | |||
} | } | ||
.bl-news-text { | |||
color: | font-size: 0.9em; | ||
color: #374151; | |||
line-height: 1.5; | |||
} | } | ||
.bl-news-text a { | |||
color: | color: #4f46e5 !important; | ||
text-decoration: none !important; | |||
font-weight: 600; | |||
} | } | ||
.bl-news-text a:hover { | |||
color: | color: #6366f1 !important; | ||
text-decoration: underline !important; | |||
} | } | ||
/* ============================================= | |||
快速上传 | |||
============================================= */ | |||
.bl-upload-action { | |||
display: flex; | |||
align-items: center; | |||
gap: 12px; | |||
padding: 14px 16px; | |||
background: linear-gradient(135deg, #eef2ff, #e0e7ff); | |||
border: 1px dashed #c7d2fe; | |||
border-radius: 12px; | |||
text-decoration: none !important; | |||
transition: all 0.2s ease; | |||
} | } | ||
.bl-upload-action:hover { | |||
background: linear-gradient(135deg, #e0e7ff, #c7d2fe); | |||
border-color: #6366f1; | |||
transform: translateY(-1px); | |||
} | |||
.bl-upload-action i:first-child { | |||
font-size: 1.6em; | |||
color: #6366f1; | |||
} | |||
.bl-upload-action span { | |||
flex: 1; | |||
font-size: 0.9em; | |||
font-weight: 600; | |||
color: #374151; | |||
} | |||
.bl-upload-action i:last-child { | |||
font-size: 1.2em; | |||
color: #6366f1; | |||
} | |||
/* ============================================= | |||
近期更改 | |||
============================================= */ | |||
.bl-recent-list { | |||
font-size: 0.88em; | |||
line-height: 1.7; | |||
} | |||
.bl-recent-list ul { | |||
margin: 0; | |||
padding-left: 1.2em; | |||
list-style: none; | |||
} | |||
.bl-recent-list li { | |||
padding: 4px 0; | |||
color: #4b5563; | |||
} | |||
.bl-recent-list li a { | |||
color: #4f46e5 !important; | |||
text-decoration: none !important; | |||
font-weight: 500; | |||
} | |||
.bl-recent-list li a:hover { | |||
color: #6366f1 !important; | |||
text-decoration: underline !important; | |||
} | |||
/* ============================================= | |||
深色模式:搜索栏 + 统计栏 + 新闻 + 上传 + 近期更改 | |||
============================================= */ | |||
/* ----- 手动深色模式 (night) ----- */ | |||
html.skin-theme-clientpref-night .bl-search-form { | |||
color: var(--color-base- | background: var(--color-surface-1, #202122); | ||
} | border-color: rgba(255, 255, 255, 0.12); | ||
html.skin-theme-clientpref-os .bl- | } | ||
html.skin-theme-clientpref-night .bl-search-form:focus-within { | |||
border-color: var(--color-primary, #6ba4ff); | |||
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15); | |||
} | |||
html.skin-theme-clientpref-night .bl-search-input { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-night .bl-search-input::placeholder { | |||
color: rgba(255, 255, 255, 0.35); | |||
} | |||
html.skin-theme-clientpref-night .bl-create-btn { | |||
background: rgba(34, 197, 94, 0.15); | |||
color: #4ade80; | |||
border-color: rgba(34, 197, 94, 0.25); | |||
} | |||
html.skin-theme-clientpref-night .bl-create-btn:hover { | |||
background: rgba(34, 197, 94, 0.25); | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-item { | |||
background: var(--color-surface-1, #202122); | |||
border-color: rgba(255, 255, 255, 0.1); | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-item:hover { | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-icon { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-number { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-number a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-number a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-stats-label { | |||
color: rgba(255, 255, 255, 0.4); | |||
} | |||
html.skin-theme-clientpref-night .bl-box-more { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-box-more:hover { | |||
color: var(--color-primary--hover, #9bc4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-box-more-wrap a { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-box-more-wrap a:hover { | |||
color: var(--color-primary--hover, #9bc4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-news-item { | |||
border-bottom-color: rgba(255, 255, 255, 0.06); | |||
} | |||
html.skin-theme-clientpref-night .bl-news-date { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-news-text { | |||
color: var(--color-base-0, #c8ccd1); | |||
} | |||
html.skin-theme-clientpref-night .bl-news-text a { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-news-text a:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-upload-action { | |||
background: rgba(99, 102, 241, 0.1); | |||
border-color: rgba(99, 102, 241, 0.2); | |||
} | |||
html.skin-theme-clientpref-night .bl-upload-action:hover { | |||
background: rgba(99, 102, 241, 0.18); | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-upload-action i:first-child { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-upload-action span { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-night .bl-upload-action i:last-child { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-recent-list li { | |||
color: var(--color-base-0, #c8ccd1); | |||
} | |||
html.skin-theme-clientpref-night .bl-recent-list li a { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-recent-list li a:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
/* ----- Hero 内嵌组件深色模式 ----- */ | |||
html.skin-theme-clientpref-night .bl-hero-search-form { | |||
background: rgba(32, 33, 34, 0.85); | |||
border-color: rgba(255, 255, 255, 0.12); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-search-form:focus-within { | |||
border-color: var(--color-primary, #6ba4ff); | |||
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-search-input { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-search-input::placeholder { | |||
color: rgba(255, 255, 255, 0.35); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-create-btn { | |||
background: rgba(34, 197, 94, 0.12); | |||
color: #4ade80; | |||
border-color: rgba(34, 197, 94, 0.2); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-create-btn:hover { | |||
background: rgba(34, 197, 94, 0.2); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat { | |||
background: rgba(32, 33, 34, 0.5); | |||
border-color: rgba(255, 255, 255, 0.08); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat:hover { | |||
background: rgba(32, 33, 34, 0.75); | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat-icon { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat-number { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat-number a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat-number a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-stat-label { | |||
color: rgba(255, 255, 255, 0.35); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-link { | |||
background: rgba(32, 33, 34, 0.4); | |||
border-color: rgba(255, 255, 255, 0.06); | |||
color: var(--color-base-0, #c8ccd1); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-link:hover { | |||
background: rgba(32, 33, 34, 0.7); | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-link i { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-link a { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | |||
html.skin-theme-clientpref-night .bl-hero-link a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
/* ----- 系统深色模式 (os) ----- */ | |||
@media (prefers-color-scheme: dark) { | |||
html.skin-theme-clientpref-os .bl-search-form { | |||
background: var(--color-surface-1, #202122); | |||
border-color: rgba(255, 255, 255, 0.12); | |||
} | |||
html.skin-theme-clientpref-os .bl-search-form:focus-within { | |||
border-color: var(--color-primary, #6ba4ff); | |||
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15); | |||
} | |||
html.skin-theme-clientpref-os .bl-search-input { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-os .bl-search-input::placeholder { | |||
color: rgba(255, 255, 255, 0.35); | |||
} | |||
html.skin-theme-clientpref-os .bl-create-btn { | |||
background: rgba(34, 197, 94, 0.15); | |||
color: #4ade80; | |||
border-color: rgba(34, 197, 94, 0.25); | |||
} | |||
html.skin-theme-clientpref-os .bl-create-btn:hover { | |||
background: rgba(34, 197, 94, 0.25); | |||
} | |||
html.skin-theme-clientpref-os .bl-stats-item { | |||
background: var(--color-surface-1, #202122); | |||
border-color: rgba(255, 255, 255, 0.1); | |||
} | |||
html.skin-theme-clientpref-os .bl-stats-item:hover { | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-stats-icon { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-stats-number { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-os .bl-stats-number a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-stats-number a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | color: var(--color-primary, #6ba4ff) !important; | ||
} | } | ||
html.skin-theme-clientpref-os .bl-news-text a:hover { | html.skin-theme-clientpref-os .bl-stats-label { | ||
color: var(--color-primary--hover, #9bc4ff) !important; | color: rgba(255, 255, 255, 0.4); | ||
} | } | ||
html.skin-theme-clientpref-os .bl-upload-action { | html.skin-theme-clientpref-os .bl-box-more { | ||
background: rgba(99, 102, 241, 0.1); | color: var(--color-primary, #6ba4ff); | ||
border-color: rgba(99, 102, 241, 0.2); | } | ||
} | html.skin-theme-clientpref-os .bl-box-more:hover { | ||
html.skin-theme-clientpref-os .bl-upload-action:hover { | color: var(--color-primary--hover, #9bc4ff); | ||
background: rgba(99, 102, 241, 0.18); | } | ||
border-color: var(--color-primary, #6ba4ff); | html.skin-theme-clientpref-os .bl-box-more-wrap a { | ||
} | color: var(--color-primary, #6ba4ff); | ||
html.skin-theme-clientpref-os .bl-upload-action i:first-child { | } | ||
color: var(--color-primary, #6ba4ff); | html.skin-theme-clientpref-os .bl-box-more-wrap a:hover { | ||
} | color: var(--color-primary--hover, #9bc4ff); | ||
html.skin-theme-clientpref-os .bl-upload-action span { | } | ||
color: var(--color-base-20, #e0e0e0); | html.skin-theme-clientpref-os .bl-news-item { | ||
} | border-bottom-color: rgba(255, 255, 255, 0.06); | ||
html.skin-theme-clientpref-os .bl-upload-action i:last-child { | } | ||
color: var(--color-primary, #6ba4ff); | html.skin-theme-clientpref-os .bl-news-date { | ||
} | color: var(--color-primary, #6ba4ff); | ||
html.skin-theme-clientpref-os .bl-recent-list li { | } | ||
color: var(--color-base-0, #c8ccd1); | html.skin-theme-clientpref-os .bl-news-text { | ||
} | color: var(--color-base-0, #c8ccd1); | ||
html.skin-theme-clientpref-os .bl-recent-list li a { | } | ||
html.skin-theme-clientpref-os .bl-news-text a { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-news-text a:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-upload-action { | |||
background: rgba(99, 102, 241, 0.1); | |||
border-color: rgba(99, 102, 241, 0.2); | |||
} | |||
html.skin-theme-clientpref-os .bl-upload-action:hover { | |||
background: rgba(99, 102, 241, 0.18); | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-upload-action i:first-child { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-upload-action span { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-os .bl-upload-action i:last-child { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-recent-list li { | |||
color: var(--color-base-0, #c8ccd1); | |||
} | |||
html.skin-theme-clientpref-os .bl-recent-list li a { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-recent-list li a:hover { | |||
color: var(--color-primary--hover, #9bc4ff) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-search-form { | |||
background: rgba(32, 33, 34, 0.85); | |||
border-color: rgba(255, 255, 255, 0.12); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-search-form:focus-within { | |||
border-color: var(--color-primary, #6ba4ff); | |||
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-search-input { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-search-input::placeholder { | |||
color: rgba(255, 255, 255, 0.35); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-create-btn { | |||
background: rgba(34, 197, 94, 0.12); | |||
color: #4ade80; | |||
border-color: rgba(34, 197, 94, 0.2); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-create-btn:hover { | |||
background: rgba(34, 197, 94, 0.2); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat { | |||
background: rgba(32, 33, 34, 0.5); | |||
border-color: rgba(255, 255, 255, 0.08); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat:hover { | |||
background: rgba(32, 33, 34, 0.75); | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat-icon { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat-number { | |||
color: var(--color-base-20, #e0e0e0); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat-number a { | |||
color: var(--color-base-20, #e0e0e0) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat-number a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-stat-label { | |||
color: rgba(255, 255, 255, 0.35); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-link { | |||
background: rgba(32, 33, 34, 0.4); | |||
border-color: rgba(255, 255, 255, 0.06); | |||
color: var(--color-base-0, #c8ccd1); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-link:hover { | |||
background: rgba(32, 33, 34, 0.7); | |||
border-color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-link i { | |||
color: var(--color-primary, #6ba4ff); | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-link a { | |||
color: var(--color-base-0, #c8ccd1) !important; | |||
} | |||
html.skin-theme-clientpref-os .bl-hero-link a:hover { | |||
color: var(--color-primary, #6ba4ff) !important; | color: var(--color-primary, #6ba4ff) !important; | ||
} | } | ||
} | } | ||
2026年5月11日 (一) 23:03的版本
@import url("https://cdn.jsdelivr.net/npm/[email protected]/fonts/remixicon.css");
/* 这里放置的CSS将应用于所有皮肤 */
/* 桌面版网页所有皮肤的公共CSS */
/* 界面管理员注意!任何对Common.css的改变必须先在技术客栈讨论,谢谢。 */
/* .mw-parser-output内的样式调整请使用TemplateStyles */
/* Default styling for HTML elements */
cite,
dfn {
font-style: inherit; /* Reset default styling for <dfn> */
}
/*
== 参考区 ==
*/
/* --- 彻底锁死图片缩放 --- */
/* 1. 针对 Citizen 皮肤特有的 figure 结构 */
.mw-parser-output figure[typeof*="mw:File/Thumb"] img,
.mw-parser-output figure[typeof*="mw:File/Thumb"] .mw-file-element,
.mw-parser-output .thumbinner img {
transform: none !important;
transition: none !important;
}
/* 2. 针对普通链接图片和描述符图片 */
.mw-parser-output .mw-file-description img,
.mw-parser-output .mw-file-element {
transform: none !important;
transition: none !important;
}
/* 3. 强制取消任何悬停状态下的缩放 */
.mw-parser-output a:hover img,
.mw-parser-output a:focus img,
.mw-parser-output figure:hover img,
.mw-parser-output .thumbinner:hover img {
transform: none !important;
}
/* Make the list of references smaller
* Keep in sync with Template:Refbegin/styles.css
* And Template:Reflist/styles.css
*/
ol.references,
div.reflist {
font-size: 90%; /* Default font-size */
margin-bottom: 0.5em;
}
div.reflist ol.references {
font-size: 100%; /* Reset font-size when nested in div.reflist */
}
div.reflist ol.references,
div.notelist ol.references {
list-style-type: inherit; /* Enable custom list style types */
}
/* .references-2column b/c */
div.references-2column {
-moz-column-count: 2;
column-count: 2;
font-size: 90%;
}
div.references-2column ol.references,
div.references-2column div.reflist {
font-size: 100%;
}
/* T156351: Support for Parsoid's Cite implementation */
a[rel="mw:referencedBy"]::before {
font-weight: bold;
content: "^";
}
span[rel="mw:referencedBy"] > a::before {
font-weight: bold;
content: counter(mw-references, decimal) "." counter(mw-ref-linkback, decimal);
}
span[rel="mw:referencedBy"]::before {
content: "^ ";
}
/* Reduce page jumps by hiding collapsed/dismissed content */
.client-js .mw-special-Watchlist #watchlist-message,
.client-js .collapsible:not( .mw-made-collapsible).collapsed > tbody > tr:not(:first-child),
/* Avoid FOUC/reflows on collapsed elements. */
/* This copies MediaWiki's solution for T42812 to apply to innercollapse/outercollapse (T325115). */
/* TODO: Use :is() selector at some reasonable future when support is good for Most Clients */
/* Reference: https://gerrit.wikimedia.org/g/mediawiki/core/+/ecda06cb2aef55b77c4b4d7ecda492d634419ead/resources/src/jquery/jquery.makeCollapsible.styles.less#75 */
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) > p,
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) > table,
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) > thead + tbody,
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) tr:not( :first-child ),
.client-js .outercollapse .innercollapse.mw-collapsible:not( .mw-made-collapsible ) .mw-collapsible-content,
/* Reset top margin for lists embedded in columns */
div.columns {
margin-top: 0.3em;
}
div.columns dl,
div.columns ol,
div.columns ul {
margin-top: 0;
}
/* Avoid list items from breaking between columns */
div.columns li,
div.columns dd dd {
-webkit-column-break-inside: avoid;
page-break-inside: avoid;
break-inside: avoid-column;
}
/* Prevent line breaks in silly places:
1) Where desired
2) Links when we don't want them to
3) Bold "links" to the page itself
4) HTML formulae
5) Ref tags with group names <ref group="Note"> --> "[Note 1]"
*/
.nowrap,
.nowraplinks a,
.nowraplinks .selflink,
span.texhtml,
sup.reference a {
white-space: nowrap;
}
/* But allow wrapping where desired: */
.wrap,
.wraplinks a {
white-space: normal;
}
/* Style for horizontal lists (separator following item) */
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
}
.hlist dd,
.hlist dt,
.hlist li {
display: inline;
margin: 0;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl,
.hlist dl ol,
.hlist dl ul,
.hlist ol dl,
.hlist ol ol,
.hlist ol ul,
.hlist ul dl,
.hlist ul ol,
.hlist ul ul {
display: inline;
}
/* Generate interpuncts */
.hlist dt:after {
content: " :";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parens around nested lists */
.hlist dl dl:before,
.hlist ol ol:before,
.hlist ul ul:before {
content: "(";
}
.hlist dl dl:after,
.hlist ol ol:after,
.hlist ul ul:after {
content: ")";
}
/* Put numbers in ordered lists */
.hlist.hnum ol li {
counter-increment: level1;
}
.hlist.hnum ol li:before {
content: counter(level1) " ";
}
.hlist.hnum ol ol li {
counter-increment: level2;
}
.hlist.hnum ol ol li:before {
content: counter(level2) " ";
}
/* Unbulleted lists */
.plainlist ul {
line-height: inherit;
list-style: none none;
margin: 0;
}
.plainlist ul li {
margin-bottom: 0;
}
.same-bg {
background: none;
}
/*
== 提示 ==
*/
/* Style for "notices" */
.notice {
text-align: justify;
margin: 1em;
padding: 0.2em;
}
#disambig {
border-top: 3px double var(--border-color-base, #a2a9b1);
border-bottom: 3px double var(--border-color-base, #a2a9b1);
}
#spoiler {
border-top: 2px solid var(--border-color-base, #a2a9b1);
border-bottom: 2px solid var(--border-color-base, #a2a9b1);
}
/*
== 未归类 ==
*/
/* Infobox template style */
.infobox {
border: 1px solid #a2a9b1;
border-spacing: 3px;
background-color: #f8f9fa;
color: inherit;
/* @noflip */
margin: 0.5em 0 0.5em 1em;
padding: 0.2em;
/* @noflip */
float: right;
/* @noflip */
clear: right;
font-size: 88%;
line-height: 1.5em;
width: 22em;
}
.infobox-header,
.infobox-label,
.infobox-above,
.infobox-full-data,
.infobox-data,
.infobox-below,
.infobox-subheader,
.infobox-image,
/* Remove element selector when every .infobox thing is using the standard module/templates */
.infobox th,
.infobox td {
vertical-align: top;
}
.infobox-label,
.infobox-data,
/* Remove element selector when every .infobox thing is using the standard module/templates */
.infobox th,
.infobox td {
/* @noflip */
text-align: left;
}
/* Remove .infobox when element selectors above are removed */
.infobox .infobox-above,
.infobox .infobox-title,
/* Remove element selector when every .infobox thing is using the standard module/templates */
.infobox caption {
font-size: 125%;
font-weight: bold;
text-align: center;
}
.infobox-title,
/* Remove element selector when every .infobox thing is using the standard module/templates */
.infobox caption {
padding: 0.2em;
}
/* Remove .infobox when element selectors above are removed */
.infobox .infobox-header,
.infobox .infobox-subheader,
.infobox .infobox-image,
.infobox .infobox-full-data,
.infobox .infobox-below {
text-align: center;
}
/* Remove .infobox when element selectors above are removed */
.infobox.bordered {
border-collapse: collapse;
}
.infobox.bordered td,
.infobox.bordered th {
border: 1px solid var(--border-color-base, #a2a9b1);
}
.infobox.bordered .borderless td,
.infobox.bordered .borderless th {
border: 0;
}
/* styles for bordered infobox with merged rows */
.infobox.bordered .mergedtoprow td,
.infobox.bordered .mergedtoprow th {
border: 0;
border-top: 1px solid var(--border-color-base, #a2a9b1);
border-right: 1px solid var(--border-color-base, #a2a9b1);
}
.infobox.bordered .mergedrow td,
.infobox.bordered .mergedrow th {
border: 0;
border-right: 1px solid var(--border-color-base, #a2a9b1);
}
/* styles for geography infoboxes, e.g. countries, country subdivisions, cities, etc. */
.infobox.geography {
text-align: left;
border-collapse: collapse;
line-height: 1.2em;
font-size: 90%;
}
.infobox.geography td,
.infobox.geography th {
border-top: solid 1px var(--border-color-base, #a2a9b1);
padding: 0.4em 0.6em 0.4em 0.6em;
}
.infobox.geography .mergedtoprow td,
.infobox.geography .mergedtoprow th {
border-top: solid 1px var(--border-color-base, #a2a9b1);
padding: 0.4em 0.6em 0.2em 0.6em;
}
.infobox.geography .mergedrow td,
.infobox.geography .mergedrow th {
border: 0;
padding: 0 0.6em 0.2em 0.6em;
}
.infobox.geography .mergedbottomrow td,
.infobox.geography .mergedbottomrow th {
border-top: 0;
border-bottom: solid 1px var(--border-color-base, #a2a9b1);
padding: 0 0.6em 0.4em 0.6em;
}
.infobox.geography .maptable td,
.infobox.geography .maptable th {
border: 0;
padding: 0;
}
/* class hiddenStructure is defunct. See [[Wikipedia:hiddenStructure]] */
.hiddenStructure {
display: inline !important;
color: var(--color-destructive--hover, #f00);
background-color: #0f0;
}
/* Removes underlines from certain links */
.nounderlines a {
text-decoration: none !important;
}
/* Custom link colors for use in [[MediaWiki:Edittools]] */
.charboxblack a:link,
.charboxblack a:hover,
.charboxblack a:visited,
.charboxblack a:active {
color: black;
}
.charboxsilver a:link,
.charboxsilver a:hover,
.charboxsilver a:visited,
.charboxsilver a:active {
color: silver;
}
.charboxgray a:link,
.charboxgray a:hover,
.charboxgray a:visited,
.charboxgray a:active {
color: gray;
}
.charboxwhite a:link,
.charboxwhite a:hover,
.charboxwhite a:visited,
.charboxwhite a:active {
color: white;
}
.charboxmaroon a:link,
.charboxmaroon a:hover,
.charboxmaroon a:visited,
.charboxmaroon a:active {
color: maroon;
}
.charboxred a:link,
.charboxred a:hover,
.charboxred a:visited,
.charboxred a:active {
color: red;
}
.charboxpurple a:link,
.charboxpurple a:hover,
.charboxpurple a:visited,
.charboxpurple a:active {
color: purple;
}
.charboxfuchsia a:link,
.charboxfuchsia a:hover,
.charboxfuchsia a:visited,
.charboxfuchsia a:active {
color: fuchsia;
}
.charboxgreen a:link,
.charboxgreen a:hover,
.charboxgreen a:visited,
.charboxgreen a:active {
color: green;
}
.charboxlime a:link,
.charboxlime a:hover,
.charboxlime a:visited,
.charboxlime a:active {
color: lime;
}
.charboxolive a:link,
.charboxolive a:hover,
.charboxolive a:visited,
.charboxolive a:active {
color: olive;
}
.charboxyellow a:link,
.charboxyellow a:hover,
.charboxyellow a:visited,
.charboxyellow a:active {
color: yellow;
}
.charboxnavy a:link,
.charboxnavy a:hover,
.charboxnavy a:visited,
.charboxnavy a:active {
color: navy;
}
.charboxblue a:link,
.charboxblue a:hover,
.charboxblue a:visited,
.charboxblue a:active {
color: blue;
}
.charboxteal a:link,
.charboxteal a:hover,
.charboxteal a:visited,
.charboxteal a:active {
color: teal;
}
.charboxaqua a:link,
.charboxaqua a:hover,
.charboxaqua a:visited,
.charboxaqua a:active {
color: aqua;
}
/*
== 未归类 ==
*/
/* Class styles */
/* Special characters list below edit window works better without underlining */
#editpage-specialchars a {
text-decoration: none;
}
#editpage-specialchars a:hover {
text-decoration: underline;
}
/*
== for some templates ==
Messagebox templates
*/
.messagebox {
border: 1px solid var(--border-color-base, #a2a9b1);
background-color: var(--background-color-neutral-subtle, #f8f9fa);
width: 80%;
margin: 0 auto 1em auto;
padding: 0.2em;
display: inherit; /* 臨時抑制 https://phabricator.wikimedia.org/T232553 及 https://gerrit.wikimedia.org/r/535738 的修改 */
color: inherit;
}
.messagebox.merge {
border: 1px solid #c0b8cc;
background-color: #f0e5ff;
text-align: center;
}
.messagebox.cleanup {
border: 1px solid #9f9fff;
background-color: #efefff;
text-align: center;
}
.messagebox.standard-talk {
border: 1px solid #c0c090;
background-color: #f8eaba;
}
.messagebox.nested-talk {
border: 1px solid #c0c090;
background-color: #f8eaba;
width: 100%;
margin: 2px 4px 2px 4px;
}
.messagebox.small {
width: 238px;
font-size: 85%;
float: right;
clear: both;
margin: 0 0 1em 1em;
line-height: 1.25em;
}
.messagebox.small-talk {
width: 238px;
font-size: 85%;
float: right;
clear: both;
margin: 0 0 1em 1em;
line-height: 1.25em;
background: #f8f9fa;
}
/*
== external link ==
Change the external link icon to an Adobe icon for all PDF files
(in browsers that support these CSS selectors, like Mozilla and Opera)
*/
#bodyContent a[href$=".pdf"].external,
#bodyContent a[href*=".pdf?"].external,
#bodyContent a[href*=".pdf#"].external,
#bodyContent a[href$=".PDF"].external,
#bodyContent a[href*=".PDF?"].external,
#bodyContent a[href*=".PDF#"].external {
background: url(//upload.wikimedia.org/wikipedia/commons/4/4d/Icon_pdf_file.png) center right
no-repeat;
padding-right: 16px;
}
/*
== other ==
*/
span.lanLabel {
color: var(--color-placeholder, #72777d);
padding-left: 0.5em;
}
tt span.minor {
margin: 0 -2px 0 -3px;
font-size: 12px;
}
tt span.newpage {
margin: 0 1px 0 -6px;
font-size: 12px;
}
tt span.bot {
margin: 0 -6px 0 1px;
font-size: 12px;
}
/*tt span.unpatrolled*/
/* 用于封禁类模板,如Template:Uw-block1 */
div.user-block {
padding: 5px;
border: 1px solid var(--border-color-base, #a2a9b1);
background-color: var(--background-color-warning-subtle, #ffefd5);
color: inherit;
}
/* For linked citation numbers and document IDs, where the number need not be shown on a screen or a handheld, but should be included in the printed version */
@media screen, handheld, projection {
cite *.printonly {
display: none;
}
}
/*
== MetaBox ==
*/
/*HERE FINISHES "METABOX" COLOUR-SCHEMES*/
/********************
**Styles for mboxes**
********************/
/* Cell sizes for ambox/tmbox/imbox/cmbox/ombox/fmbox/dmbox message boxes */
th.mbox-text,
td.mbox-text {
/* The message body cell(s) */
border: none;
padding: 0.25em 0.9em; /* 0.9em left/right */
width: 100%; /* Make all mboxes the same width regardless of text length */
}
td.mbox-image {
/* The left image cell */
border: none;
padding: 2px 0 2px 0.9em; /* 0.9em left, 0px right */
text-align: center;
}
td.mbox-imageright {
/* The right image cell */
border: none;
padding: 2px 0.9em 2px 0; /* 0px left, 0.9em right */
text-align: center;
}
td.mbox-empty-cell {
/* An empty narrow cell */
border: none;
padding: 0px;
width: 1px;
}
/* Article message box styles */
table.ambox {
margin: 0px 10%; /* 10% = Will not overlap with other elements */
border: 1px solid #a2a9b1;
border-left: 10px solid #36c; /* Default "notice" blue */
background: #f8f9fa;
}
table.ambox + table.ambox {
/* Single border between stacked boxes. */
margin-top: -1px;
}
.ambox th.mbox-text,
.ambox td.mbox-text {
/* The message body cell(s) */
padding: 0.25em 0.5em; /* 0.5em left/right */
}
.ambox td.mbox-image {
/* The left image cell */
padding: 2px 0 2px 0.5em; /* 0.5em left, 0px right */
}
.ambox td.mbox-imageright {
/* The right image cell */
padding: 2px 0.5em 2px 0; /* 0px left, 0.5em right */
}
table.ambox-notice {
border-left: 10px solid #36c; /* Blue */
}
table.ambox-speedy {
border-left: 10px solid #b32424; /* Red */
background: #fee7e6; /* Pink */
}
table.ambox-delete {
border-left: 10px solid #b32424; /* Red */
}
table.ambox-content {
border-left: 10px solid #f28500; /* Orange */
}
table.ambox-style {
border-left: 10px solid #fc3; /* Yellow */
}
table.ambox-move {
border-left: 10px solid #9932cc; /* Purple */
}
table.ambox-protection {
border-left: 10px solid #a2a9b1; /* Gray-gold */
}
/* Category message box styles */
table.cmbox {
margin: 3px 10%;
border-collapse: collapse;
border: 1px solid #a2a9b1;
background: #eaf3ff; /* Default "notice" blue */
}
table.cmbox-notice {
background: #eaf3ff; /* Blue */
}
table.cmbox-speedy {
margin-top: 4px;
margin-bottom: 4px;
border: 4px solid #b32424; /* Red */
background: #fee7e6; /* Pink */
}
table.cmbox-delete {
background: #fee7e6; /* Red */
}
table.cmbox-content {
background: #ffe7ce; /* Orange */
}
table.cmbox-style {
background: #fff9db; /* Yellow */
}
table.cmbox-move {
background: #e4d8ff; /* Purple */
}
table.cmbox-protection {
background: #efefe1; /* Gray-gold */
}
/* Talk page message box styles */
table.tmbox {
margin: 4px 10%;
border-collapse: collapse;
border: 1px solid #c0c090; /* Default "notice" gray-brown */
background: #f8eaba;
}
.mediawiki .mbox-inside .tmbox {
/* For tmboxes inside other templates. The "mediawiki" */
margin: 2px 0; /* class ensures that this declaration overrides other */
width: 100%; /* For Safari and Opera */ /* styles (including mbox-small above) */
}
.mbox-inside .tmbox.mbox-small {
/* "small" tmboxes should not be small when */
line-height: 1.5em; /* also "nested", so reset styles that are */
font-size: 100%; /* set in "mbox-small" above. */
}
table.tmbox-speedy {
border: 2px solid #b32424; /* Red */
background: #fee7e6; /* Pink */
}
table.tmbox-delete {
border: 2px solid #b32424; /* Red */
}
table.tmbox-content {
border: 2px solid #f28500; /* Orange */
}
table.tmbox-style {
border: 2px solid #fc3; /* Yellow */
}
table.tmbox-move {
border: 2px solid #9932cc; /* Purple */
}
table.tmbox-protection,
table.tmbox-notice {
border: 1px solid #c0c090; /* Gray-brown */
}
/* Disambig and set index box styles */
table.dmbox {
clear: both;
margin: 0.9em 1em;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
background: transparent;
font-size: small;
}
/* Footer and header message box styles */
table.fmbox {
clear: both;
margin: 0.2em 0;
width: 100%;
border: 1px solid #a2a9b1;
background-color: var(--background-color-interactive-subtle, #f8f9fa); /* Default "system" gray */
}
table.fmbox-system {
background-color: var(--background-color-interactive-subtle, #f8f9fa);
}
table.fmbox-warning {
border: 1px solid var(--border-color-error, #bb7070); /* Dark pink */
background: var(--background-color-error-subtle, #ffdbdb); /* Pink */
}
table.fmbox-editnotice {
background: transparent;
}
/* Div based "warning" style fmbox messages. */
div.mw-warning-with-logexcerpt,
div.mw-lag-warn-high,
div.mw-cascadeprotectedwarning,
#mw-protect-cascadeon {
clear: both;
margin: 0.2em 0;
border: 1px solid var(--border-color-error, #bb7070);
background: var(--background-color-error-subtle, #ffdbdb);
padding: 0.25em 0.9em;
}
/* These mbox-small classes must be placed after all other
ambox/tmbox/ombox etc classes. "body.mediawiki" is so
they override "table.ambox + table.ambox" above. */
body.mediawiki table.mbox-small {
/* For the "small=yes" option. */
clear: right;
float: right;
margin: 4px 0 4px 1em;
width: 238px;
font-size: 88%;
line-height: 1.25em;
}
body.mediawiki table.mbox-small-left {
/* For the "small=left" option. */
margin: 4px 1em 4px 0;
width: 238px;
border-collapse: collapse;
font-size: 88%;
line-height: 1.25em;
}
/* CODE FOR COMPACT AMBOX */
/* Remove borders, backgrounds, padding, etc. */
.compact-ambox table.ambox {
border: none;
border-collapse: collapse;
background: transparent;
margin: 0 0 0 1.6em !important;
padding: 0 !important;
width: auto;
display: block;
}
body.mediawiki .compact-ambox table.mbox-small-left {
font-size: 100%;
width: auto;
margin: 0;
}
/* Style the text cell as a list item and remove its padding */
.compact-ambox table .mbox-text {
padding: 0 !important;
margin: 0 !important;
}
.compact-ambox table .mbox-text-span {
display: list-item;
line-height: 1.5em;
list-style-type: square;
list-style-image: url("data:image/gif;base64,R0lGODlhBQANAIAAAGOMnP///yH5BAEAAAEALAAAAAAFAA0AAAIJjI+pu+APo4SpADs=");
}
/* Style for compact ambox */
/* Hide the images */
.compact-ambox table .mbox-image,
.compact-ambox table .mbox-imageright,
.compact-ambox table .mbox-empty-cell {
display: none;
}
#siteNotice div {
margin: 0;
}
/* dark mode fix */
#siteNotice {
color: inherit;
}
#mw-dismissable-notice {
background: transparent;
}
#wpSummary,
#wpSummaryLabel,
input#wpSummary,
input.mw-summary {
margin-top: 0;
margin-bottom: 0;
}
/* 解决cite定位内文字显示为斜体的问题 */
cite {
font-style: normal;
}
/* Pie chart test: Transparent borders */
.transborder {
border: solid var(--border-color-transparent, transparent);
}
/* http://zh.wikipedia.org/w/index.php?oldid=18291698#.E7.BB.B4.E5.9F.BA.E8.8D.A3.E8.AA.89.E5.A5.96.E5.8A.B1.E6.A8.A1.E6.9D.BF.E5.87.BA.E4.BA.86.E5.A4.A7.E9.97.AE.E9.A2.98 */
.ns-14 .mw-content-ltr > div[dir="ltr"] {
clear: both;
}
/* Hide stuff meant for accounts with special permissions. Made visible again in
[[MediaWiki:Group-sysop.css]], [[MediaWiki:Group-patroller.css]],
[[MediaWiki:Group-templateeditor.css]],
[[MediaWiki:Group-ipblock-exempt-grantor.css]],
[[MediaWiki:Group-extendedconfirmed.css]],
[[Mediawiki:Group-autoconfirmed.css]], and [[MediaWiki:Group-user.css]]. */
.sysop-show,
.patroller-show,
.templateeditor-show,
.ipblock-exempt-grantor-show,
.extendedconfirmed-show,
.autoconfirmed-show,
.user-show {
display: none;
}
/*编辑提交按钮部分的样式*/
.mw-summary-preset {
display: inline;
margin: 0;
padding: 0;
}
.mw-summary-preset-item {
border-left: 1px solid var(--border-color-base, #a2a9b1);
display: inline-block;
line-height: 1.25em;
margin: 0.125em 0;
padding: 0 0.5em;
}
.mw-summary-preset-item:first-child {
border-left: medium none;
padding-left: 0.25em;
}
.mw-summary-preset-item:last-child {
padding-right: 0.25em;
}
#pagehistory li.not-patrolled {
background-color: var(--background-color-warning-subtle, #ffa) !important;
}
/* HACK to workaround VE and badly written CGroups */
.noteTA {
display: none;
}
/* 页底文字太小 */
#footer ul li {
font-size: small;
}
/* For portals, added 2011-12-07 -bv
On wide screens, show these as two columns
On narrow and mobile screens, let them collapse into a single column */
.portal-column-left {
float: left;
width: 50%;
}
.portal-column-right {
float: right;
width: 49%;
}
.portal-column-left-wide {
float: left;
width: 60%;
}
.portal-column-right-narrow {
float: right;
width: 39%;
}
.portal-column-left-extra-wide {
float: left;
width: 70%;
}
.portal-column-right-extra-narrow {
float: right;
width: 29%;
}
@media only screen and (max-width: 800px) {
/* Decouple the columns on narrow screens */
.portal-column-left,
.portal-column-right,
.portal-column-left-wide,
.portal-column-right-narrow,
.portal-column-left-extra-wide,
.portal-column-right-extra-narrow {
float: inherit;
width: inherit;
}
}
/* Main page fixes */
#interwiki-completelist {
font-weight: bold;
}
/* MediaWiki:Tag-jimmy-bot-non-free */
.tag-jimmy-bot-non-free {
color: var(--color-error, red);
font-size: 1.143em;
}
/* Normal font styling for wikitable row headers with scope="row" tag */
.wikitable.plainrowheaders th[scope="row"] {
font-weight: normal;
/* @noflip */
text-align: left;
}
/* 隱藏「編輯已選擇修訂的標籤」按鈕,參閱[[Special:日志/tag]]幾乎全是破壞,一堆使用者不懂該功能亂按,並造成**無法復原**的後果 */
.mw-history-editchangetags-button {
display: none;
}
.mw-log-editchangetags-button {
display: none;
}
/* 代码中间不换行 */
pre,
.mw-code,
.mw-highlight {
line-break: anywhere;
white-space: pre-wrap;
word-break: break-all;
}
/* Styling the parameter fields in [[Template:Information]] and related templates
also here (besides on [[MediaWiki:Filepage.css]]) to ensure proper preview
on other pages than those in the file namespace */
.fileinfo-paramfield {
background: #ccf;
/* @noflip */
text-align: right;
/* @noflip */
padding-right: 0.4em;
width: 15%;
font-weight: bold;
}
/* 由於有些使用者不了解此功能,所以我個人決定將其設定為opt-in功能 by Xiplus */
.mw-changeslist-src-mw-edit .unpatrolled {
display: none;
}
#mw-diff-ntitle4 .patrollink {
display: none;
}
/* RCP的wrapper是span,NPP的wrapper是div */
#mw-content-text span.patrollink {
display: none;
}
/* 修复Inline diffs中,"行内"两字发生断行 */
.mw-diffPage-inlineToggle-container {
white-space: nowrap;
}
/* Styling for JQuery makeCollapsible, matching that of collapseButton */
.mw-parser-output .mw-collapsible-toggle {
font-weight: normal;
/* @noflip */
text-align: right;
padding-right: 0.2em;
padding-left: 0.2em;
}
.mw-collapsible-leftside-toggle .mw-collapsible-toggle {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
}
@media screen {
/* Display "From Wikipedia, the free encyclopedia" in skins that support it,
do not apply to print mode */
#siteSub {
display: block;
}
}
.mw-parser-output .IPA {
/**
* 解决[[Special:PermaLink/88653275#IPA模板不正确显示字体]]
* Chrome 128+将Windows上的默认CJK字体改为了Noto Sans CJK,因缺少部分注音字符导致显示异常
* 故手动指定更优的字体
* 由于{{IPA}}无法在所有情况下插入模板样式(例如[[Lorem ipsum|{{IPA|/ˌlɔːrəm ˈɪpsəm/}}]]),只能放置于此
*/
font-family:
"Charis", "Charis SIL", "Doulos SIL", "Gentium", "Gentium Alternative",
"GentiumAlt", "Code2000", "Segoe UI", system-ui, sans-serif;
}
/* Remove bullets when there are multiple edit page warnings */
ul.permissions-errors {
margin: 0;
}
ul.permissions-errors > li {
list-style: none;
}
.infobox .navbar {
display: none !important;
}
/* --- 维基导游风格彩色信息框 --- */
.voy-box {
margin: 1em 0;
border: 1px solid;
padding: 1em;
display: flex; /* 使用Flex布局,让图标和文字完美对齐 */
align-items: flex-start;
}
.voy-box-icon {
font-size: 3em; /* 图标大小 */
margin-right: 1em;
line-height: 1;
}
.voy-box-content {
flex: 1; /* 文字内容占满剩余空间 */
}
/* 定义颜色 */
/* 提示 (蓝色) */
.voy-box.notice { border-color: #3366cc; background-color: #f0f8ff; }
.voy-box.notice .voy-box-icon { color: #3366cc; }
/* 警告 (黄色) */
.voy-box.warning { border-color: #ffcc00; background-color: #fff8e1; }
.voy-box.warning .voy-box-icon { color: #ffcc00; }
/* 重要 (红色) */
.voy-box.important { border-color: #cc3333; background-color: #fff0f0; }
.voy-box.important .voy-box-icon { color: #cc3333; }
/* 完成 (绿色) */
.voy-box.ok { border-color: #339966; background-color: #f0fff0; }
.voy-box.ok .voy-box-icon { color: #339966; }
/* --- 热带气旋Infobox风暴色谱 --- */
.infobox.tc-cat-td .infobox-title { background-color: #AFFFFF; } /* 热带低压 */
.infobox.tc-cat-ts .infobox-title { background-color: #96FFFF; } /* 热带风暴 */
.infobox.tc-cat-c1 .infobox-title { background-color: #FFFF96; } /* 一级飓风 */
.infobox.tc-cat-c2 .infobox-title { background-color: #FFD273; } /* 二级飓风 */
.infobox.tc-cat-c3 .infobox-title { background-color: #FFB4B4; } /* 三级飓风 */
.infobox.tc-cat-c4 .infobox-title { background-color: #FF9696; } /* 四级飓风 */
.infobox.tc-cat-c5 .infobox-title { background-color: #C8A0C8; } /* 五级飓风 */
/* --- Blockland Wiki V2: 架空世界档案馆风格 --- */
/* ========================================= */
/* 样式 */
/* ========================================= */
/* ========================================= */
/* 全屏沉浸式 Banner (修复版:不破坏侧边栏) */
/* ========================================= */
.page-Main_Page .mw-body-header,
.page-Main_Page .citizen-body-header {
display: none !important;
}
.page-Main_Page .mw-body,
.page-Main_Page #content {
margin-top: 0 !important;
padding-top: 0 !important;
}
/* Banner 容器 */
.home-banner {
position: relative;
height: 600px;
width: 100%;
/* 这里修改上下边距解决不贴顶 */
margin-top: -50px;
margin-bottom: -100px;
z-index: 1;
}
.home-banner::before {
content: "";
position: absolute;
top: 0;
/* 修改图片大小,这里解决图片不靠边 */
width: 110vw;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
height: 100%;
background-image: url('https://cdn.jsdelivr.net/gh/KKBlockE/BlocklandPicturebed@main/main/20260130095720051.png');
background-size: cover;
background-position: center;
/* 虚化遮罩 */
-webkit-mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
z-index: -1;
pointer-events: none;
}
/* 文字层 */
.home-banner-overlay {
position: relative;
padding-top: 150px;
text-align: center;
z-index: 2;
}
.home-banner-overlay h1 {
color: #ffffff !important;
font-size: 4em;
font-weight: 900;
text-shadow: 0 4px 15px rgba(0,0,0,0.6);
margin: 0;
line-height: 1.2;
}
.home-banner-overlay p {
color: #f0f0f0 !important;
font-size: 1.4em;
text-shadow: 0 2px 5px rgba(0,0,0,0.8);
letter-spacing: 1px;
}
/* ========================================= */
/* PageBanner 专用样式 (放在Common.css以绕过过滤器) */
/* ========================================= */
/* ========================================= */
/* 最终修正版:天空优先 + 修复黑底 + 修复层级 */
/* ========================================= */
/* 1. 基础清理 (保持不变) */
body:has(.page-banner) .mw-body-header,
body:has(.page-banner) .citizen-body-header,
body:has(.page-banner) #firstHeading {
display: none !important;
}
body:has(.page-banner) .mw-body,
body:has(.page-banner) #content {
margin-top: 0 !important;
padding-top: 0 !important;
}
/* 2. Banner 主容器 */
.page-banner {
position: relative;
height: 660px;
width: 100%;
margin-top: -90px;
margin-bottom: -100px;
z-index: 1;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
/* ❌ 删掉了之前的 background: #000; 彻底解决黑底问题 */
}
/* 3. 背景层容器 (110vw 暴力宽) */
/* 修改背景层容器,让它自己负责图片的自适应铺满 */
.page-banner-bg {
position: absolute;
top: 0;
width: 110vw;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
height: 100%;
z-index: 0;
pointer-events: none;
overflow: hidden;
/* ✅ 新增:用 CSS 控制背景图片,完美替代 object-fit */
background-size: cover !important;
background-position: center 20% !important;
background-repeat: no-repeat !important;
/* 保持虚化遮罩不变 */
-webkit-mask-image: linear-gradient(to bottom, black 60%, transparent 100%);
mask-image: linear-gradient(to bottom, black 60%, transparent 100%);
}
/* ❌ 注意:如果你之前在 CSS 里写了 .page-banner-bg img { ... } 这一整段,请直接删掉它,已经不需要了! */
/* 4. 图片本体 (核心修改!) */
/* ❌ 删掉了之前的 ::after 黑色渐变层,避免遮挡文字 */
/* 5. 文字层 (强制最高层级) */
.page-banner-content {
position: relative;
padding-top: 150px;
text-align: center;
width: 100%;
/* ✅ 层级设为 10,绝对压在 z-index:0 的背景图上面 */
z-index: 10;
}
/* 6. 字体样式 (保持原样) */
.page-banner-local {
color: #ffffff !important;
font-family: 'Microsoft YaHei', sans-serif;
font-size: 4em;
font-weight: 900;
text-shadow: 0 4px 15px rgba(0,0,0,0.6);
margin: 0;
line-height: 1.2;
}
.page-banner-en {
color: #f0f0f0 !important;
font-size: 1.4em;
text-shadow: 0 2px 5px rgba(0,0,0,0.8);
letter-spacing: 1px;
margin-top: 10px;
font-weight: bold;
text-transform: uppercase;
}
body { overflow-x: hidden; }
/* Ambox 基础样式 */
table.ambox {
margin: 0px 10% 10px 10%; /* 上 右 下 左 */
border: 1px solid #aaa;
border-left: 10px solid #1e90ff; /* 默认蓝色 */
background: #fbfbfb;
width: 80%;
box-sizing: border-box;
}
table.ambox th.ambox-text,
table.ambox td.ambox-text {
padding: 0.25em 0.5em;
width: 100%;
}
table.ambox td.ambox-image {
padding: 2px 0 2px 0.5em;
text-align: center;
vertical-align: middle;
width: 52px; /* 图片区域宽度 */
}
/* ========================================= */
/* --- 29. Ambox Aero 色条修复补丁 (必加) --- */
/* ========================================= */
/* 强制恢复左侧边框的颜色 */
table.ambox-notice { border-left-color: #1e90ff !important; } /* 蓝 */
table.ambox-delete { border-left-color: #b22222 !important; } /* 红 */
table.ambox-content { border-left-color: #f28500 !important; } /* 橙 */
table.ambox-style { border-left-color: #f4c430 !important; } /* 黄 */
table.ambox-good { border-left-color: #66cc66 !important; } /* 绿 */
table.ambox-move { border-left-color: #9932cc !important; } /* 紫 */
/* 如果你还加了自定义的 funny */
table.ambox-funny { border-left-color: #FF69B4 !important; } /* 粉色 (举例) */
/* 确保边框样式是实线,否则可能不显示 */
table.ambox {
border-left-style: solid !important;
}
/* 修复 Citizen 嵌套 Navbox 分割线缺失 */
.navbox .navbox-subgroup {
border-top: 1px solid var(--border-color-base, #dddddd);
}
.navbox-group {
/* 确保侧边栏有明显的分割感 */
border-bottom: 1px solid var(--border-color-base, #dddddd) !important;
}
.navbox-list {
border-bottom: 1px solid var(--border-color-base, #dddddd) !important;
}
/* 最后一个元素去掉底边框,防止重叠 */
.navbox tr:last-child .navbox-group,
.navbox tr:last-child .navbox-list {
border-bottom: none !important;
}
/* ========================================= */
/* --- 30. 黑幕 (兼容链接与深色模式) --- */
/* ========================================= */
/* 基础样式:浅色模式下的黑幕 */
.heimu {
background-color: #252525;
color: #252525;
text-shadow: none;
transition: color 0.13s ease;
}
/* 1. 兼容链接:强制隐藏黑幕内部的链接颜色 */
.heimu a {
color: #252525;
transition: color 0.13s ease;
}
/* 鼠标划过、点击或选中黑幕时,显示常规文字 */
.heimu:hover,
.heimu:active,
.heimu:focus {
color: #ffffff;
}
/* 鼠标划过黑幕时,内部链接显示为浅蓝色(保证在深色背景上的可读性) */
.heimu:hover a,
.heimu:active a,
.heimu:focus a {
color: #66b2ff;
}
/* 鼠标单独悬停在链接上时的交互反馈 */
.heimu a:hover {
color: #99ccff;
text-decoration: underline;
}
/* ========================================= */
/* 2. 兼容深色模式 (针对 Citizen 皮肤) */
/* ========================================= */
/* ----------------------------------------- */
/* 手动暗色 + 纯黑关闭 (默认暗色) */
/* ----------------------------------------- */
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu {
background-color: #ADBEDF;
color: #ADBEDF;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu a {
color: #ADBEDF;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu:hover,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu:active,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu:focus {
color: #252525;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu:hover a,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu:active a,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu:focus a {
color: #0645ad;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-0 .heimu a:hover {
color: #0b0080;
text-decoration: underline;
}
/* ----------------------------------------- */
/* 手动暗色 + 纯黑开启 */
/* ----------------------------------------- */
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu {
background-color: #BDBEBE;
color: #BDBEBE;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu a {
color: #BDBEBE;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu:hover,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu:active,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu:focus {
color: #252525;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu:hover a,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu:active a,
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu:focus a {
color: #0645ad;
}
html.skin-theme-clientpref-night.citizen-feature-pure-black-clientpref-1 .heimu a:hover {
color: #0b0080;
text-decoration: underline;
}
/* ========================================= */
/* 跟随系统 且 系统处于深色模式时 */
/* ========================================= */
/* ----------------------------------------- */
/* 自动暗色 + 纯黑关闭 */
/* ----------------------------------------- */
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu {
background-color: #ADBEDF;
color: #ADBEDF;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu a {
color: #ADBEDF;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu:hover,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu:active,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu:focus {
color: #252525;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu:hover a,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu:active a,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu:focus a {
color: #0645ad;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-0 .heimu a:hover {
color: #0b0080;
text-decoration: underline;
}
/* ----------------------------------------- */
/* 自动暗色 + 纯黑开启 */
/* ----------------------------------------- */
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu {
background-color: #BDBEBE;
color: #BDBEBE;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu a {
color: #BDBEBE;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu:hover,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu:active,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu:focus {
color: #252525;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu:hover a,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu:active a,
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu:focus a {
color: #0645ad;
}
html.skin-theme-clientpref-os.citizen-feature-pure-black-clientpref-1 .heimu a:hover {
color: #0b0080;
text-decoration: underline;
}
}
/* ----------------------------------------- */
/* 额外补充内容 */
/* ----------------------------------------- */
/* ========== Blockland Main Page ========== */
/* ========== Blockland Main Page ========== */
.bl-mainpage {
max-width: 1240px;
margin: 0 auto;
padding: 0.5rem 0 1.5rem 0;
color: #202122;
}
/* ===== 顶部横幅 ===== */
.bl-hero {
margin-bottom: 28px;
border-radius: 20px;
background: linear-gradient(135deg, #eef2ff 0%, #e0e7ff 50%, #dbeafe 100%);
border: 1px solid #c7d2fe;
}
.bl-hero-inner {
display: flex;
justify-content: space-between;
align-items: center;
gap: 24px;
padding: 32px 36px;
}
.bl-hero-text {
flex: 1 1 auto;
min-width: 0;
}
.bl-hero-kicker {
display: flex;
align-items: center;
gap: 10px;
font-size: 0.85em;
font-weight: 600;
letter-spacing: 0.08em;
color: #6b7280;
text-transform: uppercase;
margin-bottom: 14px;
}
.bl-hero-kicker img {
border-radius: 8px;
}
.bl-hero-title {
font-size: 2.2em;
font-weight: 800;
line-height: 1.2;
color: #1f2937;
margin-bottom: 12px;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
.bl-hero-desc {
font-size: 1em;
color: #4b5563;
line-height: 1.7;
margin-bottom: 20px;
max-width: 520px;
}
.bl-hero-actions {
display: flex;
gap: 12px;
flex-wrap: wrap;
}
.bl-btn {
display: inline-block;
padding: 10px 24px;
border-radius: 10px;
font-size: 0.95em;
font-weight: 600;
text-decoration: none !important;
transition: all 0.2s ease;
}
.bl-btn a {
color: inherit !important;
text-decoration: none !important;
}
.bl-btn-primary {
background: linear-gradient(135deg, #6366f1, #8b5cf6);
color: #fff !important;
box-shadow: 0 4px 14px rgba(99, 102, 241, 0.35);
}
.bl-btn-primary:hover {
transform: translateY(-2px);
box-shadow: 0 8px 25px rgba(99, 102, 241, 0.45);
}
.bl-btn-secondary {
background: rgba(255, 255, 255, 0.8);
color: #374151 !important;
border: 1px solid #d1d5db;
}
.bl-btn-secondary:hover {
background: #fff;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
/* 条目统计 */
.bl-stat {
flex: 0 0 200px;
text-align: center;
padding: 22px 20px;
background: rgba(255, 255, 255, 0.7);
border: 1px solid #c7d2fe;
border-radius: 16px;
align-self: center;
}
.bl-stat-icon {
font-size: 1.6em;
color: #6366f1;
margin-bottom: 8px;
}
.bl-stat-label {
font-size: 0.85em;
color: #6b7280;
margin-bottom: 6px;
letter-spacing: 0.05em;
}
.bl-stat-number {
font-size: 2.2em;
font-weight: 800;
line-height: 1.1;
color: #4f46e5;
}
.bl-stat-number a {
color: #4f46e5 !important;
text-decoration: none !important;
}
.bl-stat-number a:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
.bl-stat-note {
margin-top: 8px;
font-size: 0.8em;
color: #9ca3af;
}
/* =============================================
Hero 内嵌搜索栏
============================================= */
.bl-hero-search {
padding: 0 36px 8px;
}
.bl-hero-search-form {
display: flex;
gap: 10px;
align-items: center;
background: rgba(255, 255, 255, 0.85);
border: 1px solid #c7d2fe;
border-radius: 14px;
padding: 6px 6px 6px 20px;
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04);
transition: all 0.2s ease;
backdrop-filter: blur(8px);
}
.bl-hero-search-form:focus-within {
border-color: #6366f1;
box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15);
}
.bl-hero-search-input {
flex: 1;
border: none;
outline: none;
font-size: 0.95em;
padding: 10px 0;
color: #374151;
background: transparent;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
.bl-hero-search-input::placeholder {
color: #9ca3af;
}
.bl-hero-search-btn {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 10px 22px;
background: linear-gradient(135deg, #6366f1, #8b5cf6);
color: #fff;
border: none;
border-radius: 10px;
font-size: 0.9em;
font-weight: 600;
cursor: pointer;
transition: all 0.2s ease;
white-space: nowrap;
}
.bl-hero-search-btn:hover {
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(99, 102, 241, 0.35);
}
.bl-hero-create-btn {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 10px 18px;
background: rgba(255, 255, 255, 0.9);
color: #16a34a;
border: 1px solid #bbf7d0;
border-radius: 10px;
font-size: 0.9em;
font-weight: 600;
text-decoration: none !important;
transition: all 0.2s ease;
white-space: nowrap;
}
.bl-hero-create-btn:hover {
background: #f0fdf4;
transform: translateY(-1px);
}
/* =============================================
Hero 内嵌统计栏
============================================= */
.bl-hero-stats {
display: flex;
gap: 8px;
padding: 12px 36px 4px;
flex-wrap: wrap;
}
.bl-hero-stat {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 14px;
background: rgba(255, 255, 255, 0.6);
border: 1px solid rgba(199, 210, 254, 0.5);
border-radius: 10px;
flex: 1 0 auto;
min-width: 90px;
max-width: 160px;
transition: all 0.2s ease;
}
.bl-hero-stat:hover {
background: rgba(255, 255, 255, 0.85);
border-color: #6366f1;
}
.bl-hero-stat-icon {
font-size: 1.2em;
color: #6366f1;
flex: 0 0 auto;
line-height: 1;
}
.bl-hero-stat-info {
display: flex;
flex-direction: column;
gap: 0;
}
.bl-hero-stat-number {
font-size: 1em;
font-weight: 800;
color: #1f2937;
line-height: 1.2;
}
.bl-hero-stat-number a {
color: #1f2937 !important;
text-decoration: none !important;
}
.bl-hero-stat-number a:hover {
color: #6366f1 !important;
}
.bl-hero-stat-label {
font-size: 0.65em;
color: #9ca3af;
letter-spacing: 0.03em;
text-transform: uppercase;
}
/* =============================================
Hero 内嵌快捷入口
============================================= */
.bl-hero-links {
display: flex;
gap: 6px;
padding: 12px 36px 28px;
flex-wrap: wrap;
}
.bl-hero-link {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 8px 16px;
background: rgba(255, 255, 255, 0.5);
border: 1px solid rgba(199, 210, 254, 0.4);
border-radius: 10px;
font-size: 0.85em;
font-weight: 600;
color: #4b5563;
transition: all 0.2s ease;
}
.bl-hero-link:hover {
background: rgba(255, 255, 255, 0.85);
border-color: #6366f1;
transform: translateY(-2px);
}
.bl-hero-link i {
font-size: 1.15em;
color: #6366f1;
}
.bl-hero-link a {
color: #4b5563 !important;
text-decoration: none !important;
}
.bl-hero-link a:hover {
color: #4f46e5 !important;
}
/* ===== 快捷入口栏 ===== */
.bl-quick-bar {
display: flex;
gap: 12px;
margin-bottom: 28px;
justify-content: center;
flex-wrap: wrap;
}
.bl-quick-item {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
padding: 14px 18px;
background: #fff;
border: 1px solid #e5e7eb;
border-radius: 14px;
min-width: 80px;
transition: all 0.2s ease;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.bl-quick-item:hover {
transform: translateY(-4px);
box-shadow: 0 12px 28px rgba(0, 0, 0, 0.08);
border-color: #6366f1;
}
.bl-quick-item i {
font-size: 1.5em;
color: #6366f1;
transition: transform 0.2s ease;
}
.bl-quick-item:hover i {
transform: scale(1.15);
}
.bl-quick-item span {
font-size: 0.82em;
font-weight: 600;
color: #374151;
}
.bl-quick-item span a {
color: #374151 !important;
text-decoration: none !important;
}
/* ===== 主体布局 ===== */
.bl-grid {
display: flex;
gap: 24px;
align-items: flex-start;
}
.bl-maincol {
flex: 1 1 auto;
min-width: 0;
}
.bl-sidecol {
flex: 0 0 320px;
}
/* ===== 卡片 ===== */
.bl-box {
margin-bottom: 22px;
background: #fff;
border: 1px solid #e5e7eb;
border-radius: 16px;
overflow: hidden;
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04);
}
.bl-box-header {
display: flex;
align-items: center;
gap: 10px;
padding: 14px 18px;
background: #f9fafb;
border-bottom: 1px solid #e5e7eb;
}
.bl-box-icon {
font-size: 1.2em;
color: #6366f1;
display: flex;
align-items: center;
}
.bl-box-title {
flex: 1;
font-size: 1em;
font-weight: 700;
color: #1f2937;
letter-spacing: 0.02em;
}
.bl-box-badge {
font-size: 0.65em;
font-weight: 700;
letter-spacing: 0.08em;
padding: 3px 10px;
border-radius: 20px;
background: linear-gradient(135deg, #6366f1, #8b5cf6);
color: #fff;
text-transform: uppercase;
}
.bl-box-body {
padding: 16px 18px;
}
/* ===== 地图容器 ===== */
.bl-map-wrap {
padding: 12px;
background: #f9fafb;
border: 1px dashed #d1d5db;
border-radius: 10px;
text-align: center;
min-height: 320px;
}
.bl-map-wrap img,
.bl-map-wrap svg {
max-width: 100%;
height: auto;
}
/* ===== 冷知识列表 ===== */
.bl-list-trivia {
list-style: none;
padding: 0;
margin: 0;
}
.bl-list-trivia li {
display: flex;
gap: 14px;
padding: 14px 0;
border-bottom: 1px solid #f3f4f6;
margin-bottom: 0;
background: transparent !important;
border-left: 0 !important;
border-right: 0 !important;
border-top: 0 !important;
box-shadow: none !important;
}
.bl-list-trivia li:last-child {
border-bottom: none;
}
.bl-trivia-marker {
flex: 0 0 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
background: linear-gradient(135deg, #6366f1, #8b5cf6);
color: #fff;
font-size: 0.75em;
font-weight: 800;
border-radius: 10px;
margin-top: 2px;
}
.bl-trivia-text {
flex: 1;
font-size: 0.92em;
line-height: 1.7;
color: #4b5563;
}
/* ===== 管理组名单 ===== */
.bl-team-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
}
.bl-team-card {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
gap: 6px;
padding: 18px 10px 14px;
background: #f9fafb;
border: 1px solid #e5e7eb;
border-radius: 14px;
transition: all 0.2s ease;
}
.bl-team-card:hover {
border-color: #6366f1;
box-shadow: 0 4px 20px rgba(99, 102, 241, 0.12);
transform: translateY(-2px);
}
.bl-team-avatar {
width: 64px;
height: 64px;
border-radius: 50%;
overflow: hidden;
border: 2px solid #e5e7eb;
flex-shrink: 0;
transition: border-color 0.2s ease;
}
.bl-team-card:hover .bl-team-avatar {
border-color: #6366f1;
}
.bl-team-avatar img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.bl-team-name {
font-size: 0.92em;
font-weight: 700;
color: #1f2937;
margin-top: 4px;
line-height: 1.3;
word-break: break-word;
}
.bl-team-tag {
font-size: 0.7em;
font-weight: 600;
letter-spacing: 0.03em;
padding: 2px 10px;
border-radius: 6px;
background: linear-gradient(135deg, #6366f1, #8b5cf6);
color: #fff;
white-space: nowrap;
}
.bl-team-social {
display: inline-flex;
align-items: center;
gap: 3px;
margin-top: 2px;
font-size: 0.78em;
color: #4f46e5 !important;
text-decoration: none !important;
font-weight: 600;
}
.bl-team-social:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
/* 管理组响应式 */
@media (max-width: 980px) {
.bl-team-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 640px) {
.bl-team-grid {
grid-template-columns: 1fr;
}
}
/* ===== 导航网格 ===== */
.bl-navgrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 10px;
}
.bl-navitem {
padding: 12px 14px;
background: #f9fafb;
border: 1px solid #e5e7eb;
border-radius: 10px;
text-align: center;
font-weight: 600;
font-size: 0.92em;
transition: all 0.2s ease;
}
.bl-navitem:hover {
background: linear-gradient(135deg, #6366f1, #8b5cf6);
border-color: #6366f1;
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(99, 102, 241, 0.2);
}
.bl-navitem a {
display: block;
color: #374151 !important;
text-decoration: none !important;
}
.bl-navitem:hover a {
color: #fff !important;
}
/* ===== 推荐阅读列表 ===== */
.bl-rec-list {
display: flex;
flex-direction: column;
gap: 10px;
}
.bl-rec-item {
display: flex;
align-items: center;
gap: 12px;
padding: 10px 12px;
background: #f9fafb;
border: 1px solid #e5e7eb;
border-radius: 10px;
transition: all 0.2s ease;
}
.bl-rec-item:hover {
background: #fff;
border-color: #6366f1;
transform: translateX(4px);
box-shadow: 0 4px 16px rgba(99, 102, 241, 0.1);
}
.bl-rec-text {
flex: 1;
min-width: 0;
}
.bl-rec-name {
font-weight: 700;
font-size: 0.92em;
color: #374151;
}
.bl-rec-name a {
color: #374151 !important;
text-decoration: none !important;
}
.bl-rec-name a:hover {
color: #6366f1 !important;
}
.bl-rec-desc {
font-size: 0.78em;
color: #9ca3af;
margin-top: 2px;
}
/* ===== 典范条目 ===== */
.bl-featured {
display: flex;
flex-direction: column;
gap: 10px;
}
.bl-featured-img {
text-align: center;
border-radius: 10px;
overflow: hidden;
}
.bl-featured-img img {
width: 100%;
height: auto;
border-radius: 10px;
display: block;
}
.bl-featured-title {
font-size: 1.05em;
font-weight: 700;
color: #1f2937;
line-height: 1.4;
}
.bl-featured-title a {
color: #1f2937 !important;
text-decoration: none !important;
}
.bl-featured-title a:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
.bl-featured-desc {
font-size: 0.85em;
line-height: 1.7;
color: #4b5563;
}
.bl-featured-link {
font-size: 0.85em;
font-weight: 600;
}
.bl-featured-link a {
color: #4f46e5 !important;
text-decoration: none !important;
}
.bl-featured-link a:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
/* ===== 纯文本说明 ===== */
.bl-plaintext,
.bl-plaintext p,
.bl-box-body p {
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
outline: 0 !important;
padding: 0 !important;
margin: 0 0 0.8em 0;
color: #4b5563;
line-height: 1.7;
display: block;
}
/* ===== 通用列表 ===== */
.bl-list {
margin: 0;
padding-left: 1.35em;
}
.bl-list li {
margin-bottom: 0.55em;
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
}
/* ===== 页脚导航 ===== */
.bl-footer-nav {
margin-top: 24px;
}
.bl-footer-nav > * + * {
margin-top: 14px;
}
/* ===== 隐藏首页标题 ===== */
.page-Main_Page #firstHeading,
.page-首页 #firstHeading {
display: none;
}
/* =============================================
深色模式兼容(补充 Citizen.css 未覆盖的新组件)
============================================= */
/* ----- 手动深色模式 (night) ----- */
/* Hero 描述文字 */
html.skin-theme-clientpref-night .bl-hero-desc {
color: var(--color-base-0, #c8ccd1) !important;
}
/* Hero 按钮 */
html.skin-theme-clientpref-night .bl-btn-secondary {
background: rgba(255, 255, 255, 0.08) !important;
border-color: rgba(255, 255, 255, 0.2) !important;
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-btn-secondary:hover {
background: rgba(255, 255, 255, 0.15) !important;
}
/* 统计图标 */
html.skin-theme-clientpref-night .bl-stat-icon {
color: var(--color-primary, #6ba4ff) !important;
}
/* 快捷入口栏 */
html.skin-theme-clientpref-night .bl-quick-item {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-night .bl-quick-item i {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-quick-item span,
html.skin-theme-clientpref-night .bl-quick-item span a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-quick-item:hover {
border-color: var(--color-primary, #6ba4ff) !important;
}
/* 卡片头部 */
html.skin-theme-clientpref-night .bl-box-header {
background: var(--color-surface-2, #2d2e2f) !important;
border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-night .bl-box-icon {
color: var(--color-primary, #6ba4ff) !important;
}
/* 冷知识列表 */
html.skin-theme-clientpref-night .bl-list-trivia li {
border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-night .bl-trivia-text {
color: var(--color-base-0, #c8ccd1) !important;
}
/* 推荐阅读列表 */
html.skin-theme-clientpref-night .bl-rec-item {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-night .bl-rec-item:hover {
background: var(--color-surface-2, #2d2e2f) !important;
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-rec-name,
html.skin-theme-clientpref-night .bl-rec-name a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-rec-name a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-night .bl-rec-desc {
color: var(--color-base-30, #a0a0a0) !important;
}
/* 典范条目 */
html.skin-theme-clientpref-night .bl-featured-title,
html.skin-theme-clientpref-night .bl-featured-title a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-featured-title a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-featured-desc {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-night .bl-featured-link a {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-featured-link a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
/* 纯文本说明 */
html.skin-theme-clientpref-night .bl-plaintext,
html.skin-theme-clientpref-night .bl-plaintext p,
html.skin-theme-clientpref-night .bl-box-body p {
color: var(--color-base-0, #c8ccd1) !important;
}
/* 地图容器 */
html.skin-theme-clientpref-night .bl-map-wrap {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.15) !important;
}
/* 管理组名单 */
html.skin-theme-clientpref-night .bl-team-card {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-night .bl-team-card:hover {
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-team-avatar {
border-color: rgba(255, 255, 255, 0.15) !important;
}
html.skin-theme-clientpref-night .bl-team-card:hover .bl-team-avatar {
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-team-name {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-team-social {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-team-social:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
/* ----- 系统深色模式 (os) ----- */
@media (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .bl-hero-desc {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-os .bl-btn-secondary {
background: rgba(255, 255, 255, 0.08) !important;
border-color: rgba(255, 255, 255, 0.2) !important;
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-btn-secondary:hover {
background: rgba(255, 255, 255, 0.15) !important;
}
html.skin-theme-clientpref-os .bl-stat-icon {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-quick-item {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-os .bl-quick-item i {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-quick-item span,
html.skin-theme-clientpref-os .bl-quick-item span a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-quick-item:hover {
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-box-header {
background: var(--color-surface-2, #2d2e2f) !important;
border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-os .bl-box-icon {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-list-trivia li {
border-bottom-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-os .bl-trivia-text {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-os .bl-rec-item {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-os .bl-rec-item:hover {
background: var(--color-surface-2, #2d2e2f) !important;
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-rec-name,
html.skin-theme-clientpref-os .bl-rec-name a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-rec-name a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-os .bl-rec-desc {
color: var(--color-base-30, #a0a0a0) !important;
}
/* 典范条目 */
html.skin-theme-clientpref-os .bl-featured-title,
html.skin-theme-clientpref-os .bl-featured-title a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-featured-title a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-featured-desc {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-os .bl-featured-link a {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-featured-link a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-os .bl-plaintext,
html.skin-theme-clientpref-os .bl-plaintext p,
html.skin-theme-clientpref-os .bl-box-body p {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-os .bl-map-wrap {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.15) !important;
}
/* 管理组名单 */
html.skin-theme-clientpref-os .bl-team-card {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-os .bl-team-card:hover {
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-team-avatar {
border-color: rgba(255, 255, 255, 0.15) !important;
}
html.skin-theme-clientpref-os .bl-team-card:hover .bl-team-avatar {
border-color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-team-name {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-team-social {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-team-social:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
}
/* ===== 响应式:平板 ===== */
@media (max-width: 980px) {
.bl-grid {
display: block;
}
.bl-sidecol {
margin-top: 18px;
}
.bl-hero-inner {
flex-direction: column;
text-align: center;
padding: 28px 24px;
}
.bl-hero-desc {
max-width: 100%;
}
.bl-hero-actions {
justify-content: center;
}
.bl-stat {
flex: none;
width: 100%;
max-width: 260px;
}
.bl-quick-bar {
gap: 8px;
}
.bl-quick-item {
min-width: 70px;
padding: 10px 14px;
}
.bl-search-form {
flex-wrap: wrap;
padding: 10px;
}
.bl-search-input {
width: 100%;
flex: 1 1 100%;
padding: 8px 4px;
}
.bl-search-btn,
.bl-create-btn {
flex: 1;
justify-content: center;
}
.bl-stats-bar {
gap: 8px;
}
.bl-stats-item {
min-width: 80px;
max-width: 160px;
padding: 10px 14px;
}
.bl-hero-search {
padding: 0 24px 8px;
}
.bl-hero-stats {
padding: 12px 24px 4px;
justify-content: center;
}
.bl-hero-stat {
min-width: 75px;
max-width: 130px;
padding: 6px 10px;
}
.bl-hero-stat-icon {
font-size: 1em;
}
.bl-hero-stat-number {
font-size: 0.85em;
}
.bl-hero-links {
padding: 12px 24px 24px;
justify-content: center;
}
.bl-hero-link {
padding: 6px 12px;
font-size: 0.78em;
}
}
/* ===== 响应式:手机 ===== */
@media (max-width: 700px) {
.bl-hero-title {
font-size: 1.5em;
}
.bl-hero-desc {
font-size: 0.92em;
}
.bl-hero-inner {
padding: 22px 18px;
}
.bl-stat {
padding: 16px;
}
.bl-stat-number {
font-size: 1.8em;
}
.bl-quick-bar {
gap: 6px;
}
.bl-quick-item {
min-width: 56px;
padding: 8px 10px;
}
.bl-quick-item i {
font-size: 1.2em;
}
.bl-quick-item span {
font-size: 0.7em;
}
.bl-navgrid {
grid-template-columns: 1fr;
}
.bl-box-header {
padding: 12px 14px;
}
.bl-box-body {
padding: 12px 14px;
}
.bl-trivia-marker {
flex: 0 0 26px;
height: 26px;
font-size: 0.65em;
}
.bl-trivia-text {
font-size: 0.85em;
}
.bl-search-form {
flex-direction: column;
padding: 8px;
gap: 8px;
}
.bl-search-input {
width: 100%;
flex: none;
padding: 10px 4px;
}
.bl-search-btn,
.bl-create-btn {
width: 100%;
justify-content: center;
}
.bl-stats-bar {
gap: 6px;
}
.bl-stats-item {
min-width: 70px;
max-width: 140px;
padding: 8px 10px;
gap: 6px;
}
.bl-stats-icon {
font-size: 1.1em;
}
.bl-stats-number {
font-size: 1em;
}
.bl-hero-search {
padding: 0 18px 6px;
}
.bl-hero-search-form {
flex-direction: column;
padding: 8px;
gap: 8px;
}
.bl-hero-search-input {
width: 100%;
flex: none;
padding: 10px 4px;
}
.bl-hero-search-btn,
.bl-hero-create-btn {
width: 100%;
justify-content: center;
}
.bl-hero-stats {
padding: 8px 18px 2px;
gap: 6px;
justify-content: center;
}
.bl-hero-stat {
min-width: 60px;
max-width: 110px;
padding: 5px 8px;
gap: 5px;
}
.bl-hero-stat-icon {
font-size: 0.9em;
}
.bl-hero-stat-number {
font-size: 0.78em;
}
.bl-hero-stat-label {
font-size: 0.55em;
}
.bl-hero-links {
padding: 8px 18px 20px;
gap: 4px;
justify-content: center;
}
.bl-hero-link {
padding: 5px 10px;
font-size: 0.72em;
gap: 4px;
}
.bl-hero-link i {
font-size: 1em;
}
.bl-news-item {
flex-direction: column;
gap: 4px;
}
.bl-news-date {
flex: none;
}
}
/* ========================================= */
/* 移动端适配 (当屏幕宽度小于 768px 时生效) */
/* ========================================= */
@media screen and (max-width: 768px) {
/* 1. 压缩 Banner 整体高度与负边距 */
.page-banner {
height: 350px !important; /* 手机端降低整体高度 */
margin-top: -50px !important; /* 适配手机端较窄的顶部导航栏 */
margin-bottom: -50px !important;
}
/* 2. 减少文字层顶部的过度留白 */
.page-banner-content {
padding-top: 80px !important;
}
/* 3. 强行缩小字体(必须使用 !important 覆盖 HTML 里的内联样式) */
.page-banner-local {
font-size: 2.2em !important; /* 主标题缩小,防止撑爆屏幕或异常换行 */
padding: 0 15px !important; /* 两侧增加一点安全内边距 */
}
.page-banner-en {
font-size: 1.1em !important; /* 英文副标题缩小 */
margin-top: 5px !important;
}
/* 4. 优化背景图遮罩比例(可选:如果在手机上觉得不够黑,可以调整这里) */
.page-banner-bg {
-webkit-mask-image: linear-gradient(to bottom, black 40%, transparent 100%) !important;
mask-image: linear-gradient(to bottom, black 40%, transparent 100%) !important;
}
/* 5. Ambox 提示框手机端全宽显示,释放空间 */
table.ambox {
width: 96% !important;
margin: 0px 2% 10px 2% !important; /* 左右边距从10%缩小到2% */
}
}
/* 让 .bl-mainpage 占据全宽 */
.bl-mainpage {
max-width: 100% !important;
width: 100% !important;
margin-left: 0 !important;
margin-right: 0 !important;
padding-left: 0 !important;
padding-right: 0 !important;
}
/* 强制 .page-banner 基于视口全宽,突破所有父级限制 */
.page-banner {
width: 100vw !important;
max-width: 100vw !important;
position: relative !important;
left: 50% !important;
right: 50% !important;
margin-left: -50vw !important;
margin-right: -50vw !important;
}
/* 当页面加载完成后执行 */
/* =============================================
搜索与创建栏
============================================= */
.bl-search-bar {
margin-bottom: 20px;
}
.bl-search-form {
display: flex;
gap: 10px;
align-items: center;
background: #fff;
border: 1px solid #e5e7eb;
border-radius: 14px;
padding: 6px 6px 6px 18px;
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.04);
transition: all 0.2s ease;
}
.bl-search-form:focus-within {
border-color: #6366f1;
box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}
.bl-search-input {
flex: 1;
border: none;
outline: none;
font-size: 0.95em;
padding: 10px 0;
color: #374151;
background: transparent;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
.bl-search-input::placeholder {
color: #9ca3af;
}
.bl-search-btn {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 10px 20px;
background: linear-gradient(135deg, #6366f1, #8b5cf6);
color: #fff;
border: none;
border-radius: 10px;
font-size: 0.9em;
font-weight: 600;
cursor: pointer;
transition: all 0.2s ease;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
.bl-search-btn:hover {
transform: translateY(-1px);
box-shadow: 0 4px 14px rgba(99, 102, 241, 0.35);
}
.bl-create-btn {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 10px 18px;
background: #f0fdf4;
color: #16a34a;
border: 1px solid #bbf7d0;
border-radius: 10px;
font-size: 0.9em;
font-weight: 600;
text-decoration: none !important;
transition: all 0.2s ease;
white-space: nowrap;
}
.bl-create-btn:hover {
background: #dcfce7;
transform: translateY(-1px);
box-shadow: 0 4px 12px rgba(22, 163, 74, 0.2);
}
/* =============================================
站点统计栏
============================================= */
.bl-stats-bar {
display: flex;
gap: 12px;
margin-bottom: 24px;
flex-wrap: wrap;
justify-content: center;
}
.bl-stats-item {
display: flex;
align-items: center;
gap: 10px;
padding: 12px 18px;
background: #fff;
border: 1px solid #e5e7eb;
border-radius: 12px;
min-width: 110px;
flex: 1 0 auto;
max-width: 180px;
transition: all 0.2s ease;
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.bl-stats-item:hover {
transform: translateY(-2px);
box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
border-color: #6366f1;
}
.bl-stats-icon {
font-size: 1.4em;
color: #6366f1;
flex: 0 0 auto;
}
.bl-stats-info {
display: flex;
flex-direction: column;
min-width: 0;
}
.bl-stats-number {
font-size: 1.15em;
font-weight: 800;
color: #1f2937;
line-height: 1.2;
}
.bl-stats-number a {
color: #1f2937 !important;
text-decoration: none !important;
}
.bl-stats-number a:hover {
color: #6366f1 !important;
}
.bl-stats-label {
font-size: 0.72em;
color: #9ca3af;
letter-spacing: 0.03em;
}
/* =============================================
卡片"更多"链接
============================================= */
.bl-box-more {
margin-left: auto;
font-size: 0.82em;
font-weight: 600;
color: #6366f1;
text-decoration: none !important;
display: inline-flex;
align-items: center;
gap: 2px;
transition: all 0.2s ease;
}
.bl-box-more:hover {
color: #4f46e5;
gap: 4px;
}
.bl-box-more-wrap {
margin-left: auto;
font-size: 0.82em;
font-weight: 600;
}
.bl-box-more-wrap a {
color: #6366f1;
text-decoration: none !important;
display: inline-flex;
align-items: center;
gap: 2px;
transition: all 0.2s ease;
}
.bl-box-more-wrap a:hover {
color: #4f46e5;
}
/* =============================================
最近新闻
============================================= */
.bl-news-list {
display: flex;
flex-direction: column;
gap: 2px;
}
.bl-news-item {
display: flex;
align-items: baseline;
gap: 12px;
padding: 10px 0;
border-bottom: 1px solid #f3f4f6;
transition: background 0.15s ease;
}
.bl-news-item:last-child {
border-bottom: none;
}
.bl-news-date {
flex: 0 0 60px;
font-size: 0.78em;
font-weight: 700;
color: #6366f1;
letter-spacing: 0.02em;
white-space: nowrap;
}
.bl-news-text {
font-size: 0.9em;
color: #374151;
line-height: 1.5;
}
.bl-news-text a {
color: #4f46e5 !important;
text-decoration: none !important;
font-weight: 600;
}
.bl-news-text a:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
/* =============================================
快速上传
============================================= */
.bl-upload-action {
display: flex;
align-items: center;
gap: 12px;
padding: 14px 16px;
background: linear-gradient(135deg, #eef2ff, #e0e7ff);
border: 1px dashed #c7d2fe;
border-radius: 12px;
text-decoration: none !important;
transition: all 0.2s ease;
}
.bl-upload-action:hover {
background: linear-gradient(135deg, #e0e7ff, #c7d2fe);
border-color: #6366f1;
transform: translateY(-1px);
}
.bl-upload-action i:first-child {
font-size: 1.6em;
color: #6366f1;
}
.bl-upload-action span {
flex: 1;
font-size: 0.9em;
font-weight: 600;
color: #374151;
}
.bl-upload-action i:last-child {
font-size: 1.2em;
color: #6366f1;
}
/* =============================================
近期更改
============================================= */
.bl-recent-list {
font-size: 0.88em;
line-height: 1.7;
}
.bl-recent-list ul {
margin: 0;
padding-left: 1.2em;
list-style: none;
}
.bl-recent-list li {
padding: 4px 0;
color: #4b5563;
}
.bl-recent-list li a {
color: #4f46e5 !important;
text-decoration: none !important;
font-weight: 500;
}
.bl-recent-list li a:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
/* =============================================
深色模式:搜索栏 + 统计栏 + 新闻 + 上传 + 近期更改
============================================= */
/* ----- 手动深色模式 (night) ----- */
html.skin-theme-clientpref-night .bl-search-form {
background: var(--color-surface-1, #202122);
border-color: rgba(255, 255, 255, 0.12);
}
html.skin-theme-clientpref-night .bl-search-form:focus-within {
border-color: var(--color-primary, #6ba4ff);
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15);
}
html.skin-theme-clientpref-night .bl-search-input {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-night .bl-search-input::placeholder {
color: rgba(255, 255, 255, 0.35);
}
html.skin-theme-clientpref-night .bl-create-btn {
background: rgba(34, 197, 94, 0.15);
color: #4ade80;
border-color: rgba(34, 197, 94, 0.25);
}
html.skin-theme-clientpref-night .bl-create-btn:hover {
background: rgba(34, 197, 94, 0.25);
}
html.skin-theme-clientpref-night .bl-stats-item {
background: var(--color-surface-1, #202122);
border-color: rgba(255, 255, 255, 0.1);
}
html.skin-theme-clientpref-night .bl-stats-item:hover {
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-stats-icon {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-stats-number {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-night .bl-stats-number a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-stats-number a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-stats-label {
color: rgba(255, 255, 255, 0.4);
}
html.skin-theme-clientpref-night .bl-box-more {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-box-more:hover {
color: var(--color-primary--hover, #9bc4ff);
}
html.skin-theme-clientpref-night .bl-box-more-wrap a {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-box-more-wrap a:hover {
color: var(--color-primary--hover, #9bc4ff);
}
html.skin-theme-clientpref-night .bl-news-item {
border-bottom-color: rgba(255, 255, 255, 0.06);
}
html.skin-theme-clientpref-night .bl-news-date {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-news-text {
color: var(--color-base-0, #c8ccd1);
}
html.skin-theme-clientpref-night .bl-news-text a {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-news-text a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-night .bl-upload-action {
background: rgba(99, 102, 241, 0.1);
border-color: rgba(99, 102, 241, 0.2);
}
html.skin-theme-clientpref-night .bl-upload-action:hover {
background: rgba(99, 102, 241, 0.18);
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-upload-action i:first-child {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-upload-action span {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-night .bl-upload-action i:last-child {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-recent-list li {
color: var(--color-base-0, #c8ccd1);
}
html.skin-theme-clientpref-night .bl-recent-list li a {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-recent-list li a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
/* ----- Hero 内嵌组件深色模式 ----- */
html.skin-theme-clientpref-night .bl-hero-search-form {
background: rgba(32, 33, 34, 0.85);
border-color: rgba(255, 255, 255, 0.12);
}
html.skin-theme-clientpref-night .bl-hero-search-form:focus-within {
border-color: var(--color-primary, #6ba4ff);
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15);
}
html.skin-theme-clientpref-night .bl-hero-search-input {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-night .bl-hero-search-input::placeholder {
color: rgba(255, 255, 255, 0.35);
}
html.skin-theme-clientpref-night .bl-hero-create-btn {
background: rgba(34, 197, 94, 0.12);
color: #4ade80;
border-color: rgba(34, 197, 94, 0.2);
}
html.skin-theme-clientpref-night .bl-hero-create-btn:hover {
background: rgba(34, 197, 94, 0.2);
}
html.skin-theme-clientpref-night .bl-hero-stat {
background: rgba(32, 33, 34, 0.5);
border-color: rgba(255, 255, 255, 0.08);
}
html.skin-theme-clientpref-night .bl-hero-stat:hover {
background: rgba(32, 33, 34, 0.75);
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-hero-stat-icon {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-hero-stat-number {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-night .bl-hero-stat-number a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-hero-stat-number a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-night .bl-hero-stat-label {
color: rgba(255, 255, 255, 0.35);
}
html.skin-theme-clientpref-night .bl-hero-link {
background: rgba(32, 33, 34, 0.4);
border-color: rgba(255, 255, 255, 0.06);
color: var(--color-base-0, #c8ccd1);
}
html.skin-theme-clientpref-night .bl-hero-link:hover {
background: rgba(32, 33, 34, 0.7);
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-hero-link i {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-night .bl-hero-link a {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-night .bl-hero-link a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
/* ----- 系统深色模式 (os) ----- */
@media (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .bl-search-form {
background: var(--color-surface-1, #202122);
border-color: rgba(255, 255, 255, 0.12);
}
html.skin-theme-clientpref-os .bl-search-form:focus-within {
border-color: var(--color-primary, #6ba4ff);
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15);
}
html.skin-theme-clientpref-os .bl-search-input {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-os .bl-search-input::placeholder {
color: rgba(255, 255, 255, 0.35);
}
html.skin-theme-clientpref-os .bl-create-btn {
background: rgba(34, 197, 94, 0.15);
color: #4ade80;
border-color: rgba(34, 197, 94, 0.25);
}
html.skin-theme-clientpref-os .bl-create-btn:hover {
background: rgba(34, 197, 94, 0.25);
}
html.skin-theme-clientpref-os .bl-stats-item {
background: var(--color-surface-1, #202122);
border-color: rgba(255, 255, 255, 0.1);
}
html.skin-theme-clientpref-os .bl-stats-item:hover {
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-stats-icon {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-stats-number {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-os .bl-stats-number a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-stats-number a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-stats-label {
color: rgba(255, 255, 255, 0.4);
}
html.skin-theme-clientpref-os .bl-box-more {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-box-more:hover {
color: var(--color-primary--hover, #9bc4ff);
}
html.skin-theme-clientpref-os .bl-box-more-wrap a {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-box-more-wrap a:hover {
color: var(--color-primary--hover, #9bc4ff);
}
html.skin-theme-clientpref-os .bl-news-item {
border-bottom-color: rgba(255, 255, 255, 0.06);
}
html.skin-theme-clientpref-os .bl-news-date {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-news-text {
color: var(--color-base-0, #c8ccd1);
}
html.skin-theme-clientpref-os .bl-news-text a {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-news-text a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-os .bl-upload-action {
background: rgba(99, 102, 241, 0.1);
border-color: rgba(99, 102, 241, 0.2);
}
html.skin-theme-clientpref-os .bl-upload-action:hover {
background: rgba(99, 102, 241, 0.18);
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-upload-action i:first-child {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-upload-action span {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-os .bl-upload-action i:last-child {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-recent-list li {
color: var(--color-base-0, #c8ccd1);
}
html.skin-theme-clientpref-os .bl-recent-list li a {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-recent-list li a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-os .bl-hero-search-form {
background: rgba(32, 33, 34, 0.85);
border-color: rgba(255, 255, 255, 0.12);
}
html.skin-theme-clientpref-os .bl-hero-search-form:focus-within {
border-color: var(--color-primary, #6ba4ff);
box-shadow: 0 0 0 3px rgba(107, 164, 255, 0.15);
}
html.skin-theme-clientpref-os .bl-hero-search-input {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-os .bl-hero-search-input::placeholder {
color: rgba(255, 255, 255, 0.35);
}
html.skin-theme-clientpref-os .bl-hero-create-btn {
background: rgba(34, 197, 94, 0.12);
color: #4ade80;
border-color: rgba(34, 197, 94, 0.2);
}
html.skin-theme-clientpref-os .bl-hero-create-btn:hover {
background: rgba(34, 197, 94, 0.2);
}
html.skin-theme-clientpref-os .bl-hero-stat {
background: rgba(32, 33, 34, 0.5);
border-color: rgba(255, 255, 255, 0.08);
}
html.skin-theme-clientpref-os .bl-hero-stat:hover {
background: rgba(32, 33, 34, 0.75);
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-hero-stat-icon {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-hero-stat-number {
color: var(--color-base-20, #e0e0e0);
}
html.skin-theme-clientpref-os .bl-hero-stat-number a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-hero-stat-number a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
html.skin-theme-clientpref-os .bl-hero-stat-label {
color: rgba(255, 255, 255, 0.35);
}
html.skin-theme-clientpref-os .bl-hero-link {
background: rgba(32, 33, 34, 0.4);
border-color: rgba(255, 255, 255, 0.06);
color: var(--color-base-0, #c8ccd1);
}
html.skin-theme-clientpref-os .bl-hero-link:hover {
background: rgba(32, 33, 34, 0.7);
border-color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-hero-link i {
color: var(--color-primary, #6ba4ff);
}
html.skin-theme-clientpref-os .bl-hero-link a {
color: var(--color-base-0, #c8ccd1) !important;
}
html.skin-theme-clientpref-os .bl-hero-link a:hover {
color: var(--color-primary, #6ba4ff) !important;
}
}
/* =============================================
世界国家 Navbox 容器样式
============================================= */
.bl-navbox-wrap {
margin: 20px 0;
}
.bl-navbox-wrap table.navbox {
border-radius: 12px !important;
overflow: hidden !important;
border: 1px solid #d1d5db !important;
background: #fff !important;
font-family: "PingFang SC", "Microsoft YaHei", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}
.bl-navbox-wrap .navbox-title {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
color: #fff !important;
padding: 12px 18px !important;
font-weight: 700 !important;
font-size: 0.95em !important;
letter-spacing: 0.5px !important;
}
.bl-navbox-wrap .navbox-title a {
color: #fff !important;
}
.bl-navbox-wrap .navbox-group {
background: #f3f4f6 !important;
color: #6366f1 !important;
font-weight: 700 !important;
font-size: 0.85em !important;
padding: 8px 12px !important;
border-color: #e5e7eb !important;
white-space: nowrap !important;
vertical-align: top !important;
}
.bl-navbox-wrap .navbox-list {
padding: 6px 12px !important;
font-size: 0.82em !important;
line-height: 1.8 !important;
border-color: #e5e7eb !important;
}
.bl-navbox-wrap .navbox-list a {
color: #374151 !important;
text-decoration: none !important;
}
.bl-navbox-wrap .navbox-list a:hover {
color: #6366f1 !important;
text-decoration: underline !important;
}
.bl-navbox-wrap .navbox-odd {
background: #fff !important;
}
.bl-navbox-wrap .navbox-even {
background: #fafafa !important;
}
/* Navbox 深色模式 */
html.skin-theme-clientpref-night .bl-navbox-wrap table.navbox {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-night .bl-navbox-wrap .navbox-group {
background: var(--color-surface-2, #2d2e2f) !important;
color: var(--color-primary, #6ba4ff) !important;
border-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-night .bl-navbox-wrap .navbox-list {
border-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-night .bl-navbox-wrap .navbox-list a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-night .bl-navbox-wrap .navbox-list a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-night .bl-navbox-wrap .navbox-odd {
background: var(--color-surface-1, #202122) !important;
}
html.skin-theme-clientpref-night .bl-navbox-wrap .navbox-even {
background: var(--color-surface-2, #2d2e2f) !important;
}
@media (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .bl-navbox-wrap table.navbox {
background: var(--color-surface-1, #202122) !important;
border-color: rgba(255, 255, 255, 0.1) !important;
}
html.skin-theme-clientpref-os .bl-navbox-wrap .navbox-group {
background: var(--color-surface-2, #2d2e2f) !important;
color: var(--color-primary, #6ba4ff) !important;
border-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-os .bl-navbox-wrap .navbox-list {
border-color: rgba(255, 255, 255, 0.08) !important;
}
html.skin-theme-clientpref-os .bl-navbox-wrap .navbox-list a {
color: var(--color-base-20, #e0e0e0) !important;
}
html.skin-theme-clientpref-os .bl-navbox-wrap .navbox-list a:hover {
color: var(--color-primary--hover, #9bc4ff) !important;
}
html.skin-theme-clientpref-os .bl-navbox-wrap .navbox-odd {
background: var(--color-surface-1, #202122) !important;
}
html.skin-theme-clientpref-os .bl-navbox-wrap .navbox-even {
background: var(--color-surface-2, #2d2e2f) !important;
}
}