/* =============================================
   Digtime Custom Styles
   ============================================= */

/* --- 阅读进度条 --- */
#reading-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(to right, #337ab7, #5bc0de);
    z-index: 9999;
    transition: width 0.1s linear;
}

/* --- 返回顶部按钮 --- */
#back-to-top {
    display: none;
    position: fixed;
    bottom: 40px;
    right: 30px;
    width: 40px;
    height: 40px;
    background: #337ab7;
    color: #fff;
    border: none;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    z-index: 1000;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
    transition: background 0.2s, opacity 0.2s;
    line-height: 40px;
    text-align: center;
    padding: 0;
}
#back-to-top:hover { background: #286090; }

/* --- 代码复制按钮 --- */
.code-copy-btn {
    position: absolute;
    top: 6px;
    right: 8px;
    padding: 2px 8px;
    font-size: 12px;
    background: rgba(255,255,255,0.15);
    color: #ccc;
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 3px;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
    z-index: 10;
}
.code-copy-btn:hover { background: rgba(255,255,255,0.3); color: #fff; }

/* --- 文章列表摘要 --- */
.topic-excerpt {
    font-size: 13px;
    color: #888;
    margin: 4px 0 0 0;
    line-height: 1.5;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* =============================================
   暗黑模式
   ============================================= */
body.dark-mode {
    background-color: #0d1117;
    color: #c9d1d9;
}

/* 导航栏 */
body.dark-mode .navbar-default {
    background-color: #161b22;
    border-color: #30363d;
}
body.dark-mode .navbar-default .navbar-brand,
body.dark-mode .navbar-default .navbar-nav > li > a,
body.dark-mode .navbar-default .navbar-text {
    color: #c9d1d9;
}
body.dark-mode .navbar-default .navbar-nav > li > a:hover,
body.dark-mode .navbar-default .navbar-nav > .active > a,
body.dark-mode .navbar-default .navbar-nav > .active > a:hover {
    color: #fff;
    background-color: #21262d;
}
body.dark-mode .navbar-default .navbar-toggle { border-color: #30363d; }
body.dark-mode .navbar-default .navbar-toggle .icon-bar { background-color: #c9d1d9; }
body.dark-mode .navbar-default .navbar-collapse { border-color: #30363d; }

/* Panel / 卡片 */
body.dark-mode .panel,
body.dark-mode .panel-default {
    background-color: #161b22;
    border-color: #30363d;
}
body.dark-mode .panel-default > .panel-heading {
    background-color: #21262d;
    border-color: #30363d;
    color: #c9d1d9;
}
body.dark-mode .panel-body { color: #c9d1d9; }
body.dark-mode .panel-footer {
    background-color: #21262d;
    border-color: #30363d;
}

/* 列表 */
body.dark-mode .list-group-item {
    background-color: #161b22;
    border-color: #30363d;
    color: #c9d1d9;
}
body.dark-mode .list-group-item:hover,
body.dark-mode .list-group-item:focus {
    background-color: #21262d;
    color: #e6edf3;
}
body.dark-mode .list-group-item.active,
body.dark-mode .list-group-item.active:hover {
    background-color: #1f6feb;
    border-color: #1f6feb;
}

/* 链接 */
body.dark-mode a { color: #58a6ff; }
body.dark-mode a:hover { color: #79b8ff; }

/* 页脚 */
body.dark-mode .footer {
    background-color: #161b22;
    border-top: 1px solid #30363d;
    color: #8b949e;
}
body.dark-mode .footer a { color: #8b949e; }
body.dark-mode .footer a:hover { color: #c9d1d9; }

/* Markdown 内容 */
body.dark-mode .markdown-body {
    color: #c9d1d9;
    background-color: transparent;
}
body.dark-mode .markdown-body h1,
body.dark-mode .markdown-body h2,
body.dark-mode .markdown-body h3,
body.dark-mode .markdown-body h4,
body.dark-mode .markdown-body h5 {
    color: #e6edf3;
    border-bottom-color: #30363d;
}
body.dark-mode .markdown-body code {
    background-color: #21262d;
    color: #f0883e;
    border-color: #30363d;
}
body.dark-mode .markdown-body pre {
    background-color: #161b22;
    border-color: #30363d;
}
body.dark-mode .markdown-body pre code { color: #c9d1d9; background: transparent; }
body.dark-mode .markdown-body blockquote {
    border-left-color: #30363d;
    color: #8b949e;
}
body.dark-mode .markdown-body table tr { background-color: #161b22; border-color: #30363d; }
body.dark-mode .markdown-body table tr:nth-child(2n) { background-color: #21262d; }
body.dark-mode .markdown-body table th,
body.dark-mode .markdown-body table td { border-color: #30363d; }
body.dark-mode .markdown-body hr { background-color: #30363d; }
body.dark-mode .markdown-body img { filter: brightness(0.9); }

/* 表单 */
body.dark-mode .form-control {
    background-color: #21262d;
    border-color: #30363d;
    color: #c9d1d9;
}
body.dark-mode .form-control:focus {
    border-color: #58a6ff;
    box-shadow: 0 0 0 3px rgba(31,111,235,0.3);
}
body.dark-mode .input-group-addon {
    background-color: #21262d;
    border-color: #30363d;
    color: #8b949e;
}

/* 下拉菜单 */
body.dark-mode .dropdown-menu {
    background-color: #161b22;
    border-color: #30363d;
    box-shadow: 0 8px 24px rgba(0,0,0,0.5);
}
body.dark-mode .dropdown-menu > li > a { color: #c9d1d9; }
body.dark-mode .dropdown-menu > li > a:hover { background-color: #21262d; color: #fff; }
body.dark-mode .dropdown-menu .divider { background-color: #30363d; }

/* 按钮 */
body.dark-mode .btn-default {
    background-color: #21262d;
    border-color: #30363d;
    color: #c9d1d9;
}
body.dark-mode .btn-default:hover {
    background-color: #30363d;
    border-color: #8b949e;
    color: #e6edf3;
}

/* 标签 */
body.dark-mode .label-default { background-color: #21262d; color: #8b949e; }
body.dark-mode .label-success { background-color: #1a4731; }
body.dark-mode .label-warning { background-color: #3d2b00; }

/* 分页 */
body.dark-mode .pagination > li > a,
body.dark-mode .pagination > li > span {
    background-color: #161b22;
    border-color: #30363d;
    color: #58a6ff;
}
body.dark-mode .pagination > li > a:hover { background-color: #21262d; }
body.dark-mode .pagination > .active > a,
body.dark-mode .pagination > .active > span {
    background-color: #1f6feb;
    border-color: #1f6feb;
    color: #fff;
}
body.dark-mode .pagination > .disabled > a,
body.dark-mode .pagination > .disabled > span { color: #484f58; border-color: #30363d; background-color: #161b22; }

/* 提示框 */
body.dark-mode .alert-warning { background-color: #2d2a1e; border-color: #4d3d00; color: #d29922; }
body.dark-mode .alert-info { background-color: #1c2d3a; border-color: #1f4e6e; color: #58a6ff; }
body.dark-mode .alert-danger { background-color: #2d1b1b; border-color: #6e1f1f; color: #f85149; }

/* 其他 */
body.dark-mode hr { border-color: #30363d; }
body.dark-mode .text-muted { color: #8b949e !important; }
body.dark-mode .well { background-color: #161b22; border-color: #30363d; }
body.dark-mode .thumbnail { background-color: #161b22; border-color: #30363d; }
body.dark-mode .breadcrumb { background-color: #161b22; }
body.dark-mode .breadcrumb > .active { color: #8b949e; }
body.dark-mode .topic-excerpt { color: #8b949e; }
body.dark-mode .post-info-panel { background-color: #21262d; border-color: #30363d; }
body.dark-mode .article-meta { color: #8b949e; }
body.dark-mode .article-meta a { color: #8b949e; }
body.dark-mode .appends { border-color: #30363d; }
body.dark-mode .admin-operation { color: #8b949e; }
body.dark-mode .reply-box { background-color: #161b22; border-color: #30363d; }
body.dark-mode .editor-toolbar { background-color: #21262d; border-color: #30363d; }
body.dark-mode .editor-toolbar a { color: #c9d1d9 !important; }
body.dark-mode .CodeMirror { background-color: #21262d; color: #c9d1d9; }
body.dark-mode .CodeMirror-cursor { border-left-color: #c9d1d9; }
body.dark-mode .search-input { background-color: #21262d !important; border-color: #30363d !important; color: #c9d1d9 !important; }
body.dark-mode .search-input::placeholder { color: #8b949e; }
body.dark-mode #back-to-top { background: #1f6feb; }
body.dark-mode #back-to-top:hover { background: #388bfd; }
body.dark-mode .code-copy-btn { background: rgba(255,255,255,0.1); color: #8b949e; border-color: rgba(255,255,255,0.15); }
body.dark-mode .code-copy-btn:hover { background: rgba(255,255,255,0.2); color: #c9d1d9; }

/* 暗黑模式切换按钮 */
#dark-mode-toggle {
    background: none;
    border: none;
    cursor: pointer;
    padding: 15px 10px;
    color: #777;
    font-size: 16px;
    line-height: 20px;
    display: inline-block;
    vertical-align: middle;
}
#dark-mode-toggle:hover { color: #333; }
body.dark-mode #dark-mode-toggle { color: #c9d1d9; }
body.dark-mode #dark-mode-toggle:hover { color: #fff; }
