/* rumengling 页面样式 */

/* ======== 从 rumengling.html 抽取的内联样式（2026-07-18） ======== */
/* 原 <style> 块 1 */
:root {
            --primary-color: #8B4513;
            --secondary-color: #DAA520;
            --text-dark: #333;
            --text-gray: #666;
            --bg-light: #f8f9fa;
        }
        * { margin: 0; padding: 0; box-sizing: border-box; }
        body { font-family: 'Noto Serif SC','KaiTi','STKaiti',serif; background: var(--bg-light); color: var(--text-dark); line-height: 1.8; }
        header { background: linear-gradient(135deg, var(--primary-color), #5D4037); padding: 35px 20px; color: white; text-align: center; }
        .header-title { font-size: 32px; font-weight: bold; letter-spacing: 6px; text-shadow: 2px 2px 4px rgba(0,0,0,0.3); margin-bottom: 10px; }
        .header-subtitle { font-size: 16px; opacity: 0.9; }
        .cross-links { display: flex; justify-content: center; gap: 15px; padding: 20px; background: white; box-shadow: 0 2px 10px rgba(0,0,0,0.05); flex-wrap: wrap; margin-bottom: 20px; }
        .cross-link-btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 20px; background: linear-gradient(135deg, var(--primary-color), #A0522D); color: white; text-decoration: none; border-radius: 20px; font-size: 14px; transition: all 0.3s; }
        .cross-link-btn:hover { transform: translateY(-2px); box-shadow: 0 4px 15px rgba(139,69,19,0.3); }
        .direct-answer { background: white; padding: 25px; margin: 20px auto; max-width: 1000px; border-radius: 15px; box-shadow: 0 4px 15px rgba(0,0,0,0.08); border-left: 4px solid var(--primary-color); }
        .direct-answer h3 { color: var(--primary-color); margin-bottom: 10px; font-size: 18px; }
        .direct-answer p { font-size: 16px; color: #444; line-height: 2.0; }
        .container { max-width: 1000px; margin: 0 auto; padding: 20px; }
        .poem-section { background: white; border-radius: 15px; padding: 30px; margin-bottom: 30px; box-shadow: 0 2px 12px rgba(0,0,0,0.06); }
        .section-title { font-size: 22px; font-weight: bold; color: var(--primary-color); margin-bottom: 20px; padding-bottom: 15px; border-bottom: 2px solid var(--secondary-color); position: relative; }
        .section-title::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 60px; height: 2px; background: var(--primary-color); }
        .poem-card { text-align: center; padding: 20px; background: linear-gradient(135deg, rgba(139,69,19,0.05), rgba(139,69,19,0.02)); border-radius: 12px; }
        .poem-title-center { font-size: 28px; font-weight: bold; color: var(--primary-color); margin-bottom: 10px; font-family: 'KaiTi','STKaiti',serif; }
        .poem-author-center { font-size: 16px; color: var(--text-gray); margin-bottom: 20px; }
        .poem-text { font-size: 19px; line-height: 2.6; font-family: 'KaiTi','STKaiti',serif; white-space: pre-wrap; color: #333; }
        .notes-card, .translation-card, .appreciation-card, .author-card, .quote-card { font-size: 15px; color: var(--text-gray); line-height: 2.0; }
        .notes-card ul, .translation-card ul { list-style: none; padding-left: 0; }
        .notes-card li, .translation-card li { padding: 8px 0; border-bottom: 1px solid #eee; padding-left: 25px; position: relative; }
        .notes-card li::before, .translation-card li::before { content: '📝'; position: absolute; left: 0; }
        .appreciation-card h4 { color: var(--primary-color); margin: 20px 0 10px; font-size: 17px; }
        .quote-card { background: linear-gradient(135deg, rgba(218,165,32,0.1), rgba(218,165,32,0.05)); border-left: 4px solid var(--secondary-color); padding: 20px; border-radius: 0 10px 10px 0; margin-top: 15px; }
        .quote-card p { font-style: italic; }
        .credibility-footer { background: #f5f5f5; padding: 30px; margin-top: 40px; border-top: 1px solid #ddd; }
        .credibility-footer h3 { color: var(--primary-color); margin-bottom: 15px; font-size: 18px; }
        .credibility-footer p { font-size: 14px; color: #666; margin-bottom: 10px; }
        @media (max-width: 768px) {
            .header-title { font-size: 22px; letter-spacing: 3px; }
            .poem-title-center { font-size: 22px; }
            .poem-text { font-size: 17px; line-height: 2.2; }
        }
        
        @keyframes brushStroke {
            0% { clip-path: inset(0 100% 0 0); }
            100% { clip-path: inset(0 0 0 0); }
        }
        
        @keyframes charReveal {
            0% { opacity: 0; transform: translateY(10px); }
            100% { opacity: 1; transform: translateY(0); }
        }
        
        @keyframes highlight {
            0%, 100% { background-color: transparent; }
            50% { background-color: rgba(218, 165, 32, 0.3); }
        }
        
        .poem-char {
            display: inline-block;
            opacity: 0;
            animation: charReveal 0.5s ease forwards;
        }
        
        .note-item {
            cursor: pointer;
            position: relative;
            overflow: hidden;
            transition: all 0.3s ease;
        }
        
        .note-item:hover {
            background: rgba(139, 69, 19, 0.1);
            transform: translateX(5px);
        }
        
        .brush-reveal {
            animation: brushStroke 0.8s ease forwards;
        }
        
        .read-highlight {
            animation: highlight 1.5s ease-in-out infinite;
        }
        
        .audio-btn {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 10px 20px;
            background: linear-gradient(135deg, #DAA520, #B8860B);
            color: white;
            border: none;
            border-radius: 25px;
            cursor: pointer;
            font-size: 15px;
            transition: all 0.3s;
            margin-top: 15px;
        }
        
        .audio-btn:hover {
            transform: translateY(-2px);
            box-shadow: 0 4px 15px rgba(218, 165, 32, 0.4);
        }
        
        .audio-btn.playing {
            background: linear-gradient(135deg, #8B4513, #5D4037);
        }
        
        .audio-btn.playing::before {
            content: '⏸';
            animation: pulse 1s infinite;
        }
        
        @keyframes pulse {
            0%, 100% { opacity: 1; }
            50% { opacity: 0.5; }
        }
