更多操作
无编辑摘要 |
无编辑摘要 |
||
| 第565行: | 第565行: | ||
/* ================================================ | /* ================================================ | ||
卡片模板系统 | 卡片模板系统 v2 - 暗色主题 | ||
支持模板:卡片组开始 / 卡片 / 卡片组结束 | 支持模板:卡片组开始 / 卡片 / 卡片组结束 | ||
================================================ */ | ================================================ */ | ||
/* ---- | /* ---- 卡片网格容器 ---- */ | ||
.wiki-card-grid { | .wiki-card-grid { | ||
display: flex; | display: flex; | ||
| 第580行: | 第579行: | ||
} | } | ||
/* | |||
/* ================================================ | |||
卡片基础结构(暗色) | |||
================================================ */ | |||
.wiki-card { | .wiki-card { | ||
flex: 0 0 calc(33.333% - 14px); | flex: 0 0 calc(33.333% - 14px); | ||
| 第586行: | 第589行: | ||
position: relative; | position: relative; | ||
overflow: hidden; | overflow: hidden; | ||
background: # | background: #1e2030; | ||
border: 1px solid # | border: 1px solid #313244; | ||
border-top: 3px solid # | border-top: 3px solid #89b4fa; /* 顶部蓝色强调线 */ | ||
border-radius: 8px; | border-radius: 8px; | ||
box-shadow: 0 | box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45); | ||
transition: transform 0.28s ease, box-shadow 0.28s ease; | transition: transform 0.28s ease, box-shadow 0.28s ease; | ||
box-sizing: border-box; | box-sizing: border-box; | ||
| 第599行: | 第602行: | ||
/* ================================================悬停动效 | /* ================================================ | ||
悬停动效 | |||
================================================ */ | ================================================ */ | ||
/* | /* 动效1:扫光(暗色版,极细腻) */ | ||
.wiki-card::before { | .wiki-card::before { | ||
content: ''; | content: ''; | ||
| 第613行: | 第617行: | ||
90deg, | 90deg, | ||
transparent, | transparent, | ||
rgba(255, 255, 255, 0. | rgba(255, 255, 255, 0.05), | ||
transparent | transparent | ||
); | ); | ||
transition: left 0. | transition: left 0.6s ease; | ||
pointer-events: none; | pointer-events: none; | ||
z-index: 0; | z-index: 0; | ||
} | } | ||
/* | /* 动效2:上浮 + 阴影加深 */ | ||
.wiki-card:hover { | .wiki-card:hover { | ||
transform: translateY(-7px); | transform: translateY(-7px); | ||
box-shadow: 0 | box-shadow: 0 22px 52px rgba(0, 0, 0, 0.65); | ||
} | } | ||
/* | /* 触发扫光 */ | ||
.wiki-card:hover::before { | .wiki-card:hover::before { | ||
left: 150%; | left: 150%; | ||
} | } | ||
/* | /* 动效3:图标弹跳放大 */ | ||
.wiki-card:hover .wiki-card-icon-wrap { | .wiki-card:hover .wiki-card-icon-wrap { | ||
transform: scale(1.18); | transform: scale(1.18); | ||
| 第665行: | 第669行: | ||
font-size: 1.05em; | font-size: 1.05em; | ||
font-weight: bold; | font-weight: bold; | ||
color: # | color: #cdd6f4; | ||
margin-bottom: 4px; | margin-bottom: 4px; | ||
line-height: 1.4; | line-height: 1.4; | ||
| 第673行: | 第677行: | ||
.wiki-card-subtitle { | .wiki-card-subtitle { | ||
font-size: 0.83em; | font-size: 0.83em; | ||
color: # | color: #585b70; | ||
margin-bottom: 10px; | margin-bottom: 10px; | ||
font-style: italic; | font-style: italic; | ||
| 第679行: | 第683行: | ||
.wiki-card-subtitle:empty { display: none; } | .wiki-card-subtitle:empty { display: none; } | ||
/* | /* 正文 */ | ||
.wiki-card-content { | .wiki-card-content { | ||
font-size: 0.92em; | font-size: 0.92em; | ||
color: # | color: #a6adc8; | ||
line-height: 1.68; | line-height: 1.68; | ||
} | } | ||
| 第689行: | 第693行: | ||
.wiki-card-footer { | .wiki-card-footer { | ||
padding: 10px 20px 14px; | padding: 10px 20px 14px; | ||
border-top: 1px solid # | border-top: 1px solid #313244; | ||
position: relative; | position: relative; | ||
z-index: 1; | z-index: 1; | ||
} | } | ||
/* | /* 无链接时自动隐藏底部 */ | ||
.wiki-card-footer | .wiki-card-footer:not(:has(a)) { | ||
display: none; | |||
} | |||
.wiki-card-footer a { | .wiki-card-footer a { | ||
font-size: 0.88em; | font-size: 0.88em; | ||
font-weight: bold; | font-weight: bold; | ||
color: # | color: #89b4fa; | ||
text-decoration: none; | text-decoration: none; | ||
} | } | ||
.wiki-card-footer a:hover { text-decoration: underline; } | .wiki-card-footer a:hover { | ||
text-decoration: underline; | |||
} | |||
/* ================================================ | /* ================================================ | ||
颜色主题(暗色系) | |||
================================================ */ | ================================================ */ | ||
/* card-success:绿色 */ | /* card-success:绿色 */ | ||
.wiki-card.card-success { border-top-color: # | .wiki-card.card-success { | ||
border-top-color: #a6e3a1; | |||
background: #1a2820; | |||
} | |||
.wiki-card.card-success:hover { | .wiki-card.card-success:hover { | ||
box-shadow: 0 | box-shadow: 0 22px 52px rgba(166, 227, 161, 0.2); | ||
} | } | ||
.wiki-card.card-success .wiki-card-title { color: # | .wiki-card.card-success .wiki-card-title { color: #a6e3a1; } | ||
.wiki-card.card-success .wiki-card-footer a { color: # | .wiki-card.card-success .wiki-card-footer a { color: #a6e3a1; } | ||
/* card-warning:黄色 */ | /* card-warning:黄色 */ | ||
.wiki-card.card-warning { border-top-color: # | .wiki-card.card-warning { | ||
border-top-color: #f9e2af; | |||
background: #272218; | |||
} | |||
.wiki-card.card-warning:hover { | .wiki-card.card-warning:hover { | ||
box-shadow: 0 | box-shadow: 0 22px 52px rgba(249, 226, 175, 0.2); | ||
} | } | ||
.wiki-card.card-warning .wiki-card-title { color: # | .wiki-card.card-warning .wiki-card-title { color: #f9e2af; } | ||
.wiki-card.card-warning .wiki-card-footer a { color: # | .wiki-card.card-warning .wiki-card-footer a { color: #f9e2af; } | ||
/* card-danger:红色 */ | /* card-danger:红色 */ | ||
.wiki-card.card-danger { border-top-color: # | .wiki-card.card-danger { | ||
border-top-color: #f38ba8; | |||
background: #271820; | |||
} | |||
.wiki-card.card-danger:hover { | .wiki-card.card-danger:hover { | ||
box-shadow: 0 | box-shadow: 0 22px 52px rgba(243, 139, 168, 0.2); | ||
} | } | ||
.wiki-card.card-danger .wiki-card-title { color: # | .wiki-card.card-danger .wiki-card-title { color: #f38ba8; } | ||
.wiki-card.card-danger .wiki-card-footer a { color: # | .wiki-card.card-danger .wiki-card-footer a { color: #f38ba8; } | ||
/* card-info:灰色 */ | /* card-info:灰色 */ | ||
.wiki-card.card-info { border-top-color: # | .wiki-card.card-info { | ||
border-top-color: #9399b2; | |||
background: #222232; | |||
} | |||
.wiki-card.card-info:hover { | .wiki-card.card-info:hover { | ||
box-shadow: 0 | box-shadow: 0 22px 52px rgba(147, 153, 178, 0.18); | ||
} | } | ||
.wiki-card.card-info .wiki-card-title { color: # | .wiki-card.card-info .wiki-card-title { color: #9399b2; } | ||
.wiki-card.card-info .wiki-card-footer a { color: # | .wiki-card.card-info .wiki-card-footer a { color: #9399b2; } | ||
/* card-purple:紫色 */ | /* card-purple:紫色 */ | ||
.wiki-card.card-purple { border-top-color: # | .wiki-card.card-purple { | ||
border-top-color: #cba6f7; | |||
background: #221828; | |||
} | |||
.wiki-card.card-purple:hover { | .wiki-card.card-purple:hover { | ||
box-shadow: 0 | box-shadow: 0 22px 52px rgba(203, 166, 247, 0.2); | ||
} | } | ||
.wiki-card.card-purple .wiki-card-title { color: # | .wiki-card.card-purple .wiki-card-title { color: #cba6f7; } | ||
.wiki-card.card-purple .wiki-card-footer a { color: # | .wiki-card.card-purple .wiki-card-footer a { color: #cba6f7; } | ||
/* ================================================ | /* ================================================ | ||
多列布局 | |||
================================================ */ | ================================================ */ | ||
.wiki-card-grid.col-2 .wiki-card { | .wiki-card-grid.col-2 .wiki-card { | ||
flex: 0 0 calc(50% - 10px); | flex: 0 0 calc(50% - 10px); | ||
} | } | ||
.wiki-card-grid.col-4 .wiki-card { | .wiki-card-grid.col-4 .wiki-card { | ||
flex: 0 0 calc(25% - 15px); | flex: 0 0 calc(25% - 15px); | ||
| 第771行: | 第791行: | ||
================================================ */ | ================================================ */ | ||
@media screen and (max-width: 860px) { | @media screen and (max-width: 860px) { | ||
.wiki-card-grid.col-4 .wiki-card { | .wiki-card-grid.col-4 .wiki-card { | ||
| 第778行: | 第797行: | ||
} | } | ||
@media screen and (max-width: 600px) { | @media screen and (max-width: 600px) { | ||
.wiki-card, | .wiki-card, | ||
2026年2月28日 (六) 06:08的版本
/* ========== 迷雾Wiki 主题样式 ========== */
/* Hero 区域 */
.mist-hero {
position: relative;
background: #0d1117;
border: 1px solid #30363d;
border-radius: 16px;
padding: 64px 48px;
margin-bottom: 32px;
overflow: hidden;
text-align: center;
}
.mist-hero::before {
content: '';
position: absolute;
background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(88,166,255,0.08), transparent),
radial-gradient(ellipse 60% 40% at 80% 100%, rgba(210,168,255,0.06), transparent);
animation: fogFloat 15s ease-in-out infinite alternate;
pointer-events: none;
}
@keyframes fogFloat {
0%{ opacity: 0.6; transform: translateX(-5%) scaleY(1); }
100% { opacity: 1;transform: translateX(5%) scaleY(1.05); }
}
.mist-hero-title {
font-size: 3.5rem;
font-weight: 900;
background: linear-gradient(135deg, #e6edf3 30%, #58a6ff);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
margin: 0 0 12px 0;
letter-spacing: -2px;
}
.mist-hero-subtitle {
color: #8b949e;
font-size: 1.1rem;
margin-bottom: 36px;
}
.mist-stats {
display: inline-flex;
gap: 40px;
justify-content: center;
}
.mist-stat { text-align: center; }
.mist-stat-num {
display: block;
font-size: 2rem;
font-weight: 800;
color: #e6edf3;
}
.mist-stat-label { color: #8b949e; font-size: 0.85rem; }
/* 三栏入口卡片 */
.mist-portal-row {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-bottom: 32px;
}
.mist-portal-card {
background: #161b22;
border: 1px solid #30363d;
border-radius: 12px;
overflow: hidden;
transition: transform 0.2s, box-shadow 0.2s;
padding-bottom: 20px;
}
.mist-portal-card:hover {
transform: translateY(-3px);
box-shadow: 0 12px 32px rgba(0,0,0,0.5);
}
.mist-portal-bar { height: 4px; }
.mist-portal-bar-blue{ background: linear-gradient(90deg, #58a6ff, #79c0ff); }
.mist-portal-bar-purple{ background: linear-gradient(90deg, #d2a8ff, #bc8cff); }
.mist-portal-bar-green { background: linear-gradient(90deg, #56d364, #3fb950); }
.mist-portal-body { padding: 24px 24px 0; }
.mist-portal-icon {
font-size: 2rem;
margin-bottom: 12px;
display: block;
}
.mist-portal-title {
font-size: 1.2rem;
font-weight: 700;
color: #e6edf3;
margin-bottom: 8px;
}
.mist-portal-desc { color: #8b949e; font-size: 0.875rem; line-height: 1.6; margin-bottom: 20px; }
.mist-portal-btn {
display: block;
margin: 0 24px;
padding: 8px;
text-align: center;
background: #21262d;
border: 1px solid #30363d;
border-radius: 8px;
color: #e6edf3 ;
font-size: 0.875rem;
font-weight: 500;
text-decoration: none ;
transition: background 0.2s;
}
.mist-portal-btn:hover { background: #58a6ff; border-color: #58a6ff; color: #fff ; }
/* 精选 ARG */
.mist-section-title {
font-size: 1.4rem;
font-weight: 700;
color: #e6edf3;
margin-bottom: 20px;
padding-bottom: 12px;
border-bottom: 1px solid #30363d;
}
.mist-featured-row {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-bottom: 32px;
}
.mist-featured-card {
background: #161b22;
border: 1px solid #30363d;
border-radius: 12px;
overflow: hidden;
transition: border-color 0.2s;
}
.mist-featured-card:hover { border-color: #58a6ff; }
.mist-featured-cover {
height: 120px;
position: relative;
}
.mist-cover-blue{ background: linear-gradient(135deg, #0d2137, #1a3a5c); }
.mist-cover-purple { background: linear-gradient(135deg, #1a0d37, #2d1a5c); }
.mist-cover-amber { background: linear-gradient(135deg, #211a08, #3d3010); }
.mist-badge {
position: absolute;
top: 10px; right: 10px;
padding: 2px 8px;
border-radius: 4px;
font-size: 0.7rem;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.mist-badge-on{ background:#0d2a12; color:#56d364; border:1px solid #238636; }
.mist-badge-end { background:#1f0d37; color:#d2a8ff; border:1px solid #6e40c9; }
.mist-badge-sus { background:#2a1a00; color:#f0883e; border:1px solid #9e6a03; }
.mist-featured-body { padding: 16px; }
.mist-featured-title { font-size: 1rem; font-weight: 700; color: #e6edf3; margin-bottom: 6px; }
.mist-featured-desc{ color: #8b949e; font-size: 0.8rem; line-height: 1.5; }
/* 最近更新 */
.mist-recent {
background: #161b22;
border: 1px solid #30363d;
border-radius: 12px;
padding: 24px;
margin-bottom: 32px;
}
.mist-recent-item {
display: flex;
align-items: flex-start;
gap: 12px;
padding: 10px 0;
border-bottom: 1px solid #21262d;
}
.mist-recent-item:last-child { border-bottom: none; }
.mist-tag {
display: inline-block;
padding: 1px 7px;
border-radius: 4px;
font-size: 0.65rem;
font-weight: 700;
text-transform: uppercase;
white-space: nowrap;
margin-top: 2px;
}
.mist-tag-arg{ background:#0d1d37;color:#58a6ff;border:1px solid #1c3458; }
.mist-tag-tl{ background:#1f0d37;color:#d2a8ff;border:1px solid #3b1f6e; }
.mist-tag-term { background:#0d2a12;color:#56d364;border:1px solid #1c4a26; }
.mist-recent-link { color: #58a6ff ; font-size: 0.875rem; font-weight: 500; }
.mist-recent-meta { color: #8b949e; font-size: 0.75rem; margin-top: 2px; }
/* 页脚 */
.mist-footer {
background: #161b22;
border: 1px solid #30363d;
border-radius: 12px;
padding: 24px;
text-align: center;
color: #8b949e;
font-size: 0.8rem;
}
/* 响应式 */
@media (max-width: 768px) {
.mist-portal-row, .mist-featured-row { grid-template-columns: 1fr; }
.mist-hero-title { font-size: 2.2rem; }
.mist-stats { flex-direction: column; gap: 16px; }
}
/*================================================
时间轴模板系统 v2 - MediaWiki:Common.css
支持模板:TL开始 / TL项目 / TL结束
================================================ */
/* 容器 */
.wiki-tl {
position: relative;
margin: 24px auto;
padding: 10px 0 10px 0;
max-width: 860px;
overflow: hidden;
}
/* 中央竖线 */
.wiki-tl::before {
content: '';
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 3px;
margin-left: -1px;
background: #3a87ad;
}
/* 条目基础 */
.wiki-tl-item {
position: relative;
width: 43%;
padding: 10px 14px;
background: #f0f8ff;
border: 1px solid #b0cfe0;
border-radius: 6px;
margin-bottom: 22px;
box-sizing: border-box;
}
/* 奇数条目→ 左侧 */
.wiki-tl-item:nth-child(odd) {
float: left;
text-align: right;
clear: left;
}
/* 偶数条目 → 右侧 */
.wiki-tl-item:nth-child(even) {
float: right;
text-align: left;
clear: right;
}
/* 清除浮动 */
.wiki-tl::after {
content: '';
display: block;
clear: both;
}
/* 连接圆点 */
.wiki-tl-item::after {
content: '';
position: absolute;
top: 15px;
width: 13px;
height: 13px;
background: #3a87ad;
border-radius: 50%;
border: 2px solid #fff;
z-index: 1;
}
.wiki-tl-item:nth-child(odd)::after { right: -7%; }
.wiki-tl-item:nth-child(even)::after { left: -7%; }
/* 日期 */
.wiki-tl-date {
font-weight: bold;
color: #3a87ad;
font-size: 1em;
margin-bottom: 5px;
}
/* 内容 */
.wiki-tl-content {
color: #444;
font-size: 0.93em;
line-height: 1.6;
}
/* ----扩展类型:tl-highlight(重要/黄色)---- */
.wiki-tl-item.tl-highlight {
background: #fff8e1;
border-color: #fbc02d;
}
.wiki-tl-item.tl-highlight .wiki-tl-date { color: #b8860b; }
.wiki-tl-item.tl-highlight::after { background: #fbc02d; }
/* ---- 扩展类型:tl-success(成功/绿色)---- */
.wiki-tl-item.tl-success {
background: #f0fff4;
border-color: #66bb6a;
}
.wiki-tl-item.tl-success .wiki-tl-date { color: #2e7d32; }
.wiki-tl-item.tl-success::after{ background: #66bb6a; }
/* ---- 扩展类型:tl-danger(警示/红色)---- */
.wiki-tl-item.tl-danger {
background: #fff0f0;
border-color: #e57373;
}
.wiki-tl-item.tl-danger .wiki-tl-date { color: #c62828; }
.wiki-tl-item.tl-danger::after { background: #e57373; }
/* ---- 扩展类型:tl-info(说明/灰色)---- */
.wiki-tl-item.tl-info {
background: #f5f5f5;
border-color: #9e9e9e;
}
.wiki-tl-item.tl-info .wiki-tl-date { color: #555; }
.wiki-tl-item.tl-info::after { background: #9e9e9e; }
@media screen and (max-width: 600px) {
.wiki-tl::before { left: 12px; }
.wiki-tl-item,
.wiki-tl-item:nth-child(odd),
.wiki-tl-item:nth-child(even) {
float: none;
width: 85%;
left: 28px;
text-align: left;
margin-bottom: 16px;
}
.wiki-tl-item::after,
.wiki-tl-item:nth-child(odd)::after,
.wiki-tl-item:nth-child(even)::after {
left: -24px;
right: auto;
}
}
/* ================================================
时间轴模板系统 v4 - MediaWiki:Common.css
单侧布局:轴线居左,所有事件在右侧
支持模板:TL开始 / TL项目 / TL结束
TL项目组开始 / TL子项目 / TL项目组结束
================================================ */
/* ---- 1. 容器 ---- */
.wiki-tl {
position: relative;
margin: 24px auto;
padding: 10px 0 10px 50px; /* 左侧留出轴线空间 */
max-width: 860px;
box-sizing: border-box;
overflow: hidden;
}
/* ---- 2. 左侧竖线 ---- */
.wiki-tl::before {
content: '';
position: absolute;
left: 18px; /* 轴线距容器左边缘 */
top: 0;
bottom: 0;
width: 3px;
background: #3a87ad;
}
/* ---- 3. 清除浮动(兜底) ---- */
.wiki-tl::after {
content: '';
display: block;
clear: both;
}
/* ================================================
条目基础样式(所有条目靠右对齐)
================================================ */
.wiki-tl-item {
position: relative;
width: 100%; /* 占满轴线右侧全部宽度 */
padding: 10px 14px;
background: #f0f8ff;
border: 1px solid #b0cfe0;
border-radius: 6px;
margin-bottom: 22px;
box-sizing: border-box;
text-align: left; /* 全部左对齐 */
float: none;
clear: none;
}
/* ---- 覆盖旧版nth-child 双侧交替规则 ---- */
.wiki-tl-item:nth-child(odd),
.wiki-tl-item:nth-child(even) {
float: none;
clear: none;
left: auto;
width: 100%;
text-align: left;
}
/* ---- 圆点(对齐左侧轴线) ---- */
/*计算逻辑:
容器 padding-left = 50px → 条目左边缘在50px 处
轴线 left = 18px →轴线中心在 ≈19.5px 处
圆点宽 13px,圆心居中需left =-(50-18) + 6.5 ≈ -38px
*/
.wiki-tl-item::after {
content: '';
position: absolute;
top: 15px;
left: -38px; /* 圆点中心对齐轴线 */
right: auto;
width: 13px;
height: 13px;
background: #3a87ad;
border-radius: 50%;
border: 2px solid #fff;
z-index: 1;
}
/* ---- 同步覆盖旧版 nth-child 圆点定位 ---- */
.wiki-tl-item:nth-child(odd)::after,
.wiki-tl-item:nth-child(even)::after {
left: -38px;
right: auto;
}
/* ---- 日期标签 ---- */
.wiki-tl-date {
font-weight: bold;
color: #3a87ad;
font-size: 1em;
margin-bottom: 5px;
}
/* ---- 事件内容 ---- */
.wiki-tl-content {
color: #444;
font-size: 0.93em;
line-height: 1.6;
}
/* ================================================
条目颜色类型扩展
================================================ */
/* tl-highlight:重要 /黄色 */
.wiki-tl-item.tl-highlight {
background: #fff8e1;
border-color: #fbc02d;
}
.wiki-tl-item.tl-highlight .wiki-tl-date { color: #b8860b; }
.wiki-tl-item.tl-highlight::after { background: #fbc02d; }
/* tl-success:成功 / 绿色 */
.wiki-tl-item.tl-success {
background: #f0fff4;
border-color: #66bb6a;
}
.wiki-tl-item.tl-success .wiki-tl-date { color: #2e7d32; }
.wiki-tl-item.tl-success::after { background: #66bb6a; }
/* tl-danger:警示 / 红色 */
.wiki-tl-item.tl-danger {
background: #fff0f0;
border-color: #e57373;
}
.wiki-tl-item.tl-danger .wiki-tl-date { color: #c62828; }
.wiki-tl-item.tl-danger::after{ background: #e57373; }
/* tl-info:说明 / 灰色 */
.wiki-tl-item.tl-info {
background: #f5f5f5;
border-color: #9e9e9e;
}
.wiki-tl-item.tl-info .wiki-tl-date { color: #555; }
.wiki-tl-item.tl-info::after { background: #9e9e9e; }
/* ================================================
分组多事件扩展样式
================================================ */
/* 分组日期标题加底线 */
.wiki-tl-group .wiki-tl-date {
margin-bottom: 8px;
padding-bottom: 8px;
border-bottom: 1px solid #b0cfe0;
}
/* 子事件列表容器 */
.wiki-tl-group-body {
display: flex;
flex-direction: column;
gap: 6px;
}
/* 单个子事件 */
.wiki-tl-subitem {
padding: 6px 10px;
border-left: 3px solid #3a87ad;
background: #ffffff;
border-radius: 3px;
text-align: left;
}
/* 子事件标签徽章 */
.wiki-tl-sub-tag {
display: inline-block;
font-size: 0.78em;
font-weight: bold;
background: #3a87ad;
color: white;
padding: 1px 8px;
border-radius: 10px;
margin-bottom: 4px;
}
/* 标签为空时自动隐藏 */
.wiki-tl-sub-tag:empty { display: none; }
/* 子事件颜色类型 */
.wiki-tl-subitem.tl-highlight { border-left-color: #fbc02d; }
.wiki-tl-subitem.tl-highlight .wiki-tl-sub-tag {
background: #fbc02d;
color: #333;
}
.wiki-tl-subitem.tl-success { border-left-color: #66bb6a; }
.wiki-tl-subitem.tl-success .wiki-tl-sub-tag { background: #66bb6a; }
.wiki-tl-subitem.tl-danger { border-left-color: #e57373; }
.wiki-tl-subitem.tl-danger .wiki-tl-sub-tag { background: #e57373; }
.wiki-tl-subitem.tl-info { border-left-color: #9e9e9e; }
.wiki-tl-subitem.tl-info .wiki-tl-sub-tag{ background: #9e9e9e; }
/* ================================================
移动端响应式适配
================================================ */
@media screen and (max-width: 600px) {
.wiki-tl {
padding-left: 36px;
}
.wiki-tl::before {
left: 12px;
}
/* 同步调整圆点位置:-(36-12)+6.5 ≈ -24px */
.wiki-tl-item::after,
.wiki-tl-item:nth-child(odd)::after,
.wiki-tl-item:nth-child(even)::after {
left: -28px;
right: auto;
}
}
/* ================================================
卡片模板系统 v2 - 暗色主题
支持模板:卡片组开始 / 卡片 / 卡片组结束
================================================ */
/* ---- 卡片网格容器 ---- */
.wiki-card-grid {
display: flex;
flex-wrap: wrap;
gap: 20px;
margin: 24px 0;
align-items: stretch;
}
/* ================================================
卡片基础结构(暗色)
================================================ */
.wiki-card {
flex: 0 0 calc(33.333% - 14px);
min-width: 180px;
position: relative;
overflow: hidden;
background: #1e2030;
border: 1px solid #313244;
border-top: 3px solid #89b4fa; /* 顶部蓝色强调线 */
border-radius: 8px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
transition: transform 0.28s ease, box-shadow 0.28s ease;
box-sizing: border-box;
display: flex;
flex-direction: column;
cursor: default;
}
/* ================================================
悬停动效
================================================ */
/* 动效1:扫光(暗色版,极细腻) */
.wiki-card::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 60%;
height: 100%;
background: linear-gradient(
90deg,
transparent,
rgba(255, 255, 255, 0.05),
transparent
);
transition: left 0.6s ease;
pointer-events: none;
z-index: 0;
}
/* 动效2:上浮 + 阴影加深 */
.wiki-card:hover {
transform: translateY(-7px);
box-shadow: 0 22px 52px rgba(0, 0, 0, 0.65);
}
/* 触发扫光 */
.wiki-card:hover::before {
left: 150%;
}
/* 动效3:图标弹跳放大 */
.wiki-card:hover .wiki-card-icon-wrap {
transform: scale(1.18);
}
/* ================================================
卡片内部结构
================================================ */
/* 图标区域 */
.wiki-card-icon-wrap {
padding: 20px 20px 4px;
font-size: 2.2em;
line-height: 1;
transition: transform 0.28s ease;
position: relative;
z-index: 1;
}
.wiki-card-icon-wrap:empty { display: none; }
/* 主体区域 */
.wiki-card-body {
padding: 14px 20px 16px;
flex: 1;
position: relative;
z-index: 1;
}
/* 标题 */
.wiki-card-title {
font-size: 1.05em;
font-weight: bold;
color: #cdd6f4;
margin-bottom: 4px;
line-height: 1.4;
}
/* 副标题 */
.wiki-card-subtitle {
font-size: 0.83em;
color: #585b70;
margin-bottom: 10px;
font-style: italic;
}
.wiki-card-subtitle:empty { display: none; }
/* 正文 */
.wiki-card-content {
font-size: 0.92em;
color: #a6adc8;
line-height: 1.68;
}
/* 底部链接区域 */
.wiki-card-footer {
padding: 10px 20px 14px;
border-top: 1px solid #313244;
position: relative;
z-index: 1;
}
/* 无链接时自动隐藏底部 */
.wiki-card-footer:not(:has(a)) {
display: none;
}
.wiki-card-footer a {
font-size: 0.88em;
font-weight: bold;
color: #89b4fa;
text-decoration: none;
}
.wiki-card-footer a:hover {
text-decoration: underline;
}
/* ================================================
颜色主题(暗色系)
================================================ */
/* card-success:绿色 */
.wiki-card.card-success {
border-top-color: #a6e3a1;
background: #1a2820;
}
.wiki-card.card-success:hover {
box-shadow: 0 22px 52px rgba(166, 227, 161, 0.2);
}
.wiki-card.card-success .wiki-card-title { color: #a6e3a1; }
.wiki-card.card-success .wiki-card-footer a { color: #a6e3a1; }
/* card-warning:黄色 */
.wiki-card.card-warning {
border-top-color: #f9e2af;
background: #272218;
}
.wiki-card.card-warning:hover {
box-shadow: 0 22px 52px rgba(249, 226, 175, 0.2);
}
.wiki-card.card-warning .wiki-card-title { color: #f9e2af; }
.wiki-card.card-warning .wiki-card-footer a { color: #f9e2af; }
/* card-danger:红色 */
.wiki-card.card-danger {
border-top-color: #f38ba8;
background: #271820;
}
.wiki-card.card-danger:hover {
box-shadow: 0 22px 52px rgba(243, 139, 168, 0.2);
}
.wiki-card.card-danger .wiki-card-title { color: #f38ba8; }
.wiki-card.card-danger .wiki-card-footer a { color: #f38ba8; }
/* card-info:灰色 */
.wiki-card.card-info {
border-top-color: #9399b2;
background: #222232;
}
.wiki-card.card-info:hover {
box-shadow: 0 22px 52px rgba(147, 153, 178, 0.18);
}
.wiki-card.card-info .wiki-card-title { color: #9399b2; }
.wiki-card.card-info .wiki-card-footer a { color: #9399b2; }
/* card-purple:紫色 */
.wiki-card.card-purple {
border-top-color: #cba6f7;
background: #221828;
}
.wiki-card.card-purple:hover {
box-shadow: 0 22px 52px rgba(203, 166, 247, 0.2);
}
.wiki-card.card-purple .wiki-card-title { color: #cba6f7; }
.wiki-card.card-purple .wiki-card-footer a { color: #cba6f7; }
/* ================================================
多列布局
================================================ */
.wiki-card-grid.col-2 .wiki-card {
flex: 0 0 calc(50% - 10px);
}
.wiki-card-grid.col-4 .wiki-card {
flex: 0 0 calc(25% - 15px);
}
/* ================================================
响应式适配
================================================ */
@media screen and (max-width: 860px) {
.wiki-card-grid.col-4 .wiki-card {
flex: 0 0 calc(50% - 10px);
}
}
@media screen and (max-width: 600px) {
.wiki-card,
.wiki-card-grid.col-2 .wiki-card,
.wiki-card-grid.col-4 .wiki-card {
flex: 0 0 100%;
min-width: unset;
}
}