*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;color:#2D2D2D;background-color:#FAF8F5;line-height:1.6}.site-wrapper{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.content{padding:48px 32px;max-width:840px;width:100%;margin:0 auto}.post-header{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #E8E4DF}.post-title{font-size:2rem;font-weight:700;color:#2D2D2D;margin-bottom:8px}.post-date{font-size:0.875rem;color:#6B6B6B;margin-right:16px}.post-version{display:inline-block;background:#7FB685;color:#fff;padding:2px 10px;border-radius:12px;font-size:0.8rem;font-weight:500}.post-content h2{font-size:1.5rem;margin-top:32px;margin-bottom:16px;color:#2D2D2D}.post-content h3{font-size:1.2rem;margin-top:24px;margin-bottom:8px}.post-content p{margin-bottom:16px;color:#2D2D2D;line-height:1.7}.post-content ul,.post-content ol{margin-bottom:16px;padding-left:24px}.post-content ul li,.post-content ol li{margin-bottom:4px;line-height:1.6}.post-content code{font-family:"JetBrains Mono","Fira Code",monospace;font-size:0.875em;background:#F5F2ED;padding:2px 6px;border-radius:4px}.post-content pre{background:#F5F2ED;border:1px solid #E8E4DF;border-radius:8px;padding:16px;overflow-x:auto;margin-bottom:16px}.post-content pre code{background:none;padding:0;font-size:0.85rem;line-height:1.5}.post-content a{color:#7FB685;text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.2s}.post-content a:hover{border-bottom-color:#7FB685}.post-content blockquote{border-left:3px solid #7FB685;padding-left:16px;color:#6B6B6B;margin-bottom:16px}.post-content table{display:block;overflow-x:auto;min-width:100%;border-collapse:collapse;margin-bottom:16px}.post-content table th,.post-content table td{padding:8px 16px;border:1px solid #E8E4DF;text-align:left}.post-content table th{background:#F3F0EB;font-weight:600}.post-content details{margin-bottom:16px;border:1px solid #E8E4DF;border-radius:8px;padding:16px}.post-content summary{cursor:pointer;font-weight:600;padding:8px 0;color:#2D2D2D}.post-content summary:hover{color:#7FB685}.post-content details[open] summary{margin-bottom:8px;border-bottom:1px solid #E8E4DF;padding-bottom:8px}.list-page .list-title{font-size:2rem;margin-bottom:8px}.list-page .list-description{color:#6B6B6B;margin-bottom:32px}.home-hero{text-align:center;padding:48px 0;margin-bottom:32px;border-bottom:1px solid #E8E4DF}.home-hero h1{font-size:2.5rem;margin-bottom:8px}.home-hero .hero-subtitle{color:#6B6B6B;font-size:1.1rem}.home-section{margin-bottom:48px}.home-section h2{font-size:1.4rem;margin-bottom:24px;display:flex;align-items:center;gap:8px}.patch-list{list-style:none;padding:0}.patch-list li{padding:16px;border:1px solid #E8E4DF;border-radius:8px;margin-bottom:8px;transition:border-color 0.2s, box-shadow 0.2s}.patch-list li:hover{border-color:#7FB685;box-shadow:0 2px 8px rgba(0,0,0,0.04)}.patch-list li a{text-decoration:none;color:#2D2D2D;display:flex;justify-content:space-between;align-items:center}.patch-list li .patch-version{font-weight:600}.patch-list li .patch-date{font-size:0.875rem;color:#6B6B6B}.quick-links{display:grid;grid-template-columns:repeat(auto-fill, minmax(240px, 1fr));gap:16px}.quick-link-card{display:block;padding:24px;border:1px solid #E8E4DF;border-radius:8px;text-decoration:none;color:#2D2D2D;transition:border-color 0.2s, box-shadow 0.2s}.quick-link-card:hover{border-color:#7FB685;box-shadow:0 2px 8px rgba(0,0,0,0.04)}.quick-link-card .card-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.quick-link-card .card-icon svg{width:24px;height:24px;stroke:currentColor;fill:none}.quick-link-card .card-title{font-weight:600;margin-bottom:4px}.quick-link-card .card-desc{font-size:0.875rem;color:#6B6B6B}.menu-toggle{display:none;position:fixed;top:16px;left:16px;z-index:1001;background:#fff;border:1px solid #E8E4DF;border-radius:8px;padding:10px;cursor:pointer;width:42px;height:42px;flex-direction:column;justify-content:center;align-items:center;gap:4px}.menu-toggle span{display:block;width:18px;height:2px;background:#2D2D2D;border-radius:1px;transition:transform 0.3s, opacity 0.3s}.menu-toggle.active span:nth-child(1){transform:translateY(6px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.3);z-index:999}.sidebar{background:#F3F0EB;border-right:1px solid #E8E4DF;padding:24px;height:100vh;position:sticky;top:0;overflow-y:auto}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-thumb{background:#E8E4DF;border-radius:2px}.sidebar-header{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #E8E4DF}.site-logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:#2D2D2D}.site-logo .logo-text{font-size:1.1rem;font-weight:700}.sidebar-nav{display:flex;flex-direction:column;gap:16px}.nav-section{margin-bottom:8px}.nav-section-title{display:flex;align-items:center;gap:8px;padding:8px 8px;font-weight:600;font-size:0.9rem;color:#2D2D2D;text-decoration:none;border-radius:6px;transition:background 0.2s}.nav-section-title:hover{background:rgba(0,0,0,0.04)}.nav-section-title.active{color:#7FB685;background:rgba(127,182,133,0.08)}.nav-items{list-style:none;padding:0;margin-top:4px;margin-left:32px}.nav-items li{margin-bottom:1px}.nav-items a{display:block;padding:4px 8px;font-size:0.85rem;color:#6B6B6B;text-decoration:none;border-radius:4px;transition:color 0.2s, background 0.2s}.nav-items a:hover{color:#2D2D2D;background:rgba(0,0,0,0.03)}.nav-items a.active{color:#7FB685;font-weight:500}@media (max-width: 768px){.site-wrapper{grid-template-columns:1fr}.menu-toggle{display:flex}.sidebar{position:fixed;left:-280px;top:0;z-index:1000;width:280px;height:100vh;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;transition:left 0.3s ease;box-shadow:none;padding-top:56px;padding-bottom:40px}.sidebar.open{left:0;box-shadow:4px 0 24px rgba(0,0,0,0.1)}.overlay.active{display:block;touch-action:none}.content{padding:32px 16px;padding-top:72px;overflow-x:hidden}.home-hero h1{font-size:1.8rem}.quick-links{grid-template-columns:1fr}.post-content table{font-size:0.8rem}.post-content pre code{font-size:0.78rem}}
