﻿*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;line-height:1.6;color:#1f2937;background-color:#fff}a{color:#2563eb;text-decoration:none}a:hover{text-decoration:underline}.site-header{background-color:#fff;border-bottom:1px solid #e5e7eb;padding:1rem 0;position:sticky;top:0;z-index:100}.site-nav{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;justify-content:space-between;align-items:center}.site-title{font-size:1.5rem;font-weight:700;color:#1f2937}.site-title:hover{text-decoration:none}.nav-links{display:flex;gap:1.5rem}.nav-links a{color:#6b7280}.nav-links a:hover{color:#2563eb;text-decoration:none}.nav-links a[href="/"]{color:#2563eb;font-weight:500}.nav-links a[href="/"]:hover{color:#1e40af}.nav-links .lang-switcher{display:inline-flex;gap:.5rem;margin-left:.75rem;padding-left:.75rem;border-left:1px solid #e5e7eb}.nav-links .lang-switcher .lang-link{font-size:.85rem;font-weight:500;padding:.25rem .5rem;border-radius:.25rem;transition:all .2s}.nav-links .lang-switcher .lang-link:hover{background:#f3f4f6;color:#2563eb;text-decoration:none}.site-main{max-width:1200px;margin:0 auto;padding:2rem 1rem;min-height:calc(100vh - 200px)}.hero{text-align:center;padding:3rem 0;margin-bottom:2rem}.hero h1{font-size:2.5rem;margin-bottom:.5rem;background:linear-gradient(135deg, #2563eb, #1e40af);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.hero .hero-subtitle{font-size:1.2rem;color:#6b7280}.modules-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:1.5rem;margin-top:2rem}.module-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.module-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.module-card .module-icon{font-size:2rem;margin-bottom:.5rem}.module-card h2{font-size:1.25rem;margin-bottom:.5rem}.module-card h2 a{color:#1f2937}.module-card h2 a:hover{text-decoration:none;color:#2563eb}.module-card p{color:#6b7280;margin-bottom:1rem}.module-card .module-links{list-style:none;margin-bottom:1rem}.module-card .module-links li{padding:.25rem 0;border-bottom:1px solid #e5e7eb}.module-card .module-links li:last-child{border-bottom:none}.module-card .module-links li a{color:#1f2937;font-size:.9rem}.module-card .module-links li a:hover{color:#2563eb}.module-card .module-links li.empty-notice{color:#6b7280;font-style:italic;font-size:.85rem}.module-card .view-all{display:inline-block;color:#2563eb;font-weight:500}.module-card .view-all:hover{text-decoration:none}.github-projects{margin:1rem 0}.github-projects .github-repo{padding:1rem 0;border-bottom:1px solid #e5e7eb}.github-projects .github-repo:last-child{border-bottom:none}.github-projects .github-repo h3{font-size:1rem;margin-bottom:.25rem}.github-projects .github-repo h3 a{color:#2563eb}.github-projects .github-repo .repo-description{font-size:.85rem;color:#6b7280;margin-bottom:.5rem}.github-projects .github-repo .repo-meta{display:flex;gap:1rem;font-size:.75rem;color:#6b7280;flex-wrap:wrap}.github-projects .github-repo .repo-meta .repo-language::before{content:"● "}.posts-list{margin-top:2rem}.post-card{padding:1.5rem 0;border-bottom:1px solid #e5e7eb}.post-card:last-child{border-bottom:none}.post-card h2{font-size:1.25rem;margin-bottom:.5rem}.post-card h2 a{color:#1f2937}.post-card h2 a:hover{color:#2563eb;text-decoration:none}.post-card .post-card-meta{color:#6b7280;font-size:.9rem}.post-card .post-summary{margin-top:.5rem}.post{max-width:800px;margin:0 auto}.post .post-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.post .post-header h1{font-size:2rem;margin-bottom:.5rem}.post .post-header .post-meta{display:flex;gap:1rem;align-items:center;color:#6b7280;font-size:.9rem;flex-wrap:wrap}.post .post-header .post-tags{display:flex;gap:.5rem;flex-wrap:wrap}.post .post-header .post-tags .tag{background:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem;font-size:.8rem}.post .post-header .post-tags .tag:hover{background:#2563eb;color:#fff;text-decoration:none}.post .post-content{line-height:1.8}.post .post-content h2,.post .post-content h3,.post .post-content h4,.post .post-content h5,.post .post-content h6{margin-top:2rem;margin-bottom:1rem}.post .post-content h2{font-size:1.5rem;border-bottom:1px solid #e5e7eb;padding-bottom:.5rem}.post .post-content h3{font-size:1.25rem}.post .post-content p{margin-bottom:1rem}.post .post-content ul,.post .post-content ol{margin-bottom:1rem;padding-left:2rem}.post .post-content li{margin-bottom:.5rem}.post .post-content code{background:#f3f4f6;padding:.2rem .4rem;border-radius:.25rem;font-size:.9em}.post .post-content pre{background:#1f2937;color:#f9fafb;padding:1rem;border-radius:.5rem;overflow-x:auto;margin-bottom:1rem}.post .post-content pre code{background:none;padding:0}.post .post-content blockquote{border-left:4px solid #2563eb;padding-left:1rem;margin:1rem 0;color:#6b7280}.post .post-content img{max-width:100%;height:auto;display:block;margin:1rem auto}.post .post-content table{width:100%;border-collapse:collapse;margin:1rem 0}.post .post-content table th,.post .post-content table td{border:1px solid #e5e7eb;padding:.5rem 1rem;text-align:left}.post .post-content table th{background:#f3f4f6}.post-navigation{max-width:800px;margin:2rem auto;display:flex;justify-content:space-between;padding:1rem 0;border-top:1px solid #e5e7eb}.post-navigation .prev,.post-navigation .next{color:#2563eb;max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-navigation .prev:hover,.post-navigation .next:hover{text-decoration:none}.post-footer{margin-top:3rem;padding:1.5rem;background:#f3f4f6;border-radius:.5rem;border-left:4px solid #2563eb}.post-footer .post-license{font-size:.9rem;color:#6b7280}.post-footer .post-license p{margin:0}.post-footer .post-license a{color:#2563eb}.comments{margin-top:3rem;padding-top:2rem;border-top:1px solid #e5e7eb}.comments h2{margin-bottom:1rem}.section-page{max-width:800px;margin:0 auto}.section-page h1{font-size:2rem;margin-bottom:.5rem}.section-page .section-description{color:#6b7280;margin-bottom:2rem}.site-footer{background:#f3f4f6;padding:2rem 1rem;text-align:center;color:#6b7280;font-size:.9rem}.site-footer p{margin-bottom:.5rem}.site-footer .footer-links{margin-top:.75rem;margin-bottom:.5rem;font-size:.875rem}.site-footer .footer-links a{color:#6b7280;text-decoration:none;transition:color .2s}.site-footer .footer-links a:hover{color:#2563eb;text-decoration:underline}.site-footer .footer-links a[href="/"]{color:#2563eb;font-weight:500}.site-footer .footer-links a[href="/"]:hover{color:#1e40af}.site-footer .footer-links .separator{margin:0 .5rem;color:#e5e7eb}.site-footer .visitor-counter{margin-top:.5rem;font-size:.8rem}.tags-cloud{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.tags-cloud .tag-item{display:inline-flex;align-items:center;gap:.5rem;background:#f3f4f6;padding:.5rem 1rem;border-radius:2rem;transition:background .2s}.tags-cloud .tag-item:hover{background:#2563eb;text-decoration:none}.tags-cloud .tag-item:hover .tag-name,.tags-cloud .tag-item:hover .tag-count{color:#fff}.tags-cloud .tag-item .tag-name{color:#1f2937;font-weight:500}.tags-cloud .tag-item .tag-count{background:#fff;padding:.125rem .5rem;border-radius:1rem;font-size:.75rem;color:#6b7280}.search-container{position:relative}.search-container .search-input{padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:2rem;font-size:.9rem;width:200px;transition:width .3s,border-color .3s}.search-container .search-input:focus{outline:none;border-color:#2563eb;width:280px}.search-container .search-results{position:absolute;top:100%;right:0;width:320px;max-height:400px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 12px rgba(0,0,0,.15);list-style:none;padding:.5rem 0;margin-top:.5rem;z-index:1000;display:none}.search-container .search-results .search-result a{display:block;padding:.75rem 1rem;color:#1f2937;text-decoration:none}.search-container .search-results .search-result a:hover{background:#f3f4f6;text-decoration:none}.search-container .search-results .search-result a h4{font-size:.95rem;margin-bottom:.25rem;color:#2563eb}.search-container .search-results .search-result a p{font-size:.85rem;color:#6b7280;margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.search-container .search-results .no-results{padding:1rem;color:#6b7280;text-align:center}.search-container .search-results mark{background:#fef08a;color:inherit;padding:.1rem .2rem;border-radius:.25rem}.mermaid-container{margin:1.5rem 0;padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;text-align:center;overflow-x:auto}.mermaid-container svg{max-width:100%;height:auto}.mermaid-error{padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;font-size:.9rem}.archive-badge{display:inline-block;background:#fef3c7;color:#92400e;font-size:.75rem;padding:.25rem .5rem;border-radius:.25rem;margin-left:.5rem;font-weight:500}.github-readme{margin-top:3rem;padding-top:2rem;border-top:2px dashed #e5e7eb}.github-readme h2{margin-bottom:1.5rem}.github-readme #readme-content{line-height:1.8}.github-readme #readme-content img{max-width:100%}.github-readme #readme-content pre{background:#1f2937;color:#f9fafb;padding:1rem;border-radius:.5rem;overflow-x:auto}.github-readme #readme-content code{background:#f3f4f6;padding:.2rem .4rem;border-radius:.25rem}.github-readme #readme-content blockquote{border-left:4px solid #2563eb;padding-left:1rem;margin:1rem 0;color:#6b7280}.github-readme #readme-content table{width:100%;border-collapse:collapse;margin:1rem 0}.github-readme #readme-content table th,.github-readme #readme-content table td{border:1px solid #e5e7eb;padding:.5rem 1rem;text-align:left}.github-readme #readme-content table th{background:#f3f4f6}.nav-icon{margin-right:.35rem;font-size:1.1em}.nav-subscribe{font-size:1.3rem;text-decoration:none;margin-left:.5rem;padding-left:.75rem;border-left:1px solid #e5e7eb;transition:all .2s;opacity:.8}.nav-subscribe:hover{opacity:1;transform:scale(1.15)}.subscribe-page{max-width:1000px;margin:0 auto;padding:4rem 1.5rem}.subscribe-page .subscribe-header{text-align:center;margin-bottom:2.5rem}.subscribe-page .subscribe-header h1{font-size:2.5rem;margin-bottom:.5rem;background:linear-gradient(135deg, #2563eb, #7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.subscribe-page .subscribe-header .subtitle{color:#6b7280;font-size:1.1rem}.subscribe-page .info-box{background:linear-gradient(135deg, #fef3c7, #fde68a);border-left:4px solid #f59e0b;padding:1rem 1.5rem;border-radius:.5rem;margin-bottom:2.5rem;display:flex;align-items:center;gap:.75rem}.subscribe-page .info-box .info-icon{font-size:1.5rem}.subscribe-page .info-box p{margin:0;color:#92400e;line-height:1.6}.subscribe-page .feed-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:1.5rem;margin-bottom:3rem}.subscribe-page .feed-cards .feed-card{background:#fff;border:2px solid #e5e7eb;border-radius:1rem;padding:1.5rem;transition:all .3s;cursor:default}.subscribe-page .feed-cards .feed-card:hover{border-color:#2563eb;transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}.subscribe-page .feed-cards .feed-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.subscribe-page .feed-cards .feed-card .card-header .feed-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:2rem;font-weight:600;font-size:.95rem}.subscribe-page .feed-cards .feed-card .card-header .feed-badge.atom{background:linear-gradient(135deg, #dbeafe, #bfdbfe);color:#1e40af}.subscribe-page .feed-cards .feed-card .card-header .feed-badge.rss{background:linear-gradient(135deg, #fed7aa, #fdba74);color:#9a3412}.subscribe-page .feed-cards .feed-card .card-header .feed-badge .badge-icon{font-size:1.2rem}.subscribe-page .feed-cards .feed-card .card-header .copy-btn{background:#2563eb;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:.5rem;cursor:pointer;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.4rem;transition:all .2s}.subscribe-page .feed-cards .feed-card .card-header .copy-btn:hover{background:#134cca;transform:scale(1.05)}.subscribe-page .feed-cards .feed-card .card-header .copy-btn:active{transform:scale(.95)}.subscribe-page .feed-cards .feed-card .card-header .copy-btn .btn-icon{font-size:1.1rem}.subscribe-page .feed-cards .feed-card .url-display{background:#f3f4f6;padding:1rem;border-radius:.5rem;margin-bottom:1rem;cursor:pointer;transition:all .2s;position:relative}.subscribe-page .feed-cards .feed-card .url-display:hover{background:#e0e7ff}.subscribe-page .feed-cards .feed-card .url-display:hover .click-hint{opacity:1}.subscribe-page .feed-cards .feed-card .url-display code{display:block;font-size:.85rem;color:#2563eb;font-family:"JetBrains Mono",monospace;word-break:break-all}.subscribe-page .feed-cards .feed-card .url-display .click-hint{position:absolute;top:.5rem;right:.5rem;font-size:.75rem;color:#6b7280;opacity:0;transition:opacity .2s}.subscribe-page .feed-cards .feed-card .card-actions{text-align:center}.subscribe-page .feed-cards .feed-card .card-actions .preview-link{display:inline-block;color:#6b7280;text-decoration:none;font-size:.9rem;padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .2s}.subscribe-page .feed-cards .feed-card .card-actions .preview-link:hover{color:#2563eb;border-color:#2563eb;background:#eff6ff}.subscribe-page .how-to-section{background:linear-gradient(135deg, #f0f9ff, #e0f2fe);padding:2.5rem;border-radius:1rem;margin-bottom:2.5rem}.subscribe-page .how-to-section h2{font-size:1.5rem;text-align:center;margin-bottom:2rem;color:#1f2937}.subscribe-page .how-to-section .steps{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:1.5rem;margin-bottom:2rem}.subscribe-page .how-to-section .steps .step-item{display:flex;align-items:flex-start;gap:1rem}.subscribe-page .how-to-section .steps .step-item .step-icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:linear-gradient(135deg, #2563eb, #7c3aed);color:#fff;border-radius:50%;font-weight:bold;flex-shrink:0;font-size:1rem}.subscribe-page .how-to-section .steps .step-item p{margin:0;line-height:1.7;color:#1f2937}.subscribe-page .how-to-section .steps .step-item p strong{color:#2563eb}.subscribe-page .how-to-section .compatibility-note{background:#fff;padding:1.25rem;border-radius:.75rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.subscribe-page .how-to-section .compatibility-note .check-icon{font-size:1.3rem}.subscribe-page .how-to-section .compatibility-note strong{color:#1f2937}.subscribe-page .how-to-section .compatibility-note .readers-list{color:#6b7280;font-size:.9rem;width:100%;margin-top:.25rem}.subscribe-page .readers-section h2{font-size:1.5rem;text-align:center;margin-bottom:1.5rem;color:#1f2937}.subscribe-page .readers-section .readers-list-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:1rem}.subscribe-page .readers-section .readers-list-grid .reader-item{display:block;padding:1.25rem;background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;text-decoration:none;transition:all .3s}.subscribe-page .readers-section .readers-list-grid .reader-item:hover{border-color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}.subscribe-page .readers-section .readers-list-grid .reader-item:hover .reader-name{color:#2563eb}.subscribe-page .readers-section .readers-list-grid .reader-item .reader-name{display:block;font-weight:600;font-size:1.1rem;color:#1f2937;margin-bottom:.25rem;transition:color .2s}.subscribe-page .readers-section .readers-list-grid .reader-item .reader-desc{display:block;font-size:.9rem;color:#6b7280}.toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(100px);background:linear-gradient(135deg, #10b981, #059669);color:#fff;padding:.875rem 1.75rem;border-radius:.75rem;font-weight:500;box-shadow:0 8px 24px rgba(16,185,129,.3);opacity:0;transition:all .4s cubic-bezier(.68, -.55, .265, 1.55);z-index:9999;display:flex;align-items:center;gap:.5rem}.toast .toast-icon{font-size:1.2rem}.toast.show{transform:translateX(-50%) translateY(0);opacity:1}.about-page{max-width:800px;margin:0 auto;padding:3rem 1.5rem}.about-page .about-container .about-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid #e5e7eb}.about-page .about-container .about-header h1{font-size:2.5rem;margin-bottom:.5rem;background:linear-gradient(135deg, #2563eb, #7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.about-page .about-container .about-header .subtitle{color:#6b7280;font-size:1.1rem}.about-page .about-container .about-content{max-width:800px;margin:0 auto}.about-page .about-container .about-content>p{line-height:2;color:#1f2937;font-size:1.05rem;margin-bottom:1.5rem;text-align:center}.about-page .about-container .about-content .tech-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:2rem;margin:3rem 0}.about-page .about-container .about-content .tech-grid>div h2{font-size:1rem;color:#6b7280;margin-bottom:.75rem;font-weight:500}.about-page .about-container .about-content .tech-grid>div ul{list-style:none;padding:0;margin:0}.about-page .about-container .about-content .tech-grid>div ul li{padding:.35rem 0;font-size:.95rem;color:#1f2937;line-height:1.5;border-bottom:1px dotted #e5e7eb}.about-page .about-container .about-content .tech-grid>div ul li:last-child{border-bottom:none}.about-page .about-container .about-content .contact{text-align:center;margin-top:3rem;padding-top:2rem;border-top:1px solid #e5e7eb}.about-page .about-container .about-content .contact p{margin:0;text-align:center}.about-page .about-container:hover{color:#2563eb;text-decoration:underline}.about-page .separator{margin:0 .5rem;color:#e5e7eb}@media (max-width: 768px){.site-nav{flex-direction:column;gap:1rem}.nav-links{flex-wrap:wrap;justify-content:center;gap:1rem}.nav-links .search-container{width:100%}.nav-links .search-container .search-input{width:100%}.nav-links .search-container .search-input:focus{width:100%}.nav-links .search-container .search-results{position:fixed;left:1rem;right:1rem;width:auto}.hero h1{font-size:1.75rem}.modules-grid{grid-template-columns:1fr}.post-navigation{flex-direction:column;gap:1rem}.post-navigation .prev,.post-navigation .next{max-width:100%}}