:root{--color-bg:#f4f8ff;--color-surface:#fff;--color-text:#1a1a1a;--color-text-secondary:#666;--color-border:#e5e5e5;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-danger:#dc2626;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"SF Mono", Monaco, "Cascadia Code", "Roboto Mono", monospace;--max-width:800px;--border-radius:8px;--shadow:0 1px 3px #0000001a}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background:var(--color-bg);min-width:0;color:var(--color-text);font-family:var(--font-sans);margin:0;line-height:1.7;overflow-x:hidden}a{color:var(--color-primary)}a:hover{color:var(--color-primary-hover)}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.container{width:min(100% - 2rem, var(--max-width));margin:0 auto}.site-header{z-index:100;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:fixed;top:0;left:0;right:0}.site-header .container{align-items:center;min-height:4rem;display:flex}.site-title{color:var(--color-text);font-size:1.25rem;font-weight:600;text-decoration:none}.site-title:hover{color:var(--color-primary);text-decoration:none}.site-main{min-height:calc(100vh - 9.5rem);padding:calc(4rem + var(--spacing-2xl)) 0 var(--spacing-2xl);font-variant-numeric:tabular-nums}.site-footer{border-top:1px solid var(--color-border);color:var(--color-text-secondary);text-align:center;font-size:.875rem}.site-footer p{padding:var(--spacing-xl) 0;margin:0}h1,h2,h3,h4{margin:0 0 var(--spacing-md);font-weight:600;line-height:1.3}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}p{margin:0 0 var(--spacing-md)}.card{margin-bottom:var(--spacing-md);padding:var(--spacing-lg);border:1px solid var(--color-border);border-radius:var(--border-radius);background:var(--color-surface);transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow)}.card-title{margin-bottom:var(--spacing-sm);font-size:1.25rem}.card-title a{color:var(--color-text);text-decoration:none}.card-title a:hover{color:var(--color-primary)}.card-meta{gap:var(--spacing-xs) var(--spacing-lg);margin:0 0 var(--spacing-md);color:var(--color-text-secondary);flex-wrap:wrap;font-size:.875rem;display:flex}.card-meta div,.note-meta div{gap:var(--spacing-sm);display:flex}.card-meta dt,.card-meta dd,.note-meta dt,.note-meta dd{margin:0}.tag-list{gap:var(--spacing-sm);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.tag-link{min-height:2rem;padding:var(--spacing-xs) var(--spacing-sm);color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;font-size:.875rem;font-weight:500;line-height:1.25;text-decoration:none;display:inline-flex}.tag-link:hover{color:#1e40af;background:#dbeafe;border-color:#93c5fd;text-decoration:none}.btn{min-height:2.5rem;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius);cursor:pointer;font:inherit;border:1px solid #0000;justify-content:center;align-items:center;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-secondary{border-color:var(--color-border);background:var(--color-surface);color:var(--color-text)}.btn-secondary:hover{background:var(--color-border);color:var(--color-text);text-decoration:none}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover{color:#fff;background:#b91c1c;text-decoration:none}.note-detail-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-md) 0 var(--spacing-md) 1rem;border-bottom:1px solid var(--color-border);border-left:2px solid var(--color-border)}.note-detail-header h1{margin-bottom:var(--spacing-sm)}.note-meta{gap:var(--spacing-xs) var(--spacing-lg);margin:0 0 var(--spacing-md);color:var(--color-text-secondary);flex-wrap:wrap;font-size:.875rem;display:flex}.markdown-body{overflow-wrap:break-word;max-width:100%}.markdown-body img{border-radius:var(--border-radius);max-width:100%;height:auto}.markdown-body pre{max-width:100%;overflow-x:auto}.markdown-body table{max-width:100%;display:block;overflow-x:auto}@media (width<=768px){html{font-size:15px}.container{width:min(100% - 1.5rem, var(--max-width))}.site-main{padding-top:calc(4rem + var(--spacing-xl))}h1{font-size:1.75rem}h2{font-size:1.35rem}.card{padding:var(--spacing-md)}.card-meta,.note-meta{gap:var(--spacing-xs) var(--spacing-md)}}
