/**
 * Trilium 分享页 Typora 经典浅色风格美化 (合并重构版)
 * 版本: 2026.3.20 (合并重构版)
 * 作者：at+gemini+豆包
 * 布局策略:  (修复宽度溢出)
 * 功能：流式布局、Typora浅色风格、左侧悬浮目录、响应式适配
 */

/* ==========================================================================
   1. 原子变量与全局重置
   ========================================================================== */
:root {
    --bg-page: #ffffff;
    --bg-card: #fbfbfa;
    --text-main: #333333;
    --text-muted: #666666;
    --link-color: #2a7fff;
    --link-hover-color: #0056d2;
    --primary: #2a7fff;
    --border: #e6e6e6;
    --radius: 4px;
    /* 表格与代码 */
    --table-hover-bg: #f5f7ff;
    --code-keyword: #007020;
    --code-string: #a31515;
    --code-inline: #e96900;
}

* { box-sizing: border-box !important; }

body.share-body {
    margin: 0 !important;
    padding: 0 !important;
    background-color: var(--bg-page) !important;
    color: var(--text-main);
    line-height: 1.6;
    font-family: -apple-system, system-ui, "Segoe UI", Roboto, sans-serif;
    overflow-x: hidden !important;
}

/* ==========================================================================
   2. 核心布局 (关键：左侧固定悬浮)
   ========================================================================== */

/* 布局容器 */
#layout {
    display: flex !important;
    flex-direction: row !important; /* 确保左菜单右正文 */
    width: 100% !important;
    max-width: 100% !important;
    min-height: 100vh !important;
}

/* 左侧目录栏：固定跟随 + 悬停触发 */
#menu {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    height: 100vh !important;
    z-index: 9999 !important;
    background: var(--bg-card) !important;
    border-right: 2px solid var(--border) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    
    /* 初始状态：窄条 */
    width: 15px !important;
    min-width: 15px !important;
    opacity: 0.6;
    padding: 20px 0 !important;
}

#menu:hover {
    width: 300px !important;
    min-width: 300px !important;
    opacity: 1 !important;
    padding: 20px !important;
    box-shadow: 5px 0 20px rgba(0,0,0,0.08) !important;
}

/* 隐藏非激活状态下的文字，防止窄条时出现错位字符 */
#menu:not(:hover) * { visibility: hidden !important; }

/* 右侧正文区 */
#main {
    flex: 1 !important;
    margin-left: 15px !important; /* 为左侧窄条留出空间 */
    padding: 40px 60px !important;
    background: var(--bg-page) !important;
    min-width: 0 !important; /* 核心：防止溢出 */
}

/* ==========================================================================
   3. 内容与排版 (Typora 视觉风格)
   ========================================================================== */

/* 标题美化 */
#title {
    font-size: 2.2em !important;
    font-weight: 800 !important;
    background: linear-gradient(90deg, #2a7fff, #1a5fcc) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    margin-bottom: 30px !important;
}

#content h2, .ck-content h2 {
    font-size: 1.6em;
    border-left: 8px solid var(--primary);
    border-bottom: 1px solid var(--border);
    padding-left: 15px !important;
    margin-top: 1.5em !important;
}

#content h3, .ck-content h3 {
    font-size: 1.3em;
    border-left: 5px solid var(--primary);
    padding-left: 12px !important;
}

/* 代码块 */
pre, .ck-content pre {
    background-color: #f8f8f8 !important;
    border: 1px solid var(--border) !important;
    padding: 16px !important;
}

code:not(pre code) {
    background-color: #f2f2f2 !important;
    color: var(--code-inline) !important;
    padding: 2px 5px !important;
    border-radius: 3px;
}

/* 表格斑马纹 */
table { width: 100% !important; margin: 20px 0 !important; }
table td, table th { border: 1px solid var(--border); padding: 12px 16px; }
table tr:nth-child(even) td { background-color: #fdf6ec; }
table tr:hover td { background-color: var(--table-hover-bg); }

/* ==========================================================================
   4. 滚动条美化
   ========================================================================== */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: #f1f1f1; }
::-webkit-scrollbar-thumb { 
    background-color: #ccc; 
    border-radius: 10px; 
    border: 2px solid #f1f1f1; 
}
::-webkit-scrollbar-thumb:hover { background-color: #888; }

/* ==========================================================================
   5. 响应式适配
   ========================================================================== */
@media (max-width: 768px) {
    #layout { flex-direction: column !important; }
    #menu {
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        opacity: 1 !important;
        border-right: none !important;
        border-bottom: 1px solid var(--border) !important;
    }
    #menu:not(:hover) * { visibility: visible !important; }
    #main { margin-left: 0 !important; padding: 20px !important; }
}