:root{
  --bg:#fbf7ef;
  --paper:#ffffff;
  --ink:#1f2937;
  --muted:#6b7280;
  --wine:#9f1239;
  --olive:#3f6212;
  --rail:#e5e7eb;
}

body.theme-a0058{background:var(--bg);color:var(--ink)}

#logo img{height:44px;width:auto;display:block}

.site-header{background:linear-gradient(180deg,#fff 0%, rgba(255,255,255,.6) 100%);border-bottom:1px solid rgba(31,41,55,.08)}
.title-block a{color:var(--ink);text-decoration:none}
.title-block .subtitle{color:var(--muted)}

.header-ad{margin-top:.75rem}

.highlights{margin-top:1rem}
.highlight-card{display:block;background:var(--paper);border:1px solid rgba(31,41,55,.10);border-radius:16px;padding:14px;text-decoration:none;color:var(--ink)}
.highlight-title{font-weight:700}
.highlight-meta{color:var(--muted);font-size:.85rem;margin-top:.25rem}

.timeline-shell{position:relative;padding:1.25rem 0 0}
.timeline-rail{position:absolute;left:18px;top:0;bottom:0;width:2px;background:linear-gradient(var(--wine),var(--olive));opacity:.35}
.timeline-paper{position:relative;margin-left:52px;background:var(--paper);border:1px solid rgba(31,41,55,.10);border-radius:20px;padding:1.25rem;box-shadow:0 12px 28px rgba(31,41,55,.06)}
.timeline-paper :is(h2,h3){position:relative}
.timeline-paper :is(h2,h3)::before{content:"";position:absolute;left:-44px;top:.55em;width:10px;height:10px;border-radius:999px;background:var(--wine);box-shadow:0 0 0 5px rgba(159,18,57,.12)}
.timeline-paper h3::before{background:var(--olive);box-shadow:0 0 0 5px rgba(63,98,18,.12)}

.sponsor,.footer-ad{margin-top:1rem}

.tabbar{position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.88);backdrop-filter: blur(10px);border-top:1px solid rgba(31,41,55,.10);z-index:80}
.tabbar-inner{max-width:980px;margin:0 auto;display:flex;gap:.25rem;overflow:auto;padding:.5rem .75rem}
.tab{flex:1 0 auto;min-width:120px;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:999px;text-decoration:none;color:var(--ink)}
.tab:hover{background:rgba(31,41,55,.04)}
.tab-dot{width:10px;height:10px;border-radius:999px;background:rgba(31,41,55,.25)}
.tab.is-active{background:rgba(159,18,57,.10)}
.tab.is-active .tab-dot{background:var(--wine)}
.tab-label{white-space:nowrap;font-size:.9rem}

.has-tabbar #footer{padding-bottom:4.75rem}

#footer{padding:2rem 0;border-top:1px solid rgba(31,41,55,.10)}
#footer .container{max-width:980px;margin:0 auto;padding:0 1rem}
#footer .social a{margin-right:.5rem;text-decoration:none}
