guanghulab/style-system/forgejo/forgejo-custom.css

227 lines
6.9 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ════════════════════════════════════════════════════════════════
光湖 · Forgejo 品牌主题 v2
HoloLake Brand Theme for Forgejo 1.23.7
包含: 品牌色彩 + 仓库首页展示页布局
主权: TCS-0002∞ 冰朔 | 守护: 铸渊 ICE-GL-ZY001
版权: 国作登字-2026-A-00037559
════════════════════════════════════════════════════════════════ */
/* ─── 品牌色彩系统 ─── */
:root {
--guanghu-bg: #0a0e1a;
--guanghu-surface: #111827;
--guanghu-surface-hover: #1a2332;
--guanghu-border: #1e293b;
--guanghu-text: #e2e8f0;
--guanghu-text-muted: #64748b;
--guanghu-accent: #3b82f6;
--guanghu-accent-dim: rgba(59,130,246,0.15);
--guanghu-gold: #f59e0b;
--guanghu-success: #22c55e;
--guanghu-gradient: linear-gradient(135deg, #60a5fa, #a78bfa);
--guanghu-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
}
/* ─── ================================================== ─── */
/* ─── 第一部分:仓库首页 → 展示页布局 ─── */
/* ─── 隐藏文件列表README 全屏展示 ─── */
/* ─── ================================================== ─── */
/* ─── 仓库首页:隐藏文件列表 ─── */
.repository.file.list .repo-file-list,
.repository.file.list #repo-file-list,
.repository.file.list .file.listing,
.repository.file.list .ui.table.file.listing,
.repository.file.list .repository.file.list .file.listing {
display: none !important;
}
/* ─── 隐藏统计栏(提交数/分支数/标签数/大小) ─── */
.repository.file.list .repo-header,
.repository.file.list .repo-header .ui.secondary.stackable.pointing.menu,
.repository.file.list .ui.secondary.pointing.menu.stackable {
display: none !important;
}
/* ─── 隐藏仓库操作按钮(星标/复刻/PR数等 ─── */
.repository.file.list .repo-buttons,
.repository.file.list .ui.breadcrumb {
display: none !important;
}
/* ─── README 区域:全屏宽度 ─── */
.repository.file.list .markdown {
max-width: 100% !important;
padding: 2rem 3rem !important;
background: var(--guanghu-surface) !important;
border: 1px solid var(--guanghu-border) !important;
border-radius: 12px !important;
margin: 1rem 0 !important;
box-shadow: 0 4px 24px rgba(0,0,0,0.2) !important;
}
/* ─── README 标题栏 ─── */
.repository.file.list .ui.top.attached.tabular.menu {
display: none !important;
}
/* ─── 文件路径面包屑 ─── */
.repository.file.list .ui.breadcrumb {
display: none !important;
}
/* ─── 显示 README 标题 ─── */
.repository.file.list .markdown h1:first-child {
margin-top: 0 !important;
font-size: 2.5rem !important;
}
/* ─── ================================================== ─── */
/* ─── 第二部分:通用品牌色彩 ─── */
/* ─── ================================================== ─── */
/* ─── 顶部导航栏 ─── */
.ui.top.attached.header,
.ui.menu.secondary,
.ui.top.menu,
.ui.menu {
background: var(--guanghu-surface) !important;
border-bottom: 1px solid var(--guanghu-border) !important;
}
.ui.menu .item {
color: var(--guanghu-text-muted) !important;
font-family: var(--guanghu-font) !important;
}
.ui.menu .item:hover {
color: var(--guanghu-text) !important;
background: var(--guanghu-surface-hover) !important;
}
.ui.menu .item.active {
color: var(--guanghu-accent) !important;
border-color: var(--guanghu-accent) !important;
}
/* ─── 页面背景 ─── */
body,
.ui.segment,
.ui.container.main,
.ui.grid,
.ui.attached.segment {
background: var(--guanghu-bg) !important;
color: var(--guanghu-text) !important;
}
/* ─── 卡片 / 面板 ─── */
.ui.segment,
.ui.card,
.ui.attached.segment {
background: var(--guanghu-surface) !important;
border: 1px solid var(--guanghu-border) !important;
border-radius: 8px !important;
box-shadow: 0 1px 3px rgba(0,0,0,0.3) !important;
}
/* ─── 按钮 ─── */
.ui.button {
background: var(--guanghu-surface) !important;
color: var(--guanghu-text) !important;
border: 1px solid var(--guanghu-border) !important;
}
.ui.button.primary {
background: var(--guanghu-accent) !important;
color: #fff !important;
border-color: var(--guanghu-accent) !important;
}
/* ─── 输入框 ─── */
.ui.input input,
.ui.form input {
background: var(--guanghu-surface) !important;
color: var(--guanghu-text) !important;
border: 1px solid var(--guanghu-border) !important;
}
.ui.input input:focus,
.ui.form input:focus {
border-color: var(--guanghu-accent) !important;
}
/* ─── 仓库文件列表(非首页) ─── */
.ui.repository.file.list .file.listing td {
border-color: var(--guanghu-border) !important;
background: var(--guanghu-surface) !important;
color: var(--guanghu-text) !important;
}
.ui.repository.file.list .file.listing tr:hover td {
background: var(--guanghu-surface-hover) !important;
}
/* ─── 统计数字 ─── */
.ui.statistics .statistic > .label,
.ui.statistics .statistic > .value {
color: var(--guanghu-text) !important;
}
/* ─── 页脚 ─── */
.ui.footer,
.ui.vertical.segment.footer {
background: var(--guanghu-surface) !important;
border-top: 1px solid var(--guanghu-border) !important;
color: var(--guanghu-text-muted) !important;
}
/* ─── 链接 ─── */
a {
color: var(--guanghu-accent) !important;
}
a:hover {
color: #60a5fa !important;
}
/* ─── 标签 ─── */
.ui.label {
background: var(--guanghu-accent-dim) !important;
color: var(--guanghu-text) !important;
border: 1px solid var(--guanghu-border) !important;
}
/* ─── 代码块 ─── */
pre, code, .highlight {
background: #0d1117 !important;
border-color: var(--guanghu-border) !important;
color: #e6edf3 !important;
}
/* ─── 修改框 ─── */
.ui.modal, .ui.dimmer .content {
background: var(--guanghu-surface) !important;
}
/* ─── 表格 ─── */
.ui.table {
background: var(--guanghu-surface) !important;
color: var(--guanghu-text) !important;
}
.ui.table thead th {
background: var(--guanghu-bg) !important;
color: var(--guanghu-text) !important;
border-bottom: 1px solid var(--guanghu-border) !important;
}
.ui.table td {
border-color: var(--guanghu-border) !important;
}
/* ─── 滚动条 ─── */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--guanghu-bg); }
::-webkit-scrollbar-thumb { background: var(--guanghu-border); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--guanghu-text-muted); }