:root {
    /* Color Palette - Dark Mode Only */
    --primary-color: #eee;
    --accent-color: #ff5555;
    --text-color: #ccc;
    --text-secondary: #999;
    --bg-body: #1a1a1a;
    --bg-card: #2a2a2a;
    --bg-card-rgb: 42, 42, 42;
    --border-color: #444;
    --code-bg: #333;

    /* Spacing */
    --spacing-xs: 5px;
    --spacing-sm: 10px;
    --spacing-md: 20px;
    --spacing-lg: 30px;
    --spacing-xl: 40px;

    /* Typography */
    --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --font-size-base: 16px;
    --line-height-base: 1.6;

    /* Layout */
    --container-width: 1080px;
    --header-height: 160px;
    --sidebar-width: 300px;
    --border-radius: 8px;

    /* Shadows */
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
    --shadow-md: 0 4px 6px rgba(0,0,0,0.3);
    --shadow-lg: 0 10px 15px rgba(0,0,0,0.5);
}
/* Reset & Base */
*, *::before, *::after {
    box-sizing: border-box;
}

body {
    font-family: var(--font-family);
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    color: var(--text-color);
    background-color: var(--bg-body);
    background-image: url("data:image/webp;base64,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");
    background-attachment: fixed;
    margin: 0;
    padding: 0;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

a {
    color: var(--text-color);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: var(--accent-color);
}

*:focus {
    outline: none;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
    opacity: 0;
    transition: opacity 0.5s ease;
    background: linear-gradient(90deg, var(--bg-card) 25%, rgba(128, 128, 128, 0.1) 50%, var(--bg-card) 75%);
    background-size: 200% 100%;
    animation: skeleton 1.5s ease-in-out infinite;
}

img.loaded {
    opacity: 1;
    animation: none;
    background: transparent;
}

@keyframes skeleton {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    margin-top: 0;
    margin-bottom: var(--spacing-sm);
    font-weight: 600;
    line-height: 1.3;
}

p {
    margin-bottom: var(--spacing-md);
}

code, pre {
    font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
}
/* Layout Structure */
#main {
    max-width: var(--container-width);
    width: 94%;
    margin: var(--spacing-md) auto;
    background-color: rgba(var(--bg-card-rgb), 0.95);
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-md);
    overflow: hidden; /* For border-radius */
    padding: 0;
    flex: 1 0 auto; /* Sticky footer: auto expand */
    display: flex;
    flex-direction: column;
}

#top {
    text-align: center;
    padding: var(--spacing-lg) 0;
    margin-bottom: var(--spacing-lg);
}

#mobile-menu-btn {
    display: none;
}

#logo-container {
    text-align: center;
    margin-bottom: var(--spacing-sm);
}

#logo {
    display: inline-block;
}

#logo img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    box-shadow: 
        0 0 0 3px var(--border-color),
        0 4px 12px rgba(0, 0, 0, 0.3);
    transition: all 0.4s ease;
    opacity: 1;
}

#logo:hover img {
    box-shadow: 
        0 0 20px rgba(255, 215, 0, 0.6),
        0 0 40px rgba(255, 215, 0, 0.3),
        0 4px 12px rgba(0, 0, 0, 0.3);
    transform: scale(1.05);
}

.site-title {
    display: block;
    text-align: center;
    font-family: "KaiTi", "STKaiti", "楷体", serif;
    font-size: 2rem;
    font-weight: 600;
    color: var(--primary-color);
    text-shadow: 
        0 0 10px rgba(255, 215, 0, 0.3),
        0 2px 4px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.site-title:hover {
    color: #ffd700;
    text-shadow: 
        0 0 20px rgba(255, 215, 0, 0.6),
        0 0 40px rgba(255, 215, 0, 0.3),
        0 2px 8px rgba(0, 0, 0, 0.4);
}

.description {
    display: block;
    color: var(--text-secondary);
    font-size: 0.9em;
    font-style: italic;
}

#content {
    display: grid;
    grid-template-columns: 1fr var(--sidebar-width);
    gap: var(--spacing-lg);
    padding: 0 var(--spacing-lg) var(--spacing-lg);
    flex: 1;
}

.content-left {
    min-width: 0; /* Prevent grid blowout */
}

.content-right {
    min-width: 0;
}

#footer {
    text-align: center;
    padding: var(--spacing-md);
    border-top: 1px solid var(--border-color);
    color: var(--text-secondary);
    font-size: 0.9em;
    /* margin-top removed for sticky footer */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--spacing-sm);
    flex-shrink: 0; /* Sticky footer: prevent shrinking */
}

.back-to-top {
    color: var(--accent-color);
    font-weight: bold;
}

/* Components */
.post {
    margin-bottom: var(--spacing-xl);
    border-bottom: 1px solid var(--border-color);
    padding-bottom: var(--spacing-lg);
}

.post-title {
    font-size: 1.5rem;
    margin-bottom: var(--spacing-xs);
    color: #ffd700;
    text-shadow: 
        0 0 10px rgba(255, 215, 0, 0.3),
        0 2px 4px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.post-title a {
    color: inherit;
    text-shadow: inherit;
}

.post-title a:hover {
    color: #ffea00;
    text-shadow: 
        0 0 20px rgba(255, 215, 0, 0.6),
        0 0 40px rgba(255, 215, 0, 0.3);
}

.post-meta {
    font-size: 0.85rem;
    color: var(--text-secondary);
    margin-bottom: var(--spacing-md);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.post-meta a {
    color: var(--text-secondary);
}

.post-content {
    line-height: 1.8;
}

.post-content pre {
    opacity: 0;
    transition: opacity 0.5s ease;
    background: linear-gradient(90deg, var(--bg-card) 25%, rgba(128, 128, 128, 0.1) 50%, var(--bg-card) 75%);
    background-size: 200% 100%;
    animation: skeleton 1.5s ease-in-out infinite;
}

.post-content pre.hljs {
    opacity: 1;
    animation: none;
}

.post-footer-line {
    border-bottom: 1px solid var(--border-color);
    margin: var(--spacing-lg) 0;
    padding-bottom: var(--spacing-lg);
}

.post-header-line {
    border-bottom: 1px solid var(--border-color);
    margin-bottom: var(--spacing-lg);
    padding-bottom: var(--spacing-lg);
}

#comments {
    margin-top: var(--spacing-xl);
    padding-top: var(--spacing-lg);
    border-top: 1px solid var(--border-color);
}

#comments .comments-title {
    font-size: 1.3rem;
    margin-bottom: var(--spacing-lg);
    color: var(--primary-color);
}

#comments .comment-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

#comments .comment-item {
    margin-bottom: var(--spacing-lg);
    padding: var(--spacing-md);
    background: rgba(var(--bg-card-rgb), 0.5);
    border-radius: var(--border-radius);
    display: flex;
    gap: var(--spacing-md);
}

#comments .comment-avatar {
    flex-shrink: 0;
}

#comments .comment-avatar img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    opacity: 1;
    border: 2px solid var(--border-color);
}

#comments .comment-body {
    flex: 1;
    min-width: 0;
}

#comments .comment-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--spacing-sm);
    flex-wrap: wrap;
    gap: var(--spacing-xs);
}

#comments .comment-author {
    font-weight: 600;
    color: var(--primary-color);
}

#comments .comment-date {
    font-size: 0.8rem;
    color: var(--text-secondary);
}

#comments .comment-content {
    line-height: 1.6;
    word-wrap: break-word;
}

/* Sidebar Widgets */
.widget {
    margin-bottom: var(--spacing-lg);
}

.widget-title {
    font-size: 1.1rem;
    border-bottom: 2px solid var(--accent-color);
    padding-bottom: var(--spacing-xs);
    margin-bottom: var(--spacing-md);
    display: inline-block;
}

.widget-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.widget-list li {
    margin-bottom: var(--spacing-xs);
    border-bottom: 1px dashed var(--border-color);
    padding-bottom: var(--spacing-xs);
}

.widget-list li:last-child {
    border-bottom: none;
}

/* Pagination */
.pager {
    display: flex;
    justify-content: center; /* Center the pagination */
    list-style: none; /* Remove bullets */
    padding: 0;
    margin: var(--spacing-lg) 0;
    gap: var(--spacing-sm); /* Spacing between items */
}

/* Print Styles */
@media print {
    body {
        background: white;
        color: black;
    }
    
    #main {
        box-shadow: none;
        max-width: 100%;
        width: 100%;
    }
    
    #top, #footer, .content-right, #mobile-menu-btn, #drawer-overlay, .back-to-top {
        display: none !important;
    }
    
    #content {
        display: block;
        grid-template-columns: 1fr;
    }
    
    .post {
        page-break-inside: avoid;
        border-bottom: 1px solid #ccc;
    }
    
    .post-title a {
        color: black;
        text-shadow: none;
    }
    
    a {
        color: black;
        text-decoration: underline;
    }
    
    a[href^="http"]:after {
        content: " (" attr(href) ")";
        font-size: 0.8em;
    }
    
    #comments {
        display: none;
    }
    
    pre, code {
        background: #f5f5f5 !important;
        border: 1px solid #ddd;
    }
}

.pager li {
    display: inline-block;
}

.pager a, .pager li > span {
    display: block;
    padding: var(--spacing-sm) var(--spacing-md);
    border: 1px solid var(--border-color);
    border-radius: 4px;
    background: var(--bg-card);
    color: var(--text-color);
}

.pager a:hover {
    border-color: var(--accent-color);
    color: var(--accent-color);
    text-decoration: none;
}

.pager .current a, .pager .current span {
    background-color: var(--accent-color);
    color: #fff;
    border-color: var(--accent-color);
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
/* Responsive & Mobile */
@media screen and (max-width: 1050px) {
    /* iOS Safe Area Support */
    body {
        padding-left: env(safe-area-inset-left);
        padding-right: env(safe-area-inset-right);
    }
    
    #main {
        width: 100%;
        margin: 0;
        border-radius: 0;
        box-shadow: none;
        padding-bottom: env(safe-area-inset-bottom);
    }

    #content {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
        padding: var(--spacing-md);
        padding-bottom: calc(var(--spacing-lg) + env(safe-area-inset-bottom));
    }

    .content-left {
        text-align: left;
    }

    .post {
        border-bottom: 1px solid var(--border-color);
        padding-bottom: var(--spacing-lg);
    }

    .post-title {
        text-align: center;
    }

    .post-meta {
        text-align: center;
        justify-content: center;
    }

    .post-content {
        text-align: left;
    }

    /* Touch target optimization */
    a, button {
        min-height: 44px;
        min-width: 44px;
    }

    a {
        padding: 8px 4px;
        display: inline-block;
    }

    .widget-list a {
        padding: 12px 8px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        box-sizing: border-box;
    }

    .widget-list a .count {
        flex-shrink: 0;
        margin-left: 8px;
    }

    /* 触发按钮样式 */
    #mobile-menu-btn {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: fixed;
        top: calc(15px + env(safe-area-inset-top));
        right: calc(15px + env(safe-area-inset-right));
        z-index: 1001;
        background: rgba(42, 42, 42, 0.9);
        border: none;
        cursor: pointer;
        padding: 10px;
        border-radius: 8px;
        width: 44px;
        height: 44px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
    }

    #mobile-menu-btn span {
        display: block;
        width: 22px;
        height: 2px;
        background-color: var(--text-color);
        margin: 3px 0;
        transition: all 0.3s ease;
    }

    /* 抽屉式侧边栏 */
    .content-right {
        position: fixed;
        top: 0;
        right: 0;
        width: 300px;
        max-width: 85vw;
        height: 100vh;
        background-color: rgba(var(--bg-card-rgb), 0.98);
        backdrop-filter: blur(10px);
        z-index: 1000;
        overflow-y: auto;
        transform: translateX(100%);
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        padding: 70px 20px 20px 20px;
        box-shadow: -5px 0 15px rgba(0,0,0,0.2);
        margin-top: 0;
    }

    /* 激活状态 */
    body.drawer-open .content-right {
        transform: translateX(0);
    }

    body.drawer-open {
        overflow: hidden;
    }

    /* 遮罩层 */
    #drawer-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0,0,0,0.5);
        z-index: 999;
        display: none;
        opacity: 0;
        transition: opacity 0.3s ease;
    }

    body.drawer-open #drawer-overlay {
        display: block;
        opacity: 1;
    }

    /* 关闭提示 */
    .content-right::before {
        content: '点击侧边区域外关闭';
        display: block;
        position: absolute;
        top: 15px;
        left: 50%;
        transform: translateX(-50%);
        font-size: 0.75rem;
        color: var(--text-secondary);
        white-space: nowrap;
    }

    /* 搜索框位置调整 */
    .content-right .widget-search {
        margin-top: 0;
    }

    /* 恢复垂直列表样式 */
    .widget-list li {
        display: block;
        margin-right: 0;
        border: none;
        border-bottom: 1px dashed var(--border-color);
        background: none;
    }

    /* Sidebar Accordion Styles */
    .content-right .widget .widget-list {
        display: none;
    }

    /* Keep search visible (form inside widget) */
    .content-right .widget form {
        display: block;
    }

    .content-right .widget-title {
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 0;
        padding: 10px 0;
        border-bottom: 1px solid var(--border-color);
    }

    /* Add toggle icon + */
    .content-right .widget-title::after {
        content: '+';
        font-size: 1.2em;
        font-weight: normal;
        transition: transform 0.3s;
    }

    /* Hide title for Search Widget */
    .content-right .widget-search .widget-title {
        display: none;
    }

    /* Modern Mobile Search Bar */
    .content-right .widget-search input[type="text"] {
        width: 100%;
        padding: 12px 20px;
        border: none;
        border-radius: 25px;
        background-color: rgba(0, 0, 0, 0.05); /* Light gray for light mode */
        color: var(--text-color);
        font-size: 0.95em;
        transition: all 0.3s ease;
        text-align: center; /* Center placeholder */
    }

    /* Adjust placeholder color */
    .content-right .widget-search input[type="text"]::placeholder {
        color: var(--text-secondary);
        opacity: 0.7;
    }

    /* Focus state */
    .content-right .widget-search input[type="text"]:focus {
        background-color: rgba(0, 0, 0, 0.08);
        outline: none;
        box-shadow: 0 0 0 2px var(--accent-color);
        text-align: left; /* Move text to left when typing */
        padding-left: 20px;
    }

    /* Dark mode adjustments if variable exists, otherwise rely on opacity */
    @media (prefers-color-scheme: dark) {
        .content-right .widget-search input[type="text"] {
            background-color: rgba(255, 255, 255, 0.1);
        }
        .content-right .widget-search input[type="text"]:focus {
            background-color: rgba(255, 255, 255, 0.15);
        }
    }

    /* Active State (Expanded) */
    .content-right .widget.active .widget-list {
        display: block;
        padding-top: 10px;
        animation: fadeIn 0.3s;
    }

    .content-right .widget.active .widget-title {
        border-bottom: none; /* Remove border when expanded if desired */
    }

    .content-right .widget.active .widget-title::after {
        transform: rotate(45deg); /* + becomes x */
    }

    @keyframes fadeIn {
        from { opacity: 0; transform: translateY(-5px); }
        to { opacity: 1; transform: translateY(0); }
    }
}

/* Pagination: Simplify only on smaller mobile screens */
@media screen and (max-width: 800px) {
    /* 简化分页，只显示上一页和下一页 */
    .pager li {
        display: none !important; /* 强制隐藏所有页码 */
    }

    .pager li.prev,
    .pager li.next {
        display: inline-block !important; /* 仅显示上一页和下一页 */
    }

    /* 增加点击区域，优化触摸体验 */
    .pager li.prev a,
    .pager li.next a {
        padding: 10px 20px;
    }
}
