:root{--bg-primary-dark: #000000;--text-primary-dark: #ffffff;--text-secondary-dark: #808080;--border-color-dark: #333333;--bg-primary-light: #ffffff;--text-primary-light: #000000;--text-secondary-light: #666666;--border-color-light: #e0e0e0;--font-main: "Fira Code", "Cascadia Code", "Source Code Pro", Menlo, Consolas, monospace;--max-content-width: 800px;--bg-primary: var(--bg-primary-dark);--text-primary: var(--text-primary-dark);--text-secondary: var(--text-secondary-dark);--border-color: var(--border-color-dark)}.theme-toggle{position:fixed;top:1rem;right:1rem;background:none;border:1px dashed var(--text-secondary);color:var(--text-primary);width:50px;height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:var(--font-main);font-size:1.2rem;z-index:1000;transition:background-color .3s ease;padding:0}.theme-toggle .moon,.theme-toggle .sun{position:absolute}.theme-toggle.dark .sun,.theme-toggle.light .moon{opacity:0}.light-mode{--bg-primary: var(--bg-primary-light);--text-primary: var(--text-primary-light);--text-secondary: var(--text-secondary-light);--border-color: var(--border-color-light)}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:var(--text-secondary) var(--bg-primary)}*::-webkit-scrollbar{width:8px}*::-webkit-scrollbar-track{background:var(--bg-primary)}*::-webkit-scrollbar-thumb{background-color:var(--text-secondary);border-radius:4px}html,body{width:100vw;max-width:100vw;overflow-x:hidden;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-main);line-height:1.6}.container{width:100%;max-width:var(--max-content-width);margin:0 auto;padding:0 1rem}.app-header{background-color:var(--bg-primary);color:var(--text-primary);width:100vw;padding:1rem 0;border-bottom:1px solid var(--border-color)}.app-header .container{display:flex;justify-content:space-between;align-items:center}.site-title{font-size:1rem;color:var(--text-secondary);text-decoration:none;font-family:var(--font-main)}.main-nav ul{display:flex;list-style:none}.main-nav li{margin-left:1rem}.main-nav a{color:var(--text-secondary);text-decoration:none;font-family:var(--font-main);transition:color .3s ease}.main-nav a:hover{color:var(--text-primary)}.app-content{width:100vw;min-height:calc(100vh - 160px);display:flex;justify-content:center;padding:2rem 0}.app-content .container{width:100%;max-width:var(--max-content-width)}.app-footer{width:100vw;background-color:var(--bg-primary);padding:1rem 0;text-align:center;font-size:.8rem;color:var(--text-secondary);border-top:1px solid var(--border-color)}.post-list{width:100%;margin-top:3rem;max-width:var(--max-content-width);margin:0 auto}.post-preview{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.post-preview h2{margin-bottom:.5rem}.post-preview h2 a{color:var(--text-primary);text-decoration:none;transition:color .3s ease}.post-preview h2 a:hover{color:#3d6650}.post-preview time{display:block;color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem;font-family:var(--font-main)}.post-date{display:block;color:var(--text-secondary);font-size:1rem;margin-bottom:1.5rem;font-family:var(--font-main)}.excerpt{margin-bottom:1rem;color:var(--text-secondary)}.read-more{display:inline-block;color:var(--text-secondary);text-decoration:none;border:1.5px dotted var(--text-secondary);padding:.2rem .7rem;border-radius:2px;transition:all .3s ease}.read-more:hover{background-color:#8080801a;border-color:var(--text-secondary)}.markdown-content{line-height:1.8}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1.5rem 0 1rem;font-weight:700;color:var(--text-primary)}.markdown-content p{margin-bottom:1.5rem}.markdown-content a{color:var(--text-primary);text-decoration:none;border-bottom:1px dotted var(--text-secondary)}.markdown-content a:hover{color:#2e4f4f;border-bottom-color:#2e4f4f}.markdown-content pre{background-color:var(--border-color);color:var(--text-primary);padding:1rem;border-radius:4px;overflow:auto;margin-bottom:1.5rem;border:1px solid var(--border-color)}.markdown-content code{font-family:var(--font-main);font-size:.9rem}.markdown-content ul{padding-left:3.5rem;margin-bottom:1rem;margin-top:.5rem;list-style-type:disc}.markdown-content ul ul{margin-top:.25rem;margin-bottom:.25rem}.markdown-content ol{padding-left:1.5rem;margin-bottom:1.5rem;list-style-type:decimal}@media (max-width: 768px){:root{--max-content-width: 100%}.container{padding:0 1rem}.app-header .container{flex-direction:column;align-items:center}.main-nav ul{margin-top:1rem}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.spinner{width:10px;height:10px;background-color:var(--text-secondary);animation:blink 1s infinite;margin:20px auto}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.loading-detail{font-size:.9rem;color:#666;margin-top:.5rem}.error{padding:2rem;background-color:#ff00000d;border:1px solid rgba(255,0,0,.2);border-radius:4px;margin:2rem 0}.error h2{color:#d32f2f;margin-top:0}.error details{margin-top:1rem;padding:1rem;background-color:#0000000d;border-radius:4px}.error summary{cursor:pointer;font-weight:700}.error ul{margin-top:.5rem;padding-left:1.5rem}.empty{padding:2rem;text-align:center;background-color:#0000000d;border-radius:4px;margin:2rem 0}.empty details{margin:1.5rem auto;max-width:500px;text-align:left;background-color:#00000008;padding:1rem;border-radius:4px}.empty summary{cursor:pointer;font-weight:700;margin-bottom:.5rem}.empty ul{margin-top:.5rem;padding-left:1.5rem}.empty li{margin-bottom:.5rem}.empty code{background-color:#0000000d;padding:.2rem .4rem;border-radius:3px;font-family:var(--font-main);font-size:.9rem}.empty .actions{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.post-list-header{margin-bottom:2rem;text-transform:none}.post-list-header h1{font-weight:700;color:var(--text-primary);font-size:3.2rem}.header-underline{color:var(--text-main);font-family:var(--font-main);margin-bottom:2rem;opacity:.9}.new-post-button,.action-button{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem 1rem;font-family:var(--font-main);cursor:pointer;transition:all .2s ease}.new-post-button:hover,.action-button:hover{background:var(--text-primary);color:var(--bg-primary)}.actions{display:flex;gap:1rem;margin-top:1rem}.new-post-help{background:var(--bg-primary);border:1px solid var(--border-color);padding:1.5rem;margin-bottom:2rem;border-radius:4px}.new-post-help h3{margin-top:0;margin-bottom:1rem}.new-post-help pre{background:#0000000d;padding:1rem;overflow-x:auto;border-radius:4px;margin:1rem 0;font-family:var(--font-main);font-size:.9rem;white-space:pre-wrap}.new-post-help code{background:#0000000d;padding:.2rem .4rem;border-radius:2px;font-family:var(--font-main);font-size:.9rem}.empty button{margin-top:1rem}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#2e4f4f}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#2e4f4f}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#2e4f4f}button:hover{border-color:#2e4f4f}button{background-color:#f9f9f9}}.app-header .container{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.theme-toggle-container{display:flex;align-items:center}.theme-toggle{background:none;border:none;color:inherit;font-size:1.5rem;cursor:pointer;transition:transform .3s ease;padding:.5rem;margin-left:1rem}.theme-toggle:hover{transform:scale(.8)}
