*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:#0c0a09;color:#e7e5e4;min-height:100vh;line-height:1.6}

a{color:#10b981;text-decoration:none}
a:hover{color:#34d399}

.header{border-bottom:1px solid #292524}
.header-inner{max-width:1100px;margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}
.logo{font-size:1.25rem;font-weight:700;color:#10b981}
.header-tagline{font-size:0.8rem;color:#57534e}

.main{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}

.footer{border-top:1px solid #292524;padding:1.5rem;text-align:center;font-size:0.8rem;color:#44403c}

.page-title{font-size:1.5rem;font-weight:700;margin-bottom:0.25rem}
.page-subtitle{font-size:0.85rem;color:#57534e;margin-bottom:1.5rem}

.home-layout{display:flex;gap:2rem}
.home-main{flex:1;min-width:0}
.home-sidebar{width:320px;flex-shrink:0}

.article-list{display:flex;flex-direction:column;gap:0.75rem}

.card{border:1px solid #292524;border-radius:0.5rem;padding:1rem;transition:border-color 0.15s}
.card:hover{border-color:#44403c}
.card-meta{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.05em;color:#57534e;margin-bottom:0.15rem}
.card-title{font-size:1rem;font-weight:600;color:#e7e5e4;text-decoration:none;display:block;margin-bottom:0.3rem}
.card-title:hover{color:#34d399}
.card-summary{font-size:0.85rem;color:#a8a29e;line-height:1.4;margin-bottom:0.4rem}
.card-footer{font-size:0.75rem;color:#57534e}

.card-compact{display:flex;gap:0.75rem;align-items:flex-start;padding:0.75rem}
.card-body{flex:1;min-width:0}
.card-rank{font-size:1.1rem;font-weight:700;color:#10b981;min-width:1.5rem;text-align:center;padding-top:0.1rem}

.badge{display:inline-block;font-size:0.65rem;font-weight:600;padding:0.15rem 0.5rem;border-radius:999px;margin-right:0.35rem;margin-bottom:0.25rem}
.badge-pts{background:#78350f;color:#fde68a}
.badge-cmts{background:#1e3a5f;color:#93c5fd}

.section-title{font-size:1rem;font-weight:600;color:#d6d3d1;margin-bottom:0.15rem}
.section-subtitle{font-size:0.75rem;color:#57534e;margin-bottom:0.75rem}
.digest-section{margin-bottom:1.5rem}

.blog-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid #292524}
.blog-card .card-title{font-size:1.05rem}
.blog-link-wrap{margin-top:0.75rem;text-align:right}
.blog-link{font-size:0.9rem;font-weight:600}

.pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem;padding:1rem 0}
.page-link{font-size:0.9rem;color:#10b981}
.page-link:hover{color:#34d399}
.page-info{font-size:0.8rem;color:#57534e}

.content{max-width:72ch;line-height:1.75;font-size:1rem;color:#d6d3d1}
.content p,.content ul,.content ol,.content blockquote{margin-bottom:1.25rem}
.content ul,.content ol{padding-left:1.5rem}
.content li{margin-bottom:0.25rem}
.content h2{font-size:1.3rem;font-weight:600;margin-top:2rem;margin-bottom:0.75rem;color:#e7e5e4}
.content h3{font-size:1.1rem;font-weight:600;margin-top:1.5rem;margin-bottom:0.5rem;color:#e7e5e4}
.content h4{font-size:1rem;font-weight:600;margin-top:1.25rem;margin-bottom:0.4rem;color:#e7e5e4}
.content strong{color:#e7e5e4}
.content blockquote{border-left:3px solid #292524;padding-left:1rem;color:#a8a29e}

.content code{font-family:"JetBrains Mono","Fira Code","Cascadia Code",Consolas,"Liberation Mono",monospace}
.content p code,.content li code{background:#1c1917;padding:0.15rem 0.4rem;border-radius:0.25rem;border:1px solid #292524;font-size:0.85em}
.content pre{background:#1c1917 !important;border:1px solid #292524;border-radius:0.5rem;padding:1rem;overflow-x:auto;margin-bottom:1.25rem;line-height:1.5}
.content pre code{background:none !important;border:none;padding:0;border-radius:0;font-size:0.85rem;color:#f8f8f2}

.content table{width:100%;border-collapse:collapse;margin-bottom:1.25rem;font-size:0.9rem}
.content th,.content td{border:1px solid #292524;padding:0.5rem 0.75rem;text-align:left}
.content th{background:#1c1917;color:#e7e5e4;font-weight:600}
.content tr:nth-child(even){background:#141211}
.content tr:hover{background:#1c1917}

.back-link{display:inline-block;font-size:0.85rem;color:#57534e;margin-bottom:1rem}
.back-link:hover{color:#10b981}

.post-date{font-size:0.85rem;color:#57534e;margin-bottom:1.5rem}

@media(max-width:768px){
  .home-layout{flex-direction:column}
  .home-sidebar{width:100%}
  .header-inner{flex-direction:column;gap:0.25rem;text-align:center}
}
