/* ============================================================
   Skill 技能栏目专属样式
   覆盖：封面页 category_skill / 列表页 list_skill / 详情页 show_skill
   极简风格 · 白卡片 · 黑灰蓝主调 · 深色代码块
   ============================================================ */

/* ===== 变量 ===== */
:root {
    --sk-bg: #f5f5f5;
    --sk-card: #ffffff;
    --sk-primary: #1a1a1a;
    --sk-primary-light: #374151;
    --sk-blue: #2563eb;
    --sk-blue-light: #dbeafe;
    --sk-blue-text: #1d4ed8;
    --sk-amber: #f59e0b;
    --sk-emerald: #10b981;
    --sk-text-1: #111827;
    --sk-text-2: #4b5563;
    --sk-text-3: #9ca3af;
    --sk-border: #e5e7eb;
    --sk-code-bg: #0d1117;
    --sk-radius-card: 12px;
    --sk-radius-btn: 8px;
    --sk-radius-tag: 4px;
}

/* ============================================================
   1. 封面页 category_skill
   ============================================================ */

/* Hero 区域 */
.sk-hero {
    text-align: center;
    padding: 48px 20px 32px;
}
.sk-hero h1 {
    font-size: 32px;
    font-weight: 700;
    color: var(--sk-text-1);
    margin: 0 0 12px;
    letter-spacing: -0.5px;
}
.sk-hero p {
    font-size: 15px;
    color: var(--sk-text-3);
    margin: 0;
    line-height: 1.6;
}

/* 封面页搜索框 */
.sk-search-wrap {
    max-width: 640px;
    margin: 0 auto 28px;
    padding: 0 20px;
}
.sk-search-box {
    display: flex;
    align-items: center;
    background: var(--sk-card);
    border: 2px solid var(--sk-border);
    border-radius: 999px;
    padding: 4px 4px 4px 20px;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.sk-search-box:focus-within {
    border-color: var(--sk-blue);
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1);
}
.sk-search-box .sk-search-icon {
    color: var(--sk-text-3);
    flex-shrink: 0;
    margin-right: 8px;
}
.sk-search-box input {
    flex: 1;
    border: none;
    outline: none;
    font-size: 15px;
    color: var(--sk-text-1);
    background: transparent;
    padding: 10px 0;
}
.sk-search-box input::placeholder {
    color: var(--sk-text-3);
}
.sk-search-box button {
    background: var(--sk-primary);
    color: #fff;
    border: none;
    border-radius: 999px;
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s;
    flex-shrink: 0;
}
.sk-search-box button:hover {
    background: #374151;
}

/* 热门关键词 */
.sk-hot-words {
    text-align: center;
    margin-bottom: 32px;
    padding: 0 20px;
}
.sk-hot-words .sk-hot-label {
    font-size: 13px;
    color: var(--sk-text-3);
    margin-right: 8px;
}
.sk-hot-words a {
    display: inline-block;
    font-size: 13px;
    color: var(--sk-text-2);
    padding: 4px 12px;
    margin: 4px 4px;
    border-radius: var(--sk-radius-tag);
    transition: all 0.15s;
}
.sk-hot-words a:hover {
    color: var(--sk-text-1);
    background: #f3f4f6;
}

/* 分类筛选标签栏 */
.sk-filter-tabs {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 0 20px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
.sk-filter-tabs::-webkit-scrollbar { display: none; }
.sk-filter-tabs a {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    padding: 8px 18px;
    font-size: 14px;
    color: var(--sk-text-2);
    background: var(--sk-card);
    border: 1px solid var(--sk-border);
    border-radius: 999px;
    cursor: pointer;
    transition: all 0.15s;
    flex-shrink: 0;
    text-decoration: none;
}
.sk-filter-tabs a:hover {
    background: #f3f4f6;
    border-color: var(--sk-border);
    color: var(--sk-text-1);
}
.sk-filter-tabs a.current {
    background: #1a1a1a;
    color: #fff;
    border-color: #1a1a1a;
}

/* ===== 推荐技能列表（目录树序号 + 装饰线） ===== */
.sk-list-section {
    background: var(--sk-card);
    border-radius: var(--sk-radius-card);
    overflow: hidden;
    max-width: 1000px;
    margin: 0 auto;
}
.sk-list-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px;
    border-bottom: 1px solid var(--sk-border);
}
.sk-list-header h2 {
    font-size: 18px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin: 0;
}
.sk-list-header .sk-list-link {
    font-size: 14px;
    color: var(--sk-blue-text);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: gap 0.15s;
}
.sk-list-header .sk-list-link:hover { gap: 8px; }

/* 列表项 */
.sk-item {
    display: flex;
    align-items: flex-start;
    padding: 20px 24px;
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.15s;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}
.sk-item:last-child { border-bottom: none; }
.sk-item:hover { background: #f9fafb; }

/* 序号徽章 */
.sk-num {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    color: var(--sk-text-3);
    border: 2px solid #e5e7eb;
    border-radius: 50%;
    background: #fff;
    transition: all 0.15s;
    margin-right: 0;
}
.sk-item:hover .sk-num {
    border-color: #1a1a1a;
    color: var(--sk-text-1);
}
/* Top 3 序号：黑灰渐变 */
.sk-num.top3 {
    background: linear-gradient(135deg, #1a1a1a, #374151);
    color: #fff;
    border-color: transparent;
}
.sk-item:hover .sk-num.top3 {
    background: linear-gradient(135deg, #374151, #4b5563);
    color: #fff;
}

/* 装饰竖线 */
.sk-deco-line {
    flex-shrink: 0;
    width: 2px;
    align-self: stretch;
    background: linear-gradient(to bottom, transparent, #d1d5db, transparent);
    margin: 4px 16px;
    border-radius: 1px;
    opacity: 0.3;
}

/* 列表项主体内容 */
.sk-item-body {
    flex: 1;
    min-width: 0;
}
.sk-item-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin: 0 0 6px;
    line-height: 1.4;
    transition: color 0.15s;
}
.sk-item:hover .sk-item-title { color: var(--sk-blue-text); }
.sk-item-desc {
    font-size: 13px;
    color: var(--sk-text-3);
    line-height: 1.5;
    margin: 0 0 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* 列表项 tag 标签 */
.sk-item-tags {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 8px;
}
.sk-item-tag {
    display: inline-block;
    font-size: 12px;
    padding: 2px 8px;
    border-radius: var(--sk-radius-tag);
    text-decoration: none;
    line-height: 1.5;
}
.sk-item-tag.sk-tag-cat {
    background: var(--sk-blue-light);
    color: var(--sk-blue-text);
}
.sk-item-tag.sk-tag-scope {
    background: #f0fdf4;
    color: #059669;
}
.sk-item-tag.sk-tag-keyword {
    background: #f3f4f6;
    color: var(--sk-text-2);
}

/* 列表项 meta */
.sk-item-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    font-size: 12px;
    color: var(--sk-text-3);
}
.sk-item-meta span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.sk-item-meta .sk-meta-download { color: var(--sk-text-3); font-weight: 600; }
.sk-item-meta .sk-meta-comment { color: var(--sk-text-3); }
.sk-item-meta .sk-meta-size  { color: var(--sk-text-3); }

/* 列表项右侧：快速安装按钮 */
.sk-item-right {
    flex-shrink: 0;
    margin-left: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
}
.sk-quick-install {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #fff;
    background: #1a1a1a;
    border: 1px solid #1a1a1a;
    border-radius: var(--sk-radius-btn);
    padding: 6px 14px;
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}
.sk-quick-install:hover {
    background: #374151;
    color: #fff;
    border-color: #374151;
}

/* 私密标记 */
.sk-private-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    color: #fff;
    background: linear-gradient(135deg, #ef4444, #dc2626);
    padding: 2px 8px;
    border-radius: var(--sk-radius-tag);
}

/* 空状态 */
.sk-empty {
    text-align: center;
    padding: 60px 20px;
    color: var(--sk-text-3);
    font-size: 14px;
}

/* ============================================================
   2. 列表页 list_skill
   ============================================================ */

/* 列表页筛选区 */
.sk-filter-section {
    background: var(--sk-card);
    border-radius: var(--sk-radius-card);
    padding: 20px 24px;
    margin-bottom: 20px;
}
.sk-filter-group {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid #f3f4f6;
}
.sk-filter-group:last-child { border-bottom: none; }
.sk-filter-label {
    flex-shrink: 0;
    font-size: 14px;
    color: var(--sk-text-3);
    padding-top: 6px;
    min-width: 60px;
}
.sk-filter-options {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.sk-filter-options a {
    display: inline-block;
    font-size: 13px;
    color: var(--sk-text-2);
    padding: 4px 12px;
    border-radius: var(--sk-radius-tag);
    text-decoration: none;
    transition: all 0.15s;
}
.sk-filter-options a:hover {
    color: var(--sk-text-1);
    background: #f3f4f6;
}
.sk-filter-options a.current {
    color: #fff;
    background: var(--sk-primary);
}

/* 列表页卡片网格 */
.sk-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}
@media (max-width: 768px) {
    .sk-grid { grid-template-columns: 1fr; }
}

/* 技能卡片 */
.sk-card {
    background: var(--sk-card);
    border-radius: var(--sk-radius-card);
    border: 1px solid var(--sk-border);
    overflow: hidden;
    transition: all 0.2s;
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
}
.sk-card:hover {
    border-color: #d1d5db;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}
.sk-card-body {
    padding: 20px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.sk-card-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin: 0 0 8px;
    line-height: 1.4;
    transition: color 0.15s;
}
.sk-card:hover .sk-card-title { color: var(--sk-blue-text); }
.sk-card-desc {
    font-size: 13px;
    color: var(--sk-text-3);
    line-height: 1.5;
    margin: 0 0 12px;
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.sk-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
}
.sk-card-meta {
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 12px;
    color: var(--sk-text-3);
    padding-top: 12px;
    border-top: 1px solid #f3f4f6;
}
.sk-card-meta span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.sk-card-meta .sk-meta-download { color: var(--sk-text-3); font-weight: 600; }
.sk-card-meta .sk-meta-comment { color: var(--sk-text-3); }
.sk-card-meta .sk-meta-size   { color: var(--sk-text-3); }

/* ============================================================
   3. 详情页 show_skill
   ============================================================ */

/* 两栏布局 */
.sk-detail-layout {
    display: grid;
    grid-template-columns: 800px 320px;
    gap: 24px;
    margin-top: 20px;
    justify-content: center;
}
@media (max-width: 1180px) {
    .sk-detail-layout { grid-template-columns: 1fr; }
}

/* === 左栏 === */
.sk-detail-main { min-width: 0; }

.sk-detail-card {
    background: var(--sk-card);
    border-radius: var(--sk-radius-card);
    padding: 28px 32px;
    margin-bottom: 20px;
}
@media (max-width: 640px) {
    .sk-detail-card { padding: 20px; }
}

/* 标签栏 */
.sk-detail-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
}
.sk-detail-tag {
    display: inline-block;
    font-size: 13px;
    padding: 4px 12px;
    border-radius: var(--sk-radius-tag);
}
.sk-detail-tag.sk-tag-cat { background: var(--sk-blue-light); color: var(--sk-blue-text); }
.sk-detail-tag.sk-tag-scope { background: #f0fdf4; color: #059669; }
.sk-detail-tag.sk-tag-verified {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #d1fae5;
    color: #059669;
}

/* 详情页标题 */
.sk-detail-title {
    font-size: 26px;
    font-weight: 700;
    color: var(--sk-text-1);
    margin: 0 0 16px;
    line-height: 1.3;
    letter-spacing: -0.3px;
}

/* 作者信息条 */
.sk-author-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 0;
    border-top: 1px solid #f3f4f6;
    border-bottom: 1px solid #f3f4f6;
    margin-bottom: 20px;
}
.sk-author-left {
    display: flex;
    align-items: center;
    gap: 12px;
}
.sk-author-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}
.sk-author-info { display: flex; flex-direction: column; gap: 2px; }
.sk-author-name {
    font-size: 14px;
    font-weight: 600;
    color: var(--sk-text-1);
    display: flex;
    align-items: center;
    gap: 6px;
}
.sk-creator-badge {
    font-size: 11px;
    color: #fff;
    background: linear-gradient(135deg, #1a1a1a, #374151);
    padding: 1px 6px;
    border-radius: var(--sk-radius-tag);
}
.sk-author-meta {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 12px;
    color: var(--sk-text-3);
}
.sk-author-meta span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.sk-author-meta .sk-meta-download { color: var(--sk-text-3); font-weight: 600; }
.sk-author-meta .sk-meta-comment { color: var(--sk-text-3); }

/* 说明气泡 */
.sk-detail-intro {
    background: #f3f4f6;
    border-radius: 10px;
    padding: 14px 18px;
    font-size: 14px;
    color: var(--sk-text-2);
    line-height: 1.7;
    margin: 0 0 20px;
    position: relative;
}
.sk-detail-intro::before {
    content: '';
    position: absolute;
    top: -7px;
    left: 18px;
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #D5D5D5;
}
.sk-detail-intro::after {
    content: '';
    position: absolute;
    top: -6px;
    left: 19px;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #f3f4f6;
}

/* === 安装命令代码块 === */
.sk-install-block {
    background: var(--sk-code-bg);
    border-radius: var(--sk-radius-btn);
    margin: 0 0 20px;
    overflow: hidden;
}
.sk-install-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.sk-install-header-left {
    display: flex;
    align-items: center;
    gap: 8px;
}
.sk-install-dots {
    display: flex;
    gap: 6px;
}
.sk-install-dots span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}
.sk-install-dots span:nth-child(1) { background: #ff5f56; }
.sk-install-dots span:nth-child(2) { background: #ffbd2e; }
.sk-install-dots span:nth-child(3) { background: #27c93f; }
.sk-install-label {
    color: rgba(255, 255, 255, 0.5);
    font-size: 12px;
    font-family: 'Consolas', 'Monaco', monospace;
}
.sk-install-copy {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, 0.1);
    border: none;
    color: rgba(255, 255, 255, 0.8);
    font-size: 12px;
    padding: 4px 10px;
    border-radius: var(--sk-radius-tag);
    cursor: pointer;
    transition: all 0.15s;
}
.sk-install-copy:hover {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
}
.sk-install-copy.sk-copied {
    background: var(--sk-emerald);
    color: #fff;
}
.sk-install-code {
    padding: 16px;
    color: #e2e8f0;
    font-size: 14px;
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
    line-height: 1.6;
    word-break: break-all;
    white-space: pre-wrap;
}
.sk-install-code::before {
    content: '$ ';
    color: var(--sk-emerald);
    font-weight: bold;
}

/* 无安装命令时的提示 */
.sk-install-empty {
    padding: 16px;
    color: rgba(255, 255, 255, 0.4);
    font-size: 13px;
    text-align: center;
}

/* 兼容性说明 */
.sk-compat-note {
    font-size: 12px;
    color: var(--sk-text-3);
    margin: 0 0 20px;
    padding: 0 4px;
}
.sk-compat-note strong {
    color: var(--sk-text-2);
}

/* 折叠链接 */
.sk-collapse-link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: #f9fafb;
    border: 1px solid var(--sk-border);
    border-radius: var(--sk-radius-btn);
    cursor: pointer;
    font-size: 14px;
    color: var(--sk-text-1);
    font-weight: 500;
    transition: all 0.15s;
    margin-bottom: 10px;
}
.sk-collapse-link:hover {
    background: #f3f4f6;
    border-color: #d1d5db;
}
.sk-collapse-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--sk-blue-light);
    color: var(--sk-blue-text);
    border-radius: 50%;
    flex-shrink: 0;
}
.sk-collapse-text { flex: 1; }
.sk-collapse-hint {
    font-size: 12px;
    color: var(--sk-text-3);
    font-weight: 400;
}
.sk-collapse-link .sk-collapse-arrow {
    transition: transform 0.2s;
    color: var(--sk-text-3);
}
.sk-collapse-link.open .sk-collapse-arrow { transform: rotate(180deg); }
.sk-collapse-link.open .sk-collapse-hint { display: none; }
.sk-collapse-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    font-size: 13px;
    color: var(--sk-text-2);
    line-height: 1.7;
}
.sk-collapse-content.open {
    max-height: 500px;
    padding: 12px 0 20px;
}

/* === 正文内容（飞书风格） === */
.sk-detail-content.content {
    font-size: 15px;
    line-height: 1.9;
    color: var(--sk-text-2);
    margin: 0 0 20px;
    word-break: break-word;
    overflow: hidden;
}
.sk-detail-content.content h1 { font-size: 24px; font-weight: 700; color: var(--sk-text-1); margin: 24px 0 12px; }
.sk-detail-content.content h2 { font-size: 20px; font-weight: 600; color: var(--sk-text-1); margin: 20px 0 10px; }
.sk-detail-content.content h3 { font-size: 17px; font-weight: 600; color: var(--sk-text-1); margin: 16px 0 8px; }
.sk-detail-content.content h4 { font-size: 15px; font-weight: 600; color: var(--sk-text-1); margin: 12px 0 6px; }
.sk-detail-content.content p { margin: 0 0 12px; }
.sk-detail-content.content img { max-width: 100%; border-radius: 8px; margin: 8px 0; }
.sk-detail-content.content a { color: var(--sk-blue-text); text-decoration: none; border-bottom: 1px dashed var(--sk-blue-text); }
.sk-detail-content.content a:hover { text-decoration: none; border-bottom-style: solid; }
.sk-detail-content.content em { font-style: normal; background: #f3f4f6; color: var(--sk-blue-text); padding: 1px 6px; border-radius: 4px; }
.sk-detail-content.content strong { font-weight: 700; color: var(--sk-text-1); }
.sk-detail-content.content ul, .sk-detail-content.content ol { margin: 8px 0 12px; padding-left: 24px; }
.sk-detail-content.content li { margin-bottom: 4px; }
.sk-detail-content.content pre {
    background: #1a1a2e;
    color: #e2e8f0;
    padding: 16px;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.6;
    overflow-x: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
    word-break: break-word;
    overflow-wrap: break-word;
    margin: 12px 0;
}
.sk-detail-content.content code {
    background: #f3f4f6;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 13px;
    font-family: 'Consolas', 'Monaco', monospace;
}
.sk-detail-content.content pre code { background: transparent; padding: 0; color: inherit; }
.sk-detail-content.content hr { border: none; border-top: 1px solid var(--sk-border); margin: 20px 0; }
.sk-detail-content.content blockquote {
    border-left: 3px solid #d1d5db;
    padding: 8px 16px;
    margin: 12px 0;
    color: var(--sk-text-2);
    background: #f3f4f6;
    border-radius: 0 8px 8px 0;
}

/* === 附件下载区 === */
.sk-attach-section {
    margin: 0 0 20px;
    padding: 16px 0;
    border-top: 1px solid #f3f4f6;
}
.sk-attach-header {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin-bottom: 12px;
}
.sk-attach-list { display: flex; flex-direction: column; gap: 8px; }
.sk-attach-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: #f9fafb;
    border-radius: var(--sk-radius-btn);
    transition: background 0.15s;
}
.sk-attach-item:hover { background: #f3f4f6; }
.sk-attach-icon { flex-shrink: 0; color: var(--sk-text-1); }
.sk-attach-name {
    flex: 1;
    font-size: 14px;
    color: var(--sk-text-2);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.sk-attach-download {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: var(--sk-text-1);
    text-decoration: none;
    padding: 4px 12px;
    border: 1px solid var(--sk-border);
    border-radius: var(--sk-radius-btn);
    transition: all 0.15s;
}
.sk-attach-download:hover {
    background: var(--sk-primary);
    color: #fff;
    border-color: #1a1a1a;
}

/* === 关键词标签 === */
.sk-detail-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 20px;
}
.sk-detail-keyword {
    font-size: 13px;
    color: var(--sk-blue-text);
    background: var(--sk-blue-light);
    padding: 4px 12px;
    border-radius: 12px;
    text-decoration: none;
    transition: all 0.15s;
}
.sk-detail-keyword:hover {
    background: var(--sk-blue);
    color: #fff;
}

/* === 互动栏 === */
.sk-detail-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 0;
    border-top: 1px solid #f3f4f6;
}
.sk-action-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 18px;
    border: 1px solid var(--sk-border);
    border-radius: var(--sk-radius-btn);
    background: #fff;
    color: var(--sk-text-2);
    font-size: 14px;
    cursor: pointer;
    transition: all 0.15s;
}
.sk-action-btn:hover {
    border-color: #d1d5db;
    color: var(--sk-text-1);
}
.sk-action-btn.active {
    color: var(--sk-text-1);
    border-color: #1a1a1a;
    background: #f3f4f6;
}

/* === 私密内容遮罩 === */
.sk-private-block {
    text-align: center;
    padding: 60px 20px;
}
.sk-private-icon {
    color: var(--sk-text-3);
    margin-bottom: 16px;
}
.sk-private-icon svg { display: inline-block; }
.sk-private-text {
    font-size: 16px;
    color: var(--sk-text-2);
    margin: 0 0 8px;
}
.sk-private-sub {
    font-size: 13px;
    color: var(--sk-text-3);
    margin: 0;
}

/* === 评论区 === */
.sk-dc-section { margin-bottom: 20px; }
.sk-dc-title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 18px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin: 0 0 16px;
}
.sk-dc-count {
    font-size: 14px;
    color: var(--sk-text-3);
    font-weight: 400;
}
.sk-dc-tip {
    margin-left: auto;
    font-size: 12px;
    color: var(--sk-text-3);
    font-weight: 400;
}

/* 评论表单 */
.sk-dc-form-wrap { margin-bottom: 24px; }
.sk-dc-form-inner { display: flex; flex-direction: column; gap: 12px; }
.sk-dc-textarea {
    width: 100%;
    border: 1px solid var(--sk-border);
    border-radius: var(--sk-radius-btn);
    padding: 12px 14px;
    font-size: 14px;
    color: var(--sk-text-1);
    resize: vertical;
    min-height: 80px;
    outline: none;
    font-family: inherit;
    transition: border-color 0.15s;
    box-sizing: border-box;
}
.sk-dc-textarea:focus { border-color: var(--sk-blue); }
.sk-dc-form-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.sk-dc-form-left { display: flex; align-items: center; gap: 8px; }
.sk-dc-code-wrap { display: flex; align-items: center; gap: 8px; }
.sk-dc-code-img { height: 36px; border-radius: var(--sk-radius-tag); cursor: pointer; }
.sk-dc-code-input {
    width: 80px;
    padding: 6px 10px;
    border: 1px solid var(--sk-border);
    border-radius: var(--sk-radius-tag);
    font-size: 14px;
    outline: none;
}
.sk-dc-submit {
    background: var(--sk-primary);
    color: #fff;
    border: none;
    border-radius: var(--sk-radius-btn);
    padding: 8px 24px;
    font-size: 14px;
    cursor: pointer;
    transition: background 0.15s;
}
.sk-dc-submit:hover { background: #374151; }

/* 评论列表 */
.sk-dc-list { display: flex; flex-direction: column; gap: 16px; }
.sk-dc-item { display: flex; gap: 12px; }
.sk-dc-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    background: #e5e7eb;
}
.sk-dc-body { flex: 1; min-width: 0; }
.sk-dc-head { display: flex; align-items: center; gap: 8px; margin-bottom: 4px; }
.sk-dc-name { font-size: 14px; font-weight: 600; color: var(--sk-text-1); }
.sk-dc-time { font-size: 12px; color: var(--sk-text-3); }
.sk-dc-text {
    font-size: 14px;
    color: var(--sk-text-2);
    line-height: 1.6;
    margin-bottom: 4px;
    word-break: break-word;
}
.sk-dc-text .reply-bubble {
    background: #f5f6f7;
    border-radius: 0 10px 10px 10px;
    padding: 8px 12px;
    margin-top: 6px;
    font-size: 13px;
    color: var(--sk-text-2);
}
.sk-dc-text .reply-bubble .original_comment { display: none; }
.sk-dc-item-actions { display: flex; align-items: center; gap: 16px; }
.sk-dc-reply-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: var(--sk-text-3);
    text-decoration: none;
    cursor: pointer;
}
.sk-dc-reply-btn:hover { color: var(--sk-text-1); }
.sk-dc-reply-form-wrap { margin-top: 8px; }
.sk-dc-empty {
    text-align: center;
    padding: 40px 20px;
    font-size: 14px;
    color: var(--sk-text-3);
}

/* === 右栏 === */
.sk-detail-sidebar {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
@media (max-width: 1100px) {
    .sk-detail-sidebar { order: -1; }
}

/* 技能信息卡 */
.sk-info-card {
    background: var(--sk-card);
    border-radius: var(--sk-radius-card);
    padding: 20px;
}
.sk-info-card h3 {
    font-size: 15px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f3f4f6;
    display: flex;
    align-items: center;
    gap: 8px;
}
.sk-info-list { display: flex; flex-direction: column; gap: 12px; }
.sk-info-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
}
.sk-info-label { color: var(--sk-text-3); flex-shrink: 0; }
.sk-info-value {
    color: var(--sk-text-1);
    font-weight: 500;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 180px;
}
.sk-info-value.sk-val-primary { color: var(--sk-text-1); font-weight: 600; }
.sk-info-value.sk-val-emerald { color: var(--sk-emerald); font-weight: 600; }
.sk-info-value.sk-val-amber { color: var(--sk-amber); font-weight: 600; }
.sk-info-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
.sk-info-tag {
    display: inline-block;
    font-size: 12px;
    padding: 1px 8px;
    background: var(--sk-blue-light);
    color: var(--sk-blue-text);
    border-radius: var(--sk-radius-tag);
    line-height: 1.5;
}

/* 相关推荐 */
.sk-related-card {
    background: var(--sk-card);
    border-radius: var(--sk-radius-card);
    padding: 20px;
}
.sk-related-card h3 {
    font-size: 15px;
    font-weight: 600;
    color: var(--sk-text-1);
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f3f4f6;
    display: flex;
    align-items: center;
    gap: 8px;
}
.sk-related-list { display: flex; flex-direction: column; gap: 12px; }
.sk-related-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    text-decoration: none;
    color: inherit;
    padding: 8px 0;
    transition: all 0.15s;
}
.sk-related-item:hover .sk-related-item-title { color: var(--sk-blue-text); }
.sk-related-thumb {
    width: 56px;
    height: 56px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0;
    background: #f3f4f6;
}
.sk-related-info { flex: 1; min-width: 0; }
.sk-related-item-title {
    font-size: 14px;
    font-weight: 500;
    color: var(--sk-text-1);
    margin: 0 0 4px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    transition: color 0.15s;
}
.sk-related-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: var(--sk-text-3);
}
.sk-related-empty {
    text-align: center;
    padding: 20px;
    font-size: 13px;
    color: var(--sk-text-3);
}

/* 响应式微调 */
@media (max-width: 640px) {
    .sk-hero { padding: 32px 16px 24px; }
    .sk-hero h1 { font-size: 26px; }
    .sk-item { padding: 16px; }
    .sk-item-right { display: none; }
    .sk-detail-card { padding: 16px; }
    .sk-detail-title { font-size: 22px; }
    .sk-author-bar { flex-direction: column; align-items: flex-start; gap: 8px; }
}
