@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root{--color-primary: #0891B2;--color-primary-hover: #0E7490;--color-secondary: #22D3EE;--color-cta: #22C55E;--color-cta-hover: #16A34A;--color-bg: #F8FAFC;--color-bg-alt: #ECFEFF;--color-text: #164E63;--color-text-muted: #64748B;--color-border: #E2E8F0;--color-white: #FFFFFF;--color-danger: #EF4444;--color-warning: #F59E0B;--color-success: #22C55E;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-primary: #22D3EE;--color-primary-hover: #67E8F9;--color-bg: #0F172A;--color-bg-alt: #1E293B;--color-text: #E2E8F0;--color-text-muted: #94A3B8;--color-border: #334155;--color-white: #1E293B}}:root[data-theme=dark]{--color-primary: #22D3EE;--color-primary-hover: #67E8F9;--color-bg: #0F172A;--color-bg-alt: #1E293B;--color-text: #E2E8F0;--color-text-muted: #94A3B8;--color-border: #334155;--color-white: #1E293B}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth}.home-container{display:grid;grid-template-columns:1fr 280px;gap:var(--spacing-xl);max-width:1200px;margin:0 auto}@media (max-width: 1024px){.home-container{grid-template-columns:1fr}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.page-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text);margin:0}.clear-filter-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-primary);background:var(--color-bg-alt);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.clear-filter-btn:hover{background:var(--color-primary);color:var(--color-white)}.filter-bar{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);align-items:stretch}.search-box{position:relative;flex:1}.search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.search-input{width:100%;height:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 44px;font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-white)}.search-input::placeholder{color:var(--color-text-muted)}.search-clear{position:absolute;right:var(--spacing-md);top:50%;transform:translateY(-50%);width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--color-text-muted);background:var(--color-border);border:none;border-radius:50%;cursor:pointer}.search-clear:hover{background:var(--color-text-muted);color:var(--color-white)}.sort-buttons{display:flex;gap:var(--spacing-xs);background:var(--color-bg);border-radius:var(--radius-lg);padding:var(--spacing-xs)}.sort-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.sort-btn:hover{color:var(--color-text)}.sort-btn.active{background:var(--color-white);color:var(--color-primary);box-shadow:var(--shadow-sm)}@media (max-width: 640px){.filter-bar{flex-direction:column}.sort-buttons{justify-content:center}}.articles-grid{display:flex;flex-direction:column;gap:var(--spacing-lg)}.article-card{display:grid;grid-template-columns:200px 1fr;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden}.article-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-primary);transform:scaleY(0);transition:transform var(--transition-normal)}.article-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-4px)}.article-card:hover:before{transform:scaleY(1)}.article-card.skeleton{cursor:default;pointer-events:none}.skeleton-cover{height:160px;background:linear-gradient(90deg,var(--color-bg) 25%,var(--color-bg-alt) 50%,var(--color-bg) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-md)}.skeleton-title{height:24px;width:80%;background:linear-gradient(90deg,var(--color-bg) 25%,var(--color-bg-alt) 50%,var(--color-bg) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-sm);margin-bottom:var(--spacing-md)}.skeleton-text{height:16px;width:100%;background:linear-gradient(90deg,var(--color-bg) 25%,var(--color-bg-alt) 50%,var(--color-bg) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm)}.skeleton-text.short{width:60%}.skeleton-meta{height:14px;width:40%;background:linear-gradient(90deg,var(--color-bg) 25%,var(--color-bg-alt) 50%,var(--color-bg) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-sm);margin-top:var(--spacing-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 768px){.article-card{grid-template-columns:1fr}}.article-cover{overflow:hidden;border-radius:var(--radius-md)}.article-cover img{width:100%;height:140px;object-fit:cover;transition:transform var(--transition-slow)}.article-card:hover .article-cover img{transform:scale(1.05)}.article-content{display:flex;flex-direction:column}.article-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-sm);line-height:1.4;transition:color var(--transition-fast)}.article-card:hover .article-title{color:var(--color-primary)}.article-excerpt{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.6;margin:0 0 var(--spacing-md);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}.article-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.meta-item{display:flex;align-items:center;gap:var(--spacing-xs)}.read-more{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:500;color:var(--color-primary);opacity:0;transform:translate(-8px);transition:all var(--transition-normal)}.article-card:hover .read-more{opacity:1;transform:translate(0)}.pagination-wrapper{display:flex;justify-content:center;margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.empty-state{padding:var(--spacing-2xl);text-align:center}.sidebar{display:flex;flex-direction:column;gap:var(--spacing-lg)}@media (max-width: 1024px){.sidebar{flex-direction:row;flex-wrap:wrap}.sidebar-section{flex:1;min-width:280px}}.sidebar-section{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.sidebar-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary)}.sidebar-empty{font-size:var(--font-size-sm);color:var(--color-text-muted)}.category-list{list-style:none;margin:0;padding:0}.category-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--color-text);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.category-item:hover{background:var(--color-bg-alt);color:var(--color-primary)}.category-item.active{background:var(--color-primary);color:var(--color-white)}.tag-cloud{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag-item{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.tag-item:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-alt)}.tag-item.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.public-layout{min-height:100vh;display:flex;flex-direction:column}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));z-index:1000}.public-header{position:sticky;top:0;z-index:100;background:var(--color-white);border-bottom:1px solid var(--color-border);padding:var(--spacing-md) var(--spacing-xl)}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto}.site-logo{font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary);cursor:pointer}.nav-menu{display:flex;gap:var(--spacing-md)}.nav-item{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.nav-item:hover{background:var(--color-bg);color:var(--color-primary)}.nav-item.active{background:var(--color-bg-alt);color:var(--color-primary)}.theme-toggle{position:relative;width:40px;height:40px;padding:0;border-radius:50%;overflow:hidden}.theme-icon-wrapper{position:relative;width:20px;height:20px}.theme-icon{position:absolute;top:0;left:0;font-size:var(--font-size-lg);transition:all var(--transition-normal)}.theme-toggle.light .light-icon{opacity:1;transform:rotate(0)}.theme-toggle.light .dark-icon{opacity:0;transform:rotate(-90deg)}.theme-toggle.dark .light-icon{opacity:0;transform:rotate(90deg)}.theme-toggle.dark .dark-icon{opacity:1;transform:rotate(0);color:var(--color-warning)}.theme-toggle:hover{background:var(--color-bg-alt)}.public-main{flex:1;padding:var(--spacing-xl);background:var(--color-bg)}.main-container{max-width:1200px;margin:0 auto;background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);min-height:calc(100vh - 200px)}.public-footer{background:var(--color-white);border-top:1px solid var(--color-border);padding:var(--spacing-lg) var(--spacing-xl);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.back-to-top{position:fixed;bottom:var(--spacing-xl);right:var(--spacing-xl);width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--color-white);background:var(--color-primary);border:none;border-radius:50%;cursor:pointer;box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.back-to-top:hover{background:var(--color-primary-hover);transform:translateY(-4px)}.article-layout{display:flex;gap:var(--spacing-xl);max-width:1000px;margin:0 auto}.article-layout .article-page{flex:1;min-width:0}.article-page{max-width:800px;margin:0 auto}.article-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl)}.article-nav-right{display:flex;gap:var(--spacing-sm)}.back-btn,.edit-btn,.toc-toggle{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.back-btn{color:var(--color-text-muted)}.back-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.edit-btn{color:var(--color-cta);border-color:var(--color-cta)}.edit-btn:hover{background:var(--color-cta);color:var(--color-white)}.toc-toggle{display:none;color:var(--color-text-muted)}.toc-toggle:hover,.toc-toggle.active{border-color:var(--color-primary);color:var(--color-primary)}.article-hero-image{width:100%;max-height:400px;object-fit:cover;border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl)}.article-page-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text);line-height:1.3;margin:0 0 var(--spacing-lg)}.article-page-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.meta-item.clickable{cursor:pointer}.meta-item.clickable:hover{color:var(--color-primary)}.article-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border)}.article-body{margin-bottom:var(--spacing-xl);font-size:16px}.article-footer{text-align:center;padding-top:var(--spacing-xl);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm)}.share-section{margin-top:var(--spacing-lg);display:flex;justify-content:center;gap:var(--spacing-md)}.like-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.like-btn:hover:not(:disabled){border-color:#ef4444;color:#ef4444}.like-btn.liked{background:#fee2e2;border-color:#ef4444;color:#ef4444;cursor:pointer}.share-wrapper{position:relative}.share-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-primary);background:var(--color-bg-alt);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.share-btn:hover{background:var(--color-primary);color:var(--color-white)}.share-menu{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:var(--spacing-sm);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;min-width:140px}.share-menu button{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast)}.share-menu button:hover{background:var(--color-bg)}.share-menu button svg{flex-shrink:0}.related-articles{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.related-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin-bottom:var(--spacing-lg)}.related-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.related-card{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.related-card:hover{background:var(--color-bg-alt);transform:translateY(-2px)}.related-cover{width:80px;height:60px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.related-content{flex:1;min-width:0}.related-card-title{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin:0 0 var(--spacing-xs);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.related-meta{display:flex;gap:var(--spacing-md);font-size:var(--font-size-xs);color:var(--color-text-muted)}@media (max-width: 640px){.related-grid{grid-template-columns:1fr}}.loading-container{display:flex;align-items:center;justify-content:center;min-height:400px}.article-toc{position:sticky;top:100px;width:240px;max-height:calc(100vh - 150px);overflow-y:auto;flex-shrink:0}.toc-header{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.toc-header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.toc-collapse-icon{font-size:var(--font-size-xs);color:var(--color-text-muted);transition:transform var(--transition-fast)}.article-toc.collapsed .toc-collapse-icon{transform:rotate(180deg)}.toc-nav{display:flex;flex-direction:column}.toc-item{display:block;width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-muted);background:transparent;border:none;border-left:2px solid transparent;text-align:left;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toc-item:hover{color:var(--color-text);background:var(--color-bg)}.toc-item.active{color:var(--color-primary);border-left-color:var(--color-primary);background:var(--color-bg-alt)}.toc-item.level-2{padding-left:var(--spacing-lg)}.toc-item.level-3{padding-left:var(--spacing-xl);font-size:var(--font-size-xs)}@media (max-width: 1024px){.article-layout{flex-direction:column}.toc-toggle{display:flex}.article-toc{position:fixed;top:0;right:0;width:280px;height:100vh;max-height:100vh;background:var(--color-white);border-left:1px solid var(--color-border);padding:var(--spacing-lg);transform:translate(100%);transition:transform var(--transition-normal);z-index:100;box-shadow:var(--shadow-lg)}.article-toc.show{transform:translate(0)}}.markdown-body h1,.markdown-body h2,.markdown-body h3{scroll-margin-top:80px}.markdown-body{font-family:var(--font-family);font-size:inherit;line-height:1.8;color:var(--color-text)}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{font-weight:600;color:var(--color-text);margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md);line-height:1.4}.markdown-body h1{font-size:var(--font-size-2xl)}.markdown-body h2{font-size:var(--font-size-xl);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm)}.markdown-body h3{font-size:var(--font-size-lg)}.markdown-body p{margin-bottom:var(--spacing-md)}.markdown-body a{color:var(--color-primary);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body ul,.markdown-body ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-xl)}.markdown-body li{margin-bottom:var(--spacing-sm)}.markdown-body blockquote{margin:var(--spacing-lg) 0;padding:var(--spacing-md) var(--spacing-lg);border-left:4px solid var(--color-primary);background:var(--color-bg-alt);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--color-text-muted);font-style:italic}.markdown-body code{font-family:Consolas,Monaco,monospace;font-size:.9em;padding:2px 6px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-primary)}.markdown-body pre{margin:var(--spacing-lg) 0;padding:var(--spacing-lg);background:#1e293b;border-radius:var(--radius-md);overflow-x:auto;position:relative}.markdown-body pre:hover .copy-code-btn{opacity:1}.copy-code-btn{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-family:var(--font-family);color:#94a3b8;background:#334155;border:none;border-radius:var(--radius-sm);cursor:pointer;opacity:0;transition:all var(--transition-fast)}.copy-code-btn:hover{background:#475569;color:#e2e8f0}.copy-code-btn.copied{color:#22c55e}.markdown-body pre code{padding:0;background:transparent;border:none;color:#e2e8f0;font-size:var(--font-size-sm)}.markdown-body img{max-width:100%;height:auto;border-radius:var(--radius-md);margin:var(--spacing-lg) 0}.markdown-body table{width:100%;border-collapse:collapse;margin:var(--spacing-lg) 0}.markdown-body th,.markdown-body td{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);text-align:left}.markdown-body th{background:var(--color-bg);font-weight:600}.markdown-body hr{border:none;border-top:1px solid var(--color-border);margin:var(--spacing-xl) 0}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg-alt) 0%,var(--color-bg) 100%);padding:var(--spacing-lg)}.login-container{width:100%;max-width:400px;background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--spacing-2xl)}.login-header{text-align:center;margin-bottom:var(--spacing-xl)}.login-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-primary);margin:0 0 var(--spacing-sm)}.login-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-label{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.form-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-primary)}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-input::placeholder{color:var(--color-text-muted)}.login-btn{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);font-weight:600;font-family:var(--font-family);color:var(--color-white);background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.login-btn:hover:not(:disabled){background:var(--color-primary-hover)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-footer{margin-top:var(--spacing-xl);text-align:center}.back-home-btn{font-size:var(--font-size-sm);color:var(--color-text-muted);background:none;border:none;cursor:pointer}.back-home-btn:hover{color:var(--color-primary)}.not-found-page{display:flex;align-items:center;justify-content:center;min-height:400px;text-align:center}.not-found-content{max-width:400px}.not-found-code{font-size:120px;font-weight:700;color:var(--color-primary);line-height:1;margin:0 0 var(--spacing-md);opacity:.2}.not-found-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md)}.not-found-desc{font-size:var(--font-size-base);color:var(--color-text-muted);margin:0 0 var(--spacing-xl)}.not-found-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);font-weight:500;font-family:var(--font-family);color:var(--color-white);background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.not-found-btn:hover{background:var(--color-primary-hover)}.admin-layout{display:flex;min-height:100vh;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.admin-sidebar{width:260px;background:linear-gradient(180deg,#0f172a,#1e293b);display:flex;flex-direction:column;transition:width .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 20px #0000001a;position:relative;z-index:10}.admin-sidebar.collapsed{width:72px}.sidebar-header{height:72px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);position:relative}.sidebar-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}.sidebar-logo{font-size:var(--font-size-lg);font-weight:700;color:var(--color-white);white-space:nowrap;overflow:hidden;letter-spacing:-.5px}.admin-sidebar.collapsed .sidebar-logo{font-size:var(--font-size-2xl)}.sidebar-nav{flex:1;padding:var(--spacing-lg) var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.sidebar-item{width:100%;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-sm);font-family:var(--font-family);color:#94a3b8;background:transparent;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;text-align:left;position:relative;overflow:hidden}.sidebar-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--color-primary);border-radius:0 2px 2px 0;transition:height .2s ease}.admin-sidebar.collapsed .sidebar-item{justify-content:center;padding:var(--spacing-md)}.admin-sidebar.collapsed .sidebar-item span:not(.anticon){display:none}.sidebar-item:hover{color:var(--color-white);background:#ffffff14}.sidebar-item:hover:before{height:20px}.sidebar-item.active{color:var(--color-white);background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);box-shadow:0 4px 15px #0891b266}.sidebar-item.active:before{height:0}.sidebar-item .anticon{font-size:var(--font-size-lg);transition:transform .2s ease}.sidebar-item:hover .anticon{transform:scale(1.1)}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1)}.admin-main{flex:1;display:flex;flex-direction:column;background:transparent;min-width:0}.admin-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-xl);background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05);position:sticky;top:0;z-index:5}.toggle-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:var(--font-size-lg);color:#64748b;background:#f1f5f9;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease}.toggle-btn:hover{background:var(--color-primary);color:#fff;transform:scale(1.05)}.logout-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.logout-btn:hover{border-color:var(--color-danger);color:var(--color-danger)}.admin-content{flex:1;padding:var(--spacing-lg);overflow-y:auto}.admin-page{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.admin-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.admin-page-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin:0}.btn-primary{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-white);background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer}.btn-primary:hover{background:var(--color-primary-hover)}.admin-table-wrapper{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}.admin-table th{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg)}.admin-table tbody tr:hover{background:var(--color-bg-alt)}.text-muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.text-ellipsis{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-title-cell{font-weight:500;color:var(--color-text)}.status-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:500;border-radius:var(--radius-sm)}.status-badge.published{color:#16a34a;background:#dcfce7}.status-badge.draft{color:#ca8a04;background:#fef9c3}.view-count{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-muted)}.action-buttons{display:flex;gap:var(--spacing-xs)}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:var(--font-size-sm);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.action-btn.view{color:var(--color-text-muted)}.action-btn.view:hover{border-color:var(--color-primary);color:var(--color-primary)}.action-btn.edit{color:var(--color-primary)}.action-btn.edit:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.action-btn.delete{color:var(--color-danger)}.action-btn.delete:hover{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-white)}.admin-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-muted)}.pagination-buttons{display:flex;gap:var(--spacing-sm)}.pagination-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.pagination-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.tags-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-md)}.tag-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.tag-card:hover{border-color:var(--color-primary)}.tag-card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.tag-icon{color:var(--color-primary)}.tag-name{font-weight:500;color:var(--color-text)}.tag-card-meta{display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.tag-card-actions{padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.tag-card-actions .action-btn{width:auto;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);gap:var(--spacing-xs)}.editor-page{display:flex;flex-direction:column;height:calc(100vh - 96px);margin:calc(-1 * var(--spacing-lg));background:var(--color-white);overflow-y:auto}.editor-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.editor-header-left{display:flex;align-items:center;gap:var(--spacing-md)}.editor-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin:0}.editor-header-right{display:flex;gap:var(--spacing-sm)}.editor-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.editor-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.editor-btn.active{background:var(--color-bg-alt);border-color:var(--color-primary);color:var(--color-primary)}.editor-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.editor-btn.primary:hover:not(:disabled){background:var(--color-primary-hover)}.editor-btn:disabled{opacity:.6;cursor:not-allowed}.editor-body{flex:1;display:flex;overflow:visible}.editor-body.with-preview .editor-main{width:55%;border-right:1px solid var(--color-border)}.editor-main{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:var(--spacing-lg)}.editor-page.single-page .editor-body.single-page-layout{flex:1;display:flex;overflow:visible}.editor-page.single-page .editor-main{flex:1;display:flex;flex-direction:column;overflow:visible;padding:var(--spacing-lg)}.editor-page.single-page .editor-body.with-preview .editor-main{width:55%;border-right:1px solid var(--color-border)}.editor-page.single-page .editor-preview{width:45%}.editor-form{flex:1}.editor-settings-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.settings-column{display:flex;flex-direction:column}.native-form-item{margin-bottom:var(--spacing-lg)}.native-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-sm)}.native-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748B' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.native-select:focus{outline:none;border-color:var(--color-primary)}.native-select:hover{border-color:var(--color-primary)}.native-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.native-input:focus{outline:none;border-color:var(--color-primary)}.native-input::placeholder{color:var(--color-text-muted)}.tag-selector{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.tag-option{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.tag-option:hover{border-color:var(--color-primary);color:var(--color-primary)}.tag-option.selected{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.no-tags{font-size:var(--font-size-sm);color:var(--color-text-muted)}.settings-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary);display:inline-block;width:fit-content}.cover-preview-small{position:relative;display:inline-block;margin-bottom:var(--spacing-sm)}.cover-preview-small img{max-width:180px;max-height:100px;object-fit:cover;border-radius:var(--radius-md)}@media (max-width: 768px){.editor-settings-row{grid-template-columns:1fr;gap:var(--spacing-lg)}}.title-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-xl);font-weight:600;font-family:var(--font-family);color:var(--color-text);background:transparent;border:none;border-bottom:2px solid var(--color-border)}.title-input:focus{outline:none;border-bottom-color:var(--color-primary)}.title-input::placeholder{color:var(--color-text-muted);font-weight:400}.markdown-editor-wrapper{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--spacing-md)}.markdown-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:var(--spacing-sm);background:var(--color-bg);border-bottom:1px solid var(--color-border)}.markdown-toolbar button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:600;color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.markdown-toolbar button:hover{color:var(--color-primary);background:var(--color-white)}.markdown-editor-wrapper .ant-form-item{margin-bottom:0}.markdown-editor-wrapper .content-textarea{border:none!important;border-radius:0!important}.content-textarea{font-family:Consolas,Monaco,monospace!important;font-size:var(--font-size-sm)!important;line-height:1.6!important;resize:none!important}.form-section{margin-bottom:var(--spacing-lg)}.form-section-label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-sm)}.cover-preview{position:relative;display:inline-block;margin-bottom:var(--spacing-md)}.cover-preview img{max-width:300px;max-height:200px;object-fit:cover;border-radius:var(--radius-md)}.cover-delete{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);color:var(--color-white);background:#00000080;border:none;border-radius:var(--radius-sm);cursor:pointer}.cover-delete:hover{background:var(--color-danger)}.upload-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px dashed var(--color-border);border-radius:var(--radius-md);cursor:pointer}.upload-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.editor-preview{width:45%;display:flex;flex-direction:column;background:var(--color-bg)}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:var(--color-white)}.fullscreen-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:var(--font-size-base);color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}.fullscreen-btn:hover{color:var(--color-primary);background:var(--color-bg)}.fullscreen-preview-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:var(--color-white);display:flex;flex-direction:column}.fullscreen-preview-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-xl);border-bottom:1px solid var(--color-border)}.fullscreen-preview-header h2{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text);margin:0}.fullscreen-close-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.fullscreen-close-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.fullscreen-preview-content{flex:1;overflow-y:auto;padding:var(--spacing-xl)}.fullscreen-preview-content .markdown-body{max-width:800px;margin:0 auto}.history-panel{position:fixed;top:0;right:0;width:320px;height:100vh;background:var(--color-white);border-left:1px solid var(--color-border);box-shadow:var(--shadow-lg);z-index:1000;display:flex;flex-direction:column}.history-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.history-header h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-text);margin:0}.history-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}.history-close:hover{color:var(--color-text);background:var(--color-bg)}.history-list{flex:1;overflow-y:auto;padding:var(--spacing-sm)}.history-item{padding:var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.history-item:hover{background:var(--color-bg)}.history-time{display:block;font-size:var(--font-size-xs);color:var(--color-primary);margin-bottom:var(--spacing-xs)}.history-preview{display:block;font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-content{flex:1;padding:var(--spacing-lg);overflow-y:auto}.preview-content .markdown-body{font-size:var(--font-size-sm);line-height:1.6}.ant-spin-nested-loading>div>.ant-spin{max-height:none}.ant-pagination-item{border-radius:var(--radius-md)}.ant-pagination-item-active{background:var(--color-primary);border-color:var(--color-primary)}.ant-pagination-item-active a{color:var(--color-white)}.ant-btn-primary{background:var(--color-primary);border-color:var(--color-primary)}.ant-btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ant-select-selector{border-radius:var(--radius-md)!important}.ant-select-dropdown{z-index:1050!important}.ant-input,.ant-input-affix-wrapper{border-radius:var(--radius-md)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.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}@media (max-width: 768px){.public-header,.public-main{padding:var(--spacing-md)}.main-container{padding:var(--spacing-md);border-radius:var(--radius-md)}.page-title{font-size:var(--font-size-xl)}.article-page-title{font-size:var(--font-size-2xl)}.back-to-top{bottom:var(--spacing-lg);right:var(--spacing-lg);width:40px;height:40px}}.dashboard-page{background:var(--color-bg);padding:var(--spacing-lg)}.dashboard-page .admin-page-header{background:var(--color-white);padding:var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);border-bottom:none}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);border-top:3px solid var(--color-primary);display:flex;align-items:center;gap:var(--spacing-md);transition:all var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);border-radius:var(--radius-md);flex-shrink:0}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text);line-height:1.2}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.dashboard-section{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-primary)}.top-articles{display:flex;flex-direction:column;gap:var(--spacing-sm)}.top-article-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.top-article-item:hover{background:var(--color-bg-alt);transform:translate(4px)}.top-article-item .rank{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary);min-width:32px}.top-article-item .title{flex:1;font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-article-item .views,.top-article-item .likes{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-muted);min-width:60px}.top-article-item .likes{color:#ef4444}.no-data{text-align:center;color:var(--color-text-muted);padding:var(--spacing-xl)}.reading-progress-badge{margin-left:auto;padding:2px 8px;font-size:var(--font-size-xs);font-weight:600;color:var(--color-white);background:var(--color-primary);border-radius:var(--radius-sm)}.meta-item.estimated-time{color:var(--color-cta);font-weight:500}.shortcuts-help-btn{position:fixed;bottom:var(--spacing-xl);left:var(--spacing-xl);width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-muted);background:var(--color-white);border:1px solid var(--color-border);border-radius:50%;cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast);z-index:50}.shortcuts-help-btn:hover{color:var(--color-primary);border-color:var(--color-primary)}.shortcuts-modal{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;z-index:200;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.shortcuts-content{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);min-width:300px;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.shortcuts-content h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-lg);text-align:center}.shortcuts-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.shortcut-item{display:flex;align-items:center;gap:var(--spacing-md)}.shortcut-item kbd{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 var(--spacing-sm);font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:500;color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 2px 0 var(--color-border)}.shortcut-item span{font-size:var(--font-size-sm);color:var(--color-text-muted)}.shortcuts-close{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-white);background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.shortcuts-close:hover{background:var(--color-primary-hover)}.article-meta .meta-item.likes{color:#ef4444}.search-highlight{background:#fef08a;color:var(--color-text);padding:0 2px;border-radius:2px}@media (prefers-color-scheme: dark){.search-highlight{background:#854d0e;color:#fef08a}}.auto-save-status{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);border-radius:var(--radius-sm);margin-left:var(--spacing-md)}.auto-save-status.saved{color:var(--color-success);background:#22c55e1a}.auto-save-status.saving{color:var(--color-warning);background:#f59e0b1a}.auto-save-status.unsaved{color:var(--color-text-muted);background:var(--color-bg)}.editor-stats{display:flex;gap:var(--spacing-lg);padding:var(--spacing-sm) 0;font-size:var(--font-size-xs);color:var(--color-text-muted);border-top:1px solid var(--color-border)}.header-actions{display:flex;gap:var(--spacing-sm)}.btn-danger{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-white);background:var(--color-danger);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-danger:hover{background:#dc2626}.table-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.admin-table tbody tr.selected{background:var(--color-bg-alt)}.article-count{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:2px 8px;font-size:var(--font-size-xs);color:var(--color-primary);background:var(--color-bg-alt);border-radius:var(--radius-sm)}.nav-item.theme-toggle{padding:var(--spacing-sm);font-size:var(--font-size-lg)}.nav-item.theme-toggle:hover{color:var(--color-warning)}.reading-history{display:flex;flex-direction:column;gap:var(--spacing-sm)}.history-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.history-item:hover{background:var(--color-bg-alt)}.history-cover{width:40px;height:30px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.history-title{font-size:var(--font-size-sm);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wechat-qr-content{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}.wechat-qr-content h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin:0 0 var(--spacing-lg)}.qr-placeholder{padding:var(--spacing-md);background:var(--color-white);border-radius:var(--radius-md);display:inline-block}.qr-placeholder img{display:block;width:200px;height:200px}.qr-tip{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:var(--spacing-md) 0}.print-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:var(--font-size-base);color:var(--color-text-muted);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.print-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}@media print{.public-header,.public-footer,.back-to-top,.article-nav,.article-toc,.share-section,.related-articles,.shortcuts-help-btn,.scroll-progress{display:none!important}.public-main{padding:0;background:#fff}.main-container{box-shadow:none;padding:0}.article-page{max-width:100%}.article-hero-image{max-height:300px}.markdown-body pre{white-space:pre-wrap;word-wrap:break-word}.markdown-body a{color:inherit;text-decoration:underline}.markdown-body a:after{content:" (" attr(href) ")";font-size:.8em;color:#666}}.action-btn.pin{color:var(--color-text-muted)}.action-btn.pin:hover{border-color:var(--color-warning);color:var(--color-warning)}.action-btn.pin.active{background:var(--color-warning);border-color:var(--color-warning);color:var(--color-white)}.admin-search-box{position:relative;width:200px}.admin-search-box .search-icon{position:absolute;left:var(--spacing-sm);top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.admin-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 32px;font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-fast)}.admin-search-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-white)}.status-filter{display:flex;gap:2px;background:var(--color-bg);border-radius:var(--radius-md);padding:2px}.filter-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.filter-btn:hover{color:var(--color-text)}.filter-btn.active{background:var(--color-white);color:var(--color-primary);box-shadow:var(--shadow-sm)}.action-btn.copy{color:var(--color-text-muted)}.action-btn.copy:hover{border-color:var(--color-secondary);color:var(--color-secondary)}.article-card.pinned{border-color:var(--color-warning);position:relative}.pinned-badge{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:2px 8px;font-size:var(--font-size-xs);font-weight:500;color:var(--color-white);background:var(--color-warning);border-radius:var(--radius-sm);z-index:1}.article-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--color-border)}.article-progress-bar{height:100%;background:var(--color-primary);transition:width var(--transition-normal)}.read-complete-badge{position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);padding:2px 8px;font-size:var(--font-size-xs);font-weight:500;color:var(--color-white);background:var(--color-success);border-radius:var(--radius-sm);z-index:1}.action-btn.export{color:var(--color-text-muted)}.action-btn.export:hover{border-color:var(--color-success);color:var(--color-success)}.activity-timeline{display:flex;flex-direction:column;gap:var(--spacing-sm)}.activity-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.activity-item:hover{background:var(--color-bg-alt)}.activity-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);color:var(--color-primary);background:var(--color-bg-alt);border-radius:50%;flex-shrink:0}.activity-content{flex:1;min-width:0}.activity-title{display:block;font-weight:500;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:var(--spacing-xs)}.activity-meta{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.status-dot{width:6px;height:6px;border-radius:50%;margin-left:var(--spacing-sm)}.status-dot.published{background:var(--color-success)}.status-dot.draft{background:var(--color-warning)}.quick-actions-fab{position:fixed;bottom:var(--spacing-xl);right:var(--spacing-xl);z-index:100}.fab-main{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);color:var(--color-white);background:var(--color-primary);border:none;border-radius:50%;cursor:pointer;box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.fab-main:hover{background:var(--color-primary-hover);transform:scale(1.05)}.quick-actions-fab.open .fab-main{background:var(--color-text);transform:rotate(45deg)}.fab-menu{position:absolute;bottom:70px;right:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.fab-menu button{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--color-white);background:var(--color-text);border:none;border-radius:50%;cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast);animation:fabSlideIn .2s ease forwards;opacity:0;transform:translateY(10px)}.fab-menu button:nth-child(1){animation-delay:0ms}.fab-menu button:nth-child(2){animation-delay:50ms}.fab-menu button:nth-child(3){animation-delay:.1s}.fab-menu button:nth-child(4){animation-delay:.15s}.fab-menu button:hover{background:var(--color-primary);transform:scale(1.1)}@keyframes fabSlideIn{to{opacity:1;transform:translateY(0)}}.comments-section{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:1px solid var(--color-border)}.comments-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-lg)}.comments-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);margin:0}.comments-toggle{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.comments-toggle:hover{border-color:var(--color-primary);color:var(--color-primary)}.comment-form{background:var(--color-bg);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.comment-form-row{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.comment-avatar{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);color:var(--color-white);background:var(--color-primary);border-radius:50%;flex-shrink:0}.comment-author-input{flex:1;max-width:200px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md)}.comment-author-input:focus{outline:none;border-color:var(--color-primary)}.comment-content-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);resize:vertical;min-height:80px}.comment-content-input:focus{outline:none;border-color:var(--color-primary)}.comment-form-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--spacing-md)}.comment-char-count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.comment-submit-btn{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-white);background:var(--color-primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.comment-submit-btn:hover:not(:disabled){background:var(--color-primary-hover)}.comment-submit-btn:disabled{opacity:.5;cursor:not-allowed}.comments-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.no-comments{text-align:center;color:var(--color-text-muted);padding:var(--spacing-xl)}.comment-item{display:flex;gap:var(--spacing-md)}.comment-body{flex:1}.comment-meta{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-xs)}.comment-author{font-weight:600;color:var(--color-text)}.comment-time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.comment-delete{margin-left:auto;padding:4px;font-size:var(--font-size-sm);color:var(--color-text-muted);background:transparent;border:none;cursor:pointer;opacity:0;transition:opacity var(--transition-fast)}.comment-item:hover .comment-delete{opacity:1}.comment-delete:hover{color:var(--color-danger)}.comment-text{font-size:var(--font-size-sm);color:var(--color-text);line-height:1.6;margin:0;white-space:pre-wrap}.bookmark-btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-family);color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.bookmark-btn:hover{border-color:var(--color-warning);color:var(--color-warning)}.bookmark-btn.bookmarked{background:#fef3c7;border-color:var(--color-warning);color:var(--color-warning)}.bookmarks-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.bookmark-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast)}.bookmark-item:hover{background:var(--color-bg-alt)}.bookmark-cover{width:40px;height:30px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.bookmark-title{font-size:var(--font-size-sm);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-size-control{display:flex;align-items:center;gap:2px;background:var(--color-bg);border-radius:var(--radius-md);padding:2px}.font-size-control button{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;font-family:var(--font-family);color:var(--color-text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.font-size-control button:hover{color:var(--color-primary);background:var(--color-white)}.font-size-value{min-width:24px;text-align:center;font-size:var(--font-size-xs);color:var(--color-text-muted)}.category-chart{display:flex;flex-direction:column;gap:var(--spacing-md)}.chart-bar-item{display:grid;grid-template-columns:80px 1fr 40px;align-items:center;gap:var(--spacing-md)}.chart-label{font-size:var(--font-size-sm);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-bar-wrapper{height:24px;background:var(--color-bg);border-radius:var(--radius-md);overflow:hidden}.chart-bar{height:100%;border-radius:var(--radius-md);transition:width var(--transition-slow)}.chart-value{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);text-align:right}.focus-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:16px;color:var(--color-text-muted);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.focus-btn:hover{color:var(--color-primary);border-color:var(--color-primary)}.focus-btn.active{color:var(--color-white);background:var(--color-primary);border-color:var(--color-primary)}.article-layout.focus-mode{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:var(--color-bg);overflow-y:auto;padding:var(--spacing-xl)}.article-layout.focus-mode .article-page{max-width:720px;margin:0 auto;padding:var(--spacing-xl)}.article-layout.focus-mode .article-nav{position:sticky;top:0;background:var(--color-bg);padding:var(--spacing-md) 0;margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border);z-index:10}.article-layout.focus-mode .article-toc,.article-layout.focus-mode .related-articles,.article-layout.focus-mode .comments-section,.article-layout.focus-mode .shortcuts-help-btn{display:none}.article-layout.focus-mode .article-body{font-size:18px;line-height:2}.article-layout.focus-mode .markdown-body{max-width:100%}.reply-indicator{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-light);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-primary)}.cancel-reply{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-sm)}.cancel-reply:hover{color:var(--color-error)}.comment-reply-to{color:var(--color-primary);font-size:var(--font-size-xs);margin-left:var(--spacing-sm)}.comment-reply-btn{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xs);padding:0 var(--spacing-sm)}.comment-reply-btn:hover{color:var(--color-primary)}@media (max-width: 480px){:root{--spacing-xs: 4px;--spacing-sm: 6px;--spacing-md: 10px;--spacing-lg: 16px;--spacing-xl: 20px}.home-container{flex-direction:column;gap:var(--spacing-md)}.main-content{width:100%}.sidebar{width:100%;position:static}.articles-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.article-card{border-radius:var(--radius-md)}.article-cover{height:140px}.article-content{padding:var(--spacing-md)}.article-title{font-size:var(--font-size-base);-webkit-line-clamp:2}.article-excerpt{font-size:var(--font-size-sm);-webkit-line-clamp:2}.article-meta{flex-wrap:wrap;gap:var(--spacing-xs)}.meta-item{font-size:11px}.filter-bar{flex-direction:column;gap:var(--spacing-sm)}.search-box{width:100%}.sort-buttons{width:100%;justify-content:center}.page-header{flex-direction:column;gap:var(--spacing-sm);text-align:center}.page-title{font-size:var(--font-size-lg)}.sidebar-section{padding:var(--spacing-md)}.sidebar-title{font-size:var(--font-size-base)}.tag-cloud{gap:var(--spacing-xs)}.tag-item{font-size:11px;padding:4px 8px}.article-page{padding:var(--spacing-md)}.article-nav{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm) 0}.article-nav-right{width:100%;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-xs)}.back-btn{width:100%;justify-content:center}.font-size-control{order:1}.focus-btn,.print-btn,.toc-toggle,.edit-btn{flex:1;min-width:40px;font-size:var(--font-size-sm)}.toc-toggle span:last-child{display:none}.article-hero-image{border-radius:var(--radius-md);margin:0 calc(-1 * var(--spacing-md));width:calc(100% + var(--spacing-md) * 2)}.article-page-title{font-size:var(--font-size-xl);line-height:1.3}.article-page-meta{flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center}.article-page-meta .meta-item{font-size:11px}.article-tags{justify-content:center}.article-body{font-size:15px!important}.markdown-body h1{font-size:var(--font-size-xl)}.markdown-body h2{font-size:var(--font-size-lg)}.markdown-body h3{font-size:var(--font-size-base)}.markdown-body pre{margin-left:calc(-1 * var(--spacing-md));margin-right:calc(-1 * var(--spacing-md));border-radius:0;font-size:12px}.markdown-body table{display:block;overflow-x:auto;font-size:var(--font-size-sm)}.share-section{flex-direction:column;gap:var(--spacing-sm)}.like-btn,.bookmark-btn,.share-btn{width:100%;justify-content:center}.share-menu{left:0;right:0;width:100%}.comments-section{padding:var(--spacing-md)}.comment-form-row{flex-direction:column;gap:var(--spacing-sm)}.comment-avatar{display:none}.comment-author-input{width:100%}.comment-content-input{font-size:16px}.comment-item{padding:var(--spacing-sm)}.comment-meta{flex-wrap:wrap;gap:var(--spacing-xs)}.comment-author{font-size:var(--font-size-sm)}.comment-time{font-size:10px}.article-toc{position:fixed;bottom:0;left:0;right:0;top:auto;max-height:50vh;border-radius:var(--radius-lg) var(--radius-lg) 0 0;transform:translateY(100%)}.article-toc.show{transform:translateY(0)}.toc-nav{max-height:40vh;overflow-y:auto}.related-grid{grid-template-columns:1fr;gap:var(--spacing-sm)}.related-card{flex-direction:row;gap:var(--spacing-sm)}.related-cover{width:80px;height:60px;flex-shrink:0}.shortcuts-help-btn{display:none}.back-to-top{width:44px;height:44px;bottom:var(--spacing-md);right:var(--spacing-md)}.article-layout.focus-mode{padding:var(--spacing-md)}.article-layout.focus-mode .article-page{padding:var(--spacing-sm)}.article-layout.focus-mode .article-body{font-size:16px;line-height:1.8}.admin-layout{flex-direction:column}.admin-main{padding:var(--spacing-md)}.admin-page-header{flex-direction:column;gap:var(--spacing-sm);text-align:center}.admin-page-title{font-size:var(--font-size-lg)}.header-actions{width:100%;justify-content:center;flex-wrap:wrap}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.stat-card{padding:var(--spacing-sm);flex-direction:column;text-align:center}.stat-icon{width:36px;height:36px;font-size:var(--font-size-base)}.stat-value{font-size:var(--font-size-lg)}.stat-label{font-size:11px}.top-article-item{flex-wrap:wrap;gap:var(--spacing-xs)}.top-article-item .title{width:100%;order:2}.editor-layout{flex-direction:column}.editor-main,.editor-sidebar{width:100%}.editor-toolbar{flex-wrap:wrap;gap:var(--spacing-xs)}.toolbar-btn{padding:var(--spacing-xs);min-width:32px}.editor-textarea{min-height:200px;font-size:14px}.editor-settings-row{grid-template-columns:1fr}.quick-actions-fab{bottom:var(--spacing-md);right:var(--spacing-md)}.fab-main{width:48px;height:48px}.pagination-wrapper{overflow-x:auto;padding:var(--spacing-sm) 0}.pagination-wrapper .ant-pagination{flex-wrap:nowrap}.pagination-wrapper .ant-pagination-item{min-width:28px;height:28px;line-height:26px}}@media (min-width: 481px) and (max-width: 768px){.home-container{flex-direction:column}.sidebar{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.sidebar-section{margin-bottom:0}.articles-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(3,1fr)}.article-nav{flex-wrap:wrap}.article-nav-right{flex-wrap:wrap;gap:var(--spacing-sm)}}@media (hover: none) and (pointer: coarse){.nav-item,.tag-item,.category-item,.btn-primary,.btn-secondary{min-height:44px;min-width:44px}.article-card:hover{transform:none}.article-card:active{transform:scale(.98);transition:transform .1s}.like-btn:active,.bookmark-btn:active,.share-btn:active{transform:scale(.95)}.toc-nav,.comments-list,.articles-grid{-webkit-overflow-scrolling:touch}}@media (max-height: 500px) and (orientation: landscape){.article-toc{max-height:80vh}.article-layout.focus-mode{padding:var(--spacing-sm) var(--spacing-xl)}.shortcuts-modal .shortcuts-content{max-height:90vh;overflow-y:auto}}@supports (padding-bottom: env(safe-area-inset-bottom)){.back-to-top,.quick-actions-fab,.article-toc.show{padding-bottom:env(safe-area-inset-bottom)}.public-footer{padding-bottom:calc(var(--spacing-xl) + env(safe-area-inset-bottom))}}@media (max-width: 768px){[data-theme=dark] .article-card,[data-theme=dark] .sidebar-section,[data-theme=dark] .comment-form,[data-theme=dark] .comment-item{background:var(--color-bg-alt)}}@media (max-width: 768px){.public-header{position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--color-bg-transparent)}.public-header .header-nav{gap:var(--spacing-sm)}.public-header .nav-item{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.public-header .site-title{font-size:var(--font-size-base)}}@media (max-width: 480px){.article-footer .share-section{position:fixed;bottom:0;left:0;right:0;background:var(--color-white);padding:var(--spacing-sm) var(--spacing-md);padding-bottom:calc(var(--spacing-sm) + env(safe-area-inset-bottom,0px));box-shadow:0 -2px 10px #0000001a;z-index:50;flex-direction:row;justify-content:space-around;margin:0;border-top:1px solid var(--color-border)}.article-footer .share-section .like-btn,.article-footer .share-section .bookmark-btn,.article-footer .share-section .share-wrapper{width:auto;flex:1}.article-footer .share-section .share-btn{width:100%}.article-page{padding-bottom:80px}[data-theme=dark] .article-footer .share-section{background:var(--color-bg-alt)}}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;color:var(--color-text);font-size:var(--font-size-lg);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:var(--color-bg-alt)}.mobile-menu-overlay,.nav-item .nav-text{display:none}@media (max-width: 768px){.mobile-menu-toggle{display:flex;z-index:1001}.nav-menu{position:fixed;top:0;right:-280px;width:280px;height:100vh;background:var(--color-white);flex-direction:column;padding:80px var(--spacing-lg) var(--spacing-lg);gap:var(--spacing-sm);transition:right .3s ease;z-index:1000;box-shadow:-4px 0 20px #0000001a}.nav-menu.mobile-open{right:0}.nav-menu .nav-item{width:100%;justify-content:flex-start;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-base)}.nav-menu .nav-item span{display:inline}.nav-item .nav-text{display:inline;margin-left:var(--spacing-sm)}.nav-menu .theme-toggle{order:10;margin-top:auto;border-top:1px solid var(--color-border);padding-top:var(--spacing-lg);border-radius:0}.mobile-menu-overlay{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}[data-theme=dark] .nav-menu{background:var(--color-bg)}[data-theme=dark] .mobile-menu-overlay{background:#000000b3}}@media (max-width: 480px){.nav-menu{width:100%;right:-100%}.header-content{padding:0 var(--spacing-sm)}.site-logo{font-size:var(--font-size-base)}}.admin-mobile-header,.mobile-close-btn{display:none}.sidebar-item .sidebar-item-label{display:inline}.admin-sidebar.collapsed .sidebar-item-label,.sidebar-item.logout{display:none}@media (max-width: 768px){.admin-layout{flex-direction:column}.admin-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-white);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.mobile-menu-btn,.mobile-logout-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;color:var(--color-text);font-size:var(--font-size-lg);cursor:pointer;border-radius:var(--radius-md)}.mobile-menu-btn:hover,.mobile-logout-btn:hover{background:var(--color-bg-alt)}.mobile-page-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-text)}.admin-sidebar{position:fixed;top:0;left:-280px;width:280px;height:100vh;z-index:1000;transition:left .3s ease;box-shadow:4px 0 20px #0000001a}.admin-sidebar.mobile-open{left:0}.admin-sidebar.collapsed{width:280px;left:-280px}.admin-sidebar.collapsed.mobile-open{left:0}.admin-sidebar.collapsed .sidebar-item-label{display:inline}.mobile-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-base);cursor:pointer;border-radius:var(--radius-md)}.mobile-close-btn:hover{background:var(--color-bg-alt);color:var(--color-text)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding-right:var(--spacing-md)}.sidebar-item.logout{display:flex;color:var(--color-error);border-top:1px solid var(--color-border);margin-top:var(--spacing-sm);padding-top:var(--spacing-md)}.sidebar-item.logout:hover{background:#fee2e2}.admin-sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;animation:fadeIn .2s ease}.admin-main{width:100%;margin-left:0}.admin-header{display:none}.admin-content{padding:var(--spacing-md)}.admin-page-header{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md)}.admin-page-title{font-size:var(--font-size-lg);text-align:center}.header-actions{width:100%;display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.header-actions .btn-primary,.header-actions .btn-secondary{flex:1;min-width:120px;justify-content:center}.dashboard-page{padding:var(--spacing-sm)}.dashboard-page .admin-page-header{margin-bottom:var(--spacing-md)}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.stat-card{padding:var(--spacing-sm);flex-direction:column;text-align:center;gap:var(--spacing-xs)}.stat-icon{width:32px;height:32px;font-size:var(--font-size-base)}.stat-value{font-size:var(--font-size-lg)}.stat-label{font-size:11px}.dashboard-section{padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.section-title{font-size:var(--font-size-base)}.top-article-item{flex-wrap:wrap;padding:var(--spacing-sm);gap:var(--spacing-xs)}.top-article-item .rank{font-size:var(--font-size-sm)}.top-article-item .title{width:100%;order:2;font-size:var(--font-size-sm)}.top-article-item .views,.top-article-item .likes{font-size:11px}.articles-table{display:block;overflow-x:auto}.article-list-item{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md)}.article-list-item .article-info{width:100%}.article-list-item .article-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}.category-list,.tag-list{gap:var(--spacing-sm)}.category-item,.tag-item-admin{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md)}.category-item .item-actions,.tag-item-admin .item-actions{width:100%;justify-content:flex-end}.quick-actions-fab{bottom:var(--spacing-md);right:var(--spacing-md)}.fab-main{width:48px;height:48px}.fab-menu{bottom:56px}.fab-menu button{width:40px;height:40px}[data-theme=dark] .admin-mobile-header,[data-theme=dark] .admin-sidebar{background:var(--color-bg)}}@media (max-width: 768px){.editor-page{padding:var(--spacing-sm)}.editor-header{flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm)}.editor-header .editor-title-input{font-size:var(--font-size-lg)}.editor-header-actions{width:100%;display:flex;gap:var(--spacing-sm)}.editor-header-actions button{flex:1}.editor-layout{flex-direction:column;gap:var(--spacing-md)}.editor-main{width:100%;order:1}.editor-sidebar{width:100%;order:2}.editor-toolbar{flex-wrap:wrap;gap:4px;padding:var(--spacing-sm)}.toolbar-btn{padding:var(--spacing-xs);min-width:36px;height:36px}.toolbar-divider{display:none}.editor-textarea{min-height:250px;font-size:14px;padding:var(--spacing-md)}.editor-preview{min-height:200px;padding:var(--spacing-md)}.editor-settings-section{padding:var(--spacing-md)}.editor-settings-row{grid-template-columns:1fr;gap:var(--spacing-md)}.settings-group label{font-size:var(--font-size-sm)}.settings-group input,.settings-group select,.settings-group textarea{font-size:16px}.tags-selector{gap:var(--spacing-xs)}.tag-toggle{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.version-history-panel{width:100%;max-width:none}.fullscreen-preview{padding:var(--spacing-md)}.fullscreen-preview-header{padding:var(--spacing-sm) var(--spacing-md)}.fullscreen-preview-content{padding:var(--spacing-md)}}@media (max-width: 480px){.admin-mobile-header{padding:var(--spacing-xs) var(--spacing-sm)}.mobile-page-title{font-size:var(--font-size-sm)}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:var(--spacing-xs)}.stat-value{font-size:var(--font-size-base)}.editor-toolbar{justify-content:center}.toolbar-btn{min-width:32px;height:32px;font-size:var(--font-size-sm)}.editor-textarea{min-height:200px}.form-input,.form-select,.form-textarea{padding:var(--spacing-sm);font-size:16px}.btn-primary,.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}}@media (max-width: 768px){.admin-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table table{min-width:600px}.admin-table th,.admin-table td{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.mobile-card-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.mobile-card-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md)}.mobile-card-item .item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.mobile-card-item .item-title{font-weight:600;color:var(--color-text);font-size:var(--font-size-base)}.mobile-card-item .item-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-muted)}.mobile-card-item .item-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}[data-theme=dark] .mobile-card-item{background:var(--color-bg-alt)}}.desktop-only{display:block}.mobile-only{display:none}@media (max-width: 768px){.desktop-only{display:none!important}.mobile-only{display:block!important}}.mobile-card-list{display:none;flex-direction:column;gap:var(--spacing-sm)}@media (max-width: 768px){.mobile-card-list{display:flex}}.mobile-card-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all var(--transition-fast)}.mobile-card-item:active{transform:scale(.99)}.mobile-card-item .item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.mobile-card-item .item-title-row{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;min-width:0}.mobile-card-item .item-title{font-weight:600;color:var(--color-text);font-size:var(--font-size-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-card-item .item-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.mobile-card-item .item-meta span{display:flex;align-items:center;gap:4px}.mobile-card-item .item-actions{display:flex;gap:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);flex-wrap:wrap}.mobile-card-item .item-actions .action-btn{flex:1;min-width:80px;display:flex;align-items:center;justify-content:center;gap:4px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast)}.mobile-card-item .item-actions .action-btn:hover{background:var(--color-bg-alt)}.mobile-card-item .item-actions .action-btn.edit{color:var(--color-primary);border-color:var(--color-primary)}.mobile-card-item .item-actions .action-btn.delete{color:var(--color-error);border-color:var(--color-error)}.mobile-card-item .item-actions .action-btn.pin.active{color:var(--color-warning);border-color:var(--color-warning);background:#fef3c7}[data-theme=dark] .mobile-card-item{background:var(--color-bg-alt)}[data-theme=dark] .mobile-card-item .item-actions .action-btn{background:var(--color-bg)}@media (max-width: 768px){.admin-search-box{width:100%;order:10}.admin-search-input{width:100%}.status-filter{width:100%;justify-content:center}.filter-btn{flex:1;justify-content:center}.admin-pagination{flex-direction:column;gap:var(--spacing-sm);text-align:center}.pagination-info{font-size:var(--font-size-sm)}.pagination-buttons{width:100%;display:flex;gap:var(--spacing-sm)}.pagination-btn{flex:1}}@media (max-width: 768px){.admin-mobile-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);padding:var(--spacing-md) var(--spacing-lg);box-shadow:0 4px 20px #0891b24d}.mobile-menu-btn,.mobile-logout-btn{color:#fff;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.mobile-menu-btn:hover,.mobile-logout-btn:hover{background:#ffffff40}.mobile-page-title{color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.1)}.admin-sidebar{background:linear-gradient(180deg,#0f172a,#1e293b);border-right:none}.admin-sidebar .sidebar-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);padding:var(--spacing-lg);margin:0}.admin-sidebar .sidebar-logo{color:#fff;font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.5px}.admin-sidebar .mobile-close-btn{color:#fff;background:#ffffff26}.admin-sidebar .sidebar-nav{padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-sidebar .sidebar-item{display:flex;align-items:center;gap:var(--spacing-md);color:#94a3b8;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);transition:all .2s ease;border:1px solid transparent;background:transparent;width:100%;text-align:left;cursor:pointer;font-size:var(--font-size-base)}.admin-sidebar .sidebar-item:hover{color:#fff;background:#ffffff14}.admin-sidebar .sidebar-item.active{color:#fff;background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);box-shadow:0 4px 15px #0891b266;border-color:#ffffff1a}.admin-sidebar .sidebar-item .anticon,.admin-sidebar .sidebar-item>span:first-child{font-size:var(--font-size-lg);flex-shrink:0}.admin-sidebar .sidebar-footer{padding:var(--spacing-md);border-top:1px solid rgba(255,255,255,.1);margin-top:auto;display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-sidebar .sidebar-item.logout{display:flex;color:#f87171;border-color:#f871714d;background:#f871711a}.admin-sidebar .sidebar-item.logout:hover{background:#f8717133}.dashboard-page{background:linear-gradient(180deg,#f8fafc,#f1f5f9);min-height:100vh;padding:var(--spacing-md)}.dashboard-page .admin-page-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff;border-radius:var(--radius-xl);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:0 8px 30px #0891b24d}.dashboard-page .admin-page-title{color:#fff;font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm)}.dashboard-page .header-actions .btn-primary{background:#fff;color:var(--color-primary);border:none;font-weight:600;box-shadow:0 4px 15px #0000001a}.dashboard-page .header-actions .btn-primary:hover{background:#f0f9ff;transform:translateY(-2px)}.stats-grid{gap:var(--spacing-md)}.stat-card{background:#fff;border:none;border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:0 4px 20px #0000000d;position:relative;overflow:hidden;transition:all .3s ease}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),#22C55E);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.stat-card:active{transform:scale(.98)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);font-size:var(--font-size-xl)}.stat-value{font-size:var(--font-size-2xl);font-weight:700;background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{color:#64748b;font-weight:500}.dashboard-section{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:0 4px 20px #0000000d;border:1px solid rgba(0,0,0,.03)}.section-title{font-size:var(--font-size-lg);font-weight:700;color:#0f172a;display:flex;align-items:center;gap:var(--spacing-sm)}.section-title:before{content:"";width:4px;height:20px;background:linear-gradient(180deg,var(--color-primary),#22C55E);border-radius:2px}.top-article-item{background:#f8fafc;border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);border:1px solid #E2E8F0;transition:all .2s ease}.top-article-item:active{background:#f1f5f9;transform:scale(.99)}.top-article-item .rank{background:linear-gradient(135deg,var(--color-primary),#0E7490);color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.top-article-item .title{font-weight:600;color:#0f172a}.top-article-item .views,.top-article-item .likes{background:#f1f5f9;padding:4px 8px;border-radius:var(--radius-md);font-size:11px;color:#64748b}.chart-bar-item{margin-bottom:var(--spacing-md)}.chart-bar-wrapper{background:#f1f5f9;border-radius:var(--radius-full);height:8px;overflow:hidden}.chart-bar{height:100%;border-radius:var(--radius-full);transition:width .5s ease}.activity-item{background:#f8fafc;border-radius:var(--radius-lg);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);border-left:3px solid var(--color-primary);transition:all .2s ease}.activity-item:active{background:#f1f5f9}.activity-icon{background:linear-gradient(135deg,var(--color-primary),#0E7490);color:#fff;width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.admin-page{background:linear-gradient(180deg,#f8fafc,#f1f5f9);min-height:100vh;padding:var(--spacing-md)}.admin-page-header{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:0 4px 20px #0000000d}.admin-page-title{font-size:var(--font-size-xl);font-weight:700;color:#0f172a}.admin-search-box{background:#f1f5f9;border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-lg);border:2px solid transparent;transition:all .2s ease}.admin-search-box:focus-within{background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 4px #0891b21a}.admin-search-input{background:transparent;border:none;font-size:var(--font-size-base)}.status-filter{background:#f1f5f9;border-radius:var(--radius-full);padding:4px;gap:4px}.filter-btn{border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-md);font-weight:500;transition:all .2s ease;border:none;background:transparent;color:#64748b}.filter-btn.active{background:#fff;color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.mobile-card-item{background:#fff;border:none;border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:0 4px 20px #0000000d;margin-bottom:var(--spacing-md);transition:all .2s ease}.mobile-card-item:active{transform:scale(.99);box-shadow:0 2px 10px #00000014}.mobile-card-item .item-title{font-size:var(--font-size-base);font-weight:600;color:#0f172a}.mobile-card-item .status-badge{padding:4px 12px;border-radius:var(--radius-full);font-size:11px;font-weight:600}.mobile-card-item .status-badge.published{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.mobile-card-item .status-badge.draft{background:#fef3c7;color:#d97706}.mobile-card-item .item-meta{background:#f8fafc;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);margin:var(--spacing-sm) 0}.mobile-card-item .item-actions{border-top:none;padding-top:var(--spacing-md);gap:var(--spacing-sm)}.mobile-card-item .item-actions .action-btn{border-radius:var(--radius-lg);font-weight:500;padding:var(--spacing-sm) var(--spacing-md);border:none}.mobile-card-item .item-actions .action-btn.edit{background:linear-gradient(135deg,var(--color-primary),#0E7490);color:#fff}.mobile-card-item .item-actions .action-btn.delete{background:#fee2e2;color:#dc2626}.mobile-card-item .item-actions .action-btn.pin{background:#f1f5f9;color:#64748b}.mobile-card-item .item-actions .action-btn.pin.active{background:#fef3c7;color:#d97706}.editor-page{background:linear-gradient(180deg,#f8fafc,#f1f5f9);min-height:100vh}.editor-header{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:0 4px 20px #0000000d}.editor-title-input{font-size:var(--font-size-xl);font-weight:700;border:none;background:transparent;color:#0f172a}.editor-title-input::placeholder{color:#94a3b8}.editor-header-actions button{border-radius:var(--radius-lg);font-weight:600;padding:var(--spacing-sm) var(--spacing-lg)}.editor-header-actions .btn-primary{background:linear-gradient(135deg,var(--color-primary),#0E7490);border:none;box-shadow:0 4px 15px #0891b24d}.editor-main{background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 4px 20px #0000000d;margin-bottom:var(--spacing-md)}.editor-toolbar{background:#f8fafc;padding:var(--spacing-md);border-bottom:1px solid #E2E8F0}.toolbar-btn{background:#fff;border:1px solid #E2E8F0;border-radius:var(--radius-md);color:#64748b;transition:all .2s ease}.toolbar-btn:hover,.toolbar-btn:active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.editor-textarea{border:none;background:#fff;font-family:SF Mono,Consolas,monospace;line-height:1.8}.editor-sidebar{background:#fff;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 4px 20px #0000000d}.editor-settings-section{padding:var(--spacing-lg)}.settings-group label{font-weight:600;color:#0f172a;margin-bottom:var(--spacing-sm)}.settings-group input,.settings-group select,.settings-group textarea{background:#f8fafc;border:2px solid #E2E8F0;border-radius:var(--radius-lg);padding:var(--spacing-md);transition:all .2s ease}.settings-group input:focus,.settings-group select:focus,.settings-group textarea:focus{background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 4px #0891b21a}.tag-toggle{background:#f1f5f9;border:none;border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-md);font-weight:500;color:#64748b;transition:all .2s ease}.tag-toggle.selected{background:linear-gradient(135deg,var(--color-primary),#0E7490);color:#fff}.quick-actions-fab{bottom:calc(var(--spacing-lg) + env(safe-area-inset-bottom,0px))}.fab-main{background:linear-gradient(135deg,var(--color-primary),#0E7490);border:none;box-shadow:0 8px 30px #0891b266;width:56px;height:56px;font-size:var(--font-size-xl)}.fab-main:active{transform:scale(.95)}.fab-menu button{background:#fff;border:none;box-shadow:0 4px 15px #0000001a;width:44px;height:44px;color:var(--color-primary)}.fab-menu button:active{background:#f0f9ff}[data-theme=dark] .admin-mobile-header{background:linear-gradient(135deg,#0e7490,#0891b2)}[data-theme=dark] .dashboard-page,[data-theme=dark] .admin-page{background:linear-gradient(180deg,#0f172a,#1e293b)}[data-theme=dark] .stat-card,[data-theme=dark] .dashboard-section,[data-theme=dark] .admin-page-header,[data-theme=dark] .mobile-card-item,[data-theme=dark] .editor-main,[data-theme=dark] .editor-sidebar{background:#1e293b;border-color:#334155}[data-theme=dark] .stat-value{background:linear-gradient(135deg,#f8fafc,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .admin-page-title,[data-theme=dark] .section-title,[data-theme=dark] .mobile-card-item .item-title{color:#f8fafc}[data-theme=dark] .top-article-item,[data-theme=dark] .activity-item,[data-theme=dark] .mobile-card-item .item-meta{background:#334155;border-color:#475569}[data-theme=dark] .admin-search-box,[data-theme=dark] .status-filter{background:#334155}[data-theme=dark] .filter-btn.active{background:#475569}[data-theme=dark] .settings-group input,[data-theme=dark] .settings-group select,[data-theme=dark] .settings-group textarea{background:#334155;border-color:#475569;color:#f8fafc}[data-theme=dark] .editor-toolbar{background:#334155;border-color:#475569}[data-theme=dark] .toolbar-btn{background:#475569;border-color:#64748b;color:#cbd5e1}}@media (max-width: 768px){@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.mobile-card-item{animation:fadeInUp .3s ease forwards}.mobile-card-item:nth-child(1){animation-delay:.05s}.mobile-card-item:nth-child(2){animation-delay:.1s}.mobile-card-item:nth-child(3){animation-delay:.15s}.mobile-card-item:nth-child(4){animation-delay:.2s}.mobile-card-item:nth-child(5){animation-delay:.25s}.stat-card{animation:fadeInUp .4s ease forwards}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.15s}.stat-card:nth-child(3){animation-delay:.2s}.stat-card:nth-child(4){animation-delay:.25s}.stat-card:nth-child(5){animation-delay:.3s}.stat-card:nth-child(6){animation-delay:.35s}.stat-card:nth-child(7){animation-delay:.4s}}@media (min-width: 769px){.admin-layout{background:linear-gradient(135deg,#f8fafc,#e2e8f0);min-height:100vh}.admin-sidebar{background:linear-gradient(180deg,#0f172a,#1e293b);border-right:none;box-shadow:4px 0 30px #00000026;transition:all .3s cubic-bezier(.4,0,.2,1)}.admin-sidebar .sidebar-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);padding:var(--spacing-xl);margin:0;position:relative;overflow:hidden}.admin-sidebar .sidebar-header:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:shimmer 3s infinite}@keyframes shimmer{0%,to{transform:rotate(0)}50%{transform:rotate(180deg)}}.admin-sidebar .sidebar-logo{color:#fff;font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.5px;position:relative;z-index:1}.admin-sidebar .sidebar-nav{padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-xs)}.admin-sidebar .sidebar-item{display:flex;align-items:center;gap:var(--spacing-md);color:#94a3b8;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);transition:all .2s ease;border:1px solid transparent;background:transparent;cursor:pointer;position:relative;overflow:hidden}.admin-sidebar .sidebar-item:before{content:"";position:absolute;left:0;top:0;height:100%;width:0;background:linear-gradient(90deg,rgba(8,145,178,.3),transparent);transition:width .3s ease}.admin-sidebar .sidebar-item:hover{color:#fff;background:#ffffff14}.admin-sidebar .sidebar-item:hover:before{width:100%}.admin-sidebar .sidebar-item.active{color:#fff;background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);box-shadow:0 4px 20px #0891b266;border-color:#ffffff1a}.admin-sidebar .sidebar-item .anticon,.admin-sidebar .sidebar-item>span:first-child{font-size:var(--font-size-lg);flex-shrink:0;transition:transform .2s ease}.admin-sidebar .sidebar-item:hover .anticon{transform:scale(1.15)}.admin-sidebar .sidebar-footer{padding:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1);margin-top:auto}.admin-header{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 4px 30px #0000000d;height:80px;padding:0 var(--spacing-2xl)}.toggle-btn{width:48px;height:48px;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:none;border-radius:var(--radius-lg);color:#64748b;font-size:var(--font-size-lg);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000000d}.toggle-btn:hover{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff;transform:scale(1.05);box-shadow:0 4px 15px #0891b24d}.logout-btn{background:linear-gradient(135deg,#fee2e2,#fecaca);border:none;color:#dc2626;padding:var(--spacing-sm) var(--spacing-xl);border-radius:var(--radius-lg);font-weight:500;transition:all .2s ease;box-shadow:0 2px 8px #dc26261a}.logout-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;transform:translateY(-2px);box-shadow:0 4px 15px #dc26264d}.admin-content{padding:var(--spacing-xl);background:transparent}.dashboard-page{background:transparent;padding:0}.dashboard-page .admin-page-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff;border-radius:var(--radius-xl);padding:var(--spacing-xl) var(--spacing-2xl);margin-bottom:var(--spacing-xl);box-shadow:0 10px 40px #0891b24d;position:relative;overflow:hidden}.dashboard-page .admin-page-header:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 60%)}.dashboard-page .admin-page-title{color:#fff;font-size:var(--font-size-2xl);font-weight:700;position:relative;z-index:1}.dashboard-page .header-actions .btn-primary{background:#fff;color:var(--color-primary);border:none;font-weight:600;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:0 4px 15px #0000001a;transition:all .2s ease;position:relative;z-index:1}.dashboard-page .header-actions .btn-primary:hover{background:#f0f9ff;transform:translateY(-3px);box-shadow:0 8px 25px #00000026}.stats-grid{gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stat-card{background:#fff;border:none;border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:0 4px 25px #0000000f;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);border-top:none}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),#22C55E)}.stat-card:after{content:"";position:absolute;top:0;right:0;width:100px;height:100px;background:radial-gradient(circle,rgba(8,145,178,.05) 0%,transparent 70%);transform:translate(30%,-30%)}.stat-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000001a}.stat-icon{width:56px;height:56px;border-radius:var(--radius-xl);font-size:var(--font-size-xl);display:flex;align-items:center;justify-content:center;transition:transform .3s ease}.stat-card:hover .stat-icon{transform:scale(1.1) rotate(5deg)}.stat-value{font-size:var(--font-size-3xl);font-weight:800;background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.stat-label{color:#64748b;font-weight:500;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px}.dashboard-section{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:0 4px 25px #0000000f;border:1px solid rgba(0,0,0,.03);transition:all .3s ease}.dashboard-section:hover{box-shadow:0 8px 35px #00000014}.section-title{font-size:var(--font-size-lg);font-weight:700;color:#0f172a;display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:none}.section-title:before{content:"";width:4px;height:24px;background:linear-gradient(180deg,var(--color-primary),#22C55E);border-radius:2px}.top-article-item{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-sm);border:1px solid #E2E8F0;transition:all .2s ease;cursor:pointer}.top-article-item:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);transform:translate(8px);border-color:var(--color-primary);box-shadow:0 4px 15px #0891b21a}.top-article-item .rank{background:linear-gradient(135deg,var(--color-primary),#0E7490);color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:700;box-shadow:0 2px 8px #0891b24d}.top-article-item .title{font-weight:600;color:#0f172a}.top-article-item .views,.top-article-item .likes{background:#fff;padding:6px 12px;border-radius:var(--radius-md);font-size:var(--font-size-xs);color:#64748b;box-shadow:0 1px 3px #0000000d}.admin-page{background:transparent;border-radius:var(--radius-xl);padding:0}.admin-page-header{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-xl) var(--spacing-2xl);margin-bottom:var(--spacing-lg);box-shadow:0 4px 25px #0000000f;border-bottom:none;display:flex;align-items:center;justify-content:space-between}.admin-page-title{font-size:var(--font-size-2xl);font-weight:700;color:#0f172a;position:relative}.admin-page-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:4px;background:linear-gradient(90deg,var(--color-primary),#22C55E);border-radius:2px}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);border:none;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-lg);font-weight:600;box-shadow:0 4px 15px #0891b24d;transition:all .2s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0891b266}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 15px #ef44444d}.btn-danger:hover{box-shadow:0 8px 25px #ef444466}.admin-search-box{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-lg);border:2px solid transparent;transition:all .3s ease;width:280px}.admin-search-box:focus-within{background:#fff;border-color:var(--color-primary);box-shadow:0 0 0 4px #0891b21a}.admin-search-input{background:transparent;border:none;font-size:var(--font-size-sm);color:#0f172a}.admin-search-input::placeholder{color:#94a3b8}.status-filter{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:var(--radius-full);padding:4px;gap:4px}.filter-btn{border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-lg);font-weight:500;transition:all .2s ease;border:none;background:transparent;color:#64748b}.filter-btn:hover{color:var(--color-primary)}.filter-btn.active{background:#fff;color:var(--color-primary);box-shadow:0 2px 10px #00000014}.admin-table-wrapper{background:#fff;border-radius:var(--radius-xl);box-shadow:0 4px 25px #0000000f;overflow:hidden}.admin-table{border-collapse:separate;border-spacing:0}.admin-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:var(--font-size-xs);padding:var(--spacing-lg) var(--spacing-md);border-bottom:2px solid #E2E8F0}.admin-table td{padding:var(--spacing-md);border-bottom:1px solid #F1F5F9;transition:background .2s ease}.admin-table tbody tr{transition:all .2s ease}.admin-table tbody tr:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.admin-table tbody tr:hover td{border-bottom-color:#e2e8f0}.article-title-cell{font-weight:600;color:#0f172a}.status-badge{padding:6px 14px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.3px}.status-badge.published{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;box-shadow:0 2px 8px #22c55e4d}.status-badge.draft{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.action-buttons{display:flex;gap:var(--spacing-xs)}.action-btn{width:36px;height:36px;border-radius:var(--radius-lg);border:none;background:linear-gradient(135deg,#f8fafc,#f1f5f9);transition:all .2s ease;cursor:pointer}.action-btn:hover{transform:scale(1.1)}.action-btn.view:hover{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0284c7}.action-btn.edit:hover{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff;box-shadow:0 4px 12px #0891b24d}.action-btn.delete:hover{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.action-btn.pin:hover{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.action-btn.pin.active{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px #f59e0b4d}.admin-pagination{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-lg) var(--spacing-xl);margin-top:var(--spacing-lg);box-shadow:0 4px 25px #0000000f;border-top:none}.pagination-btn{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:none;border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-lg);font-weight:500;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0891b24d}.tags-grid{gap:var(--spacing-lg)}.tag-card{background:#fff;border:none;border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:0 4px 25px #0000000f;transition:all .3s ease;position:relative;overflow:hidden}.tag-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--color-primary),#22C55E)}.tag-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000001a}.tag-icon{color:var(--color-primary);font-size:var(--font-size-lg)}.tag-name{font-weight:600;color:#0f172a}.editor-page{background:transparent;margin:0;height:auto;min-height:calc(100vh - 160px)}.editor-header{background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-lg) var(--spacing-xl);margin-bottom:var(--spacing-lg);box-shadow:0 4px 25px #0000000f;border-bottom:none}.editor-title{font-size:var(--font-size-xl);font-weight:700;color:#0f172a}.editor-btn{border-radius:var(--radius-lg);font-weight:500;transition:all .2s ease}.editor-btn:hover:not(:disabled){transform:translateY(-2px)}.editor-btn.primary{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);border:none;box-shadow:0 4px 15px #0891b24d}.editor-btn.primary:hover:not(:disabled){box-shadow:0 8px 25px #0891b266}.editor-body{background:#fff;border-radius:var(--radius-xl);box-shadow:0 4px 25px #0000000f;overflow:hidden}.editor-main{padding:var(--spacing-xl)}.title-input{font-size:var(--font-size-2xl);font-weight:700;border:none;border-bottom:3px solid #E2E8F0;padding:var(--spacing-md) 0;transition:border-color .2s ease}.title-input:focus{border-bottom-color:var(--color-primary)}.markdown-editor-wrapper{border:2px solid #E2E8F0;border-radius:var(--radius-xl);overflow:hidden;transition:border-color .2s ease}.markdown-editor-wrapper:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 4px #0891b21a}.markdown-toolbar{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:var(--spacing-md);border-bottom:1px solid #E2E8F0}.markdown-toolbar button{background:#fff;border:1px solid #E2E8F0;border-radius:var(--radius-md);transition:all .2s ease}.markdown-toolbar button:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:scale(1.05)}.editor-preview{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-left:2px solid #E2E8F0}.preview-header{background:#fff;border-bottom:1px solid #E2E8F0;font-weight:600;color:#64748b}.editor-settings-row{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:var(--spacing-xl);border-radius:var(--radius-xl);margin-top:var(--spacing-lg);border-top:none}.settings-title{font-weight:700;color:#0f172a;border-bottom:3px solid var(--color-primary);padding-bottom:var(--spacing-sm)}.native-select,.native-input{background:#fff;border:2px solid #E2E8F0;border-radius:var(--radius-lg);padding:var(--spacing-md);transition:all .2s ease}.native-select:focus,.native-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 4px #0891b21a}.tag-option{background:#fff;border:2px solid #E2E8F0;border-radius:var(--radius-full);padding:var(--spacing-sm) var(--spacing-lg);font-weight:500;transition:all .2s ease}.tag-option:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.tag-option.selected{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);border-color:transparent;color:#fff;box-shadow:0 4px 12px #0891b24d}.quick-actions-fab .fab-main{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);border:none;box-shadow:0 8px 30px #0891b266;transition:all .3s ease}.quick-actions-fab .fab-main:hover{transform:scale(1.1) rotate(90deg);box-shadow:0 12px 40px #0891b280}.quick-actions-fab.open .fab-main{transform:rotate(45deg)}.fab-menu button{background:#fff;border:none;box-shadow:0 4px 20px #0000001a;color:var(--color-primary);transition:all .2s ease}.fab-menu button:hover{background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff;transform:scale(1.15)}[data-theme=dark] .admin-layout{background:linear-gradient(135deg,#0f172a,#1e293b)}[data-theme=dark] .admin-header{background:#1e293be6;border-bottom-color:#ffffff0d}[data-theme=dark] .toggle-btn{background:linear-gradient(135deg,#334155,#475569);color:#cbd5e1}[data-theme=dark] .logout-btn{background:linear-gradient(135deg,#f8717133,#f871711a);color:#f87171}[data-theme=dark] .stat-card,[data-theme=dark] .dashboard-section,[data-theme=dark] .admin-page-header,[data-theme=dark] .admin-table-wrapper,[data-theme=dark] .admin-pagination,[data-theme=dark] .tag-card,[data-theme=dark] .editor-header,[data-theme=dark] .editor-body{background:#1e293b;border-color:#334155}[data-theme=dark] .stat-value{background:linear-gradient(135deg,#f8fafc,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .admin-page-title,[data-theme=dark] .section-title,[data-theme=dark] .article-title-cell,[data-theme=dark] .tag-name,[data-theme=dark] .editor-title,[data-theme=dark] .settings-title{color:#f8fafc}[data-theme=dark] .admin-table th{background:linear-gradient(135deg,#334155,#475569);color:#94a3b8}[data-theme=dark] .admin-table td{border-bottom-color:#334155}[data-theme=dark] .admin-table tbody tr:hover{background:linear-gradient(135deg,#334155,#3d4f66)}[data-theme=dark] .top-article-item,[data-theme=dark] .editor-settings-row{background:linear-gradient(135deg,#334155,#3d4f66);border-color:#475569}[data-theme=dark] .admin-search-box,[data-theme=dark] .status-filter{background:linear-gradient(135deg,#334155,#475569)}[data-theme=dark] .filter-btn.active{background:#475569}[data-theme=dark] .action-btn,[data-theme=dark] .pagination-btn{background:linear-gradient(135deg,#334155,#475569);color:#cbd5e1}[data-theme=dark] .native-select,[data-theme=dark] .native-input,[data-theme=dark] .tag-option{background:#334155;border-color:#475569;color:#f8fafc}[data-theme=dark] .markdown-toolbar{background:linear-gradient(135deg,#334155,#475569);border-color:#475569}[data-theme=dark] .markdown-toolbar button{background:#475569;border-color:#64748b;color:#cbd5e1}[data-theme=dark] .editor-preview{background:linear-gradient(135deg,#334155,#3d4f66);border-color:#475569}}.settings-page{max-width:900px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:var(--spacing-xl)}.settings-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:0 4px 25px #0000000f;overflow:hidden}.settings-card-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);background:linear-gradient(135deg,var(--color-primary) 0%,#0E7490 100%);color:#fff}.settings-card-header h2{font-size:var(--font-size-lg);font-weight:600;margin:0}.settings-card-icon{font-size:var(--font-size-xl)}.settings-card-body{padding:var(--spacing-xl)}.settings-form-group{margin-bottom:var(--spacing-lg)}.settings-form-group label{display:block;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text);margin-bottom:var(--spacing-sm)}.settings-input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-lg);transition:all .2s ease}.settings-input:focus{outline:none;border-color:var(--color-primary);background:var(--color-white);box-shadow:0 0 0 4px #0891b21a}.settings-input::placeholder{color:var(--color-text-muted)}.settings-tip{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:#fef3c7;border-radius:var(--radius-md);color:#92400e}.settings-btn{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);justify-content:center}@media (max-width: 768px){.settings-grid{grid-template-columns:1fr}.settings-card-body{padding:var(--spacing-lg)}}[data-theme=dark] .settings-card{background:#1e293b}[data-theme=dark] .settings-input{background:#334155;border-color:#475569;color:#f8fafc}[data-theme=dark] .settings-tip{background:#f59e0b33;color:#fcd34d}
