
.site-topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:1rem;
  padding:.5rem 1.1rem;background:var(--background-secondary);
  border-bottom:1px solid var(--background-modifier-border);font-family:var(--font-interface)}
.site-topbar .brand{font-weight:700;color:var(--text-accent);text-decoration:none;
  font-size:1.02rem;white-space:nowrap}
.site-topbar .crumbs{font-size:.76rem;color:var(--text-muted);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}
.site-topbar .crumbs a{color:var(--text-muted);text-decoration:none}
.site-topbar .crumbs .sep{opacity:.5;margin:0 .15em}
.search{margin-left:auto;position:relative}
.search input{font:inherit;font-size:.85rem;padding:.32rem .7rem;width:min(20rem,46vw);
  border:1px solid var(--background-modifier-border);border-radius:999px;
  background:var(--background-primary);color:var(--text-normal)}
#results{position:absolute;right:0;top:2.3rem;width:min(34rem,80vw);max-height:62vh;overflow:auto;
  background:var(--background-primary);border:1px solid var(--background-modifier-border);
  border-radius:.6rem;box-shadow:0 12px 32px rgba(0,0,0,.16);display:none}
#results.show{display:block}
#results a{display:block;padding:.5rem .8rem;text-decoration:none;color:var(--text-normal);
  border-bottom:1px solid var(--background-modifier-border)}
#results a:hover{background:var(--background-secondary)}
#results .r-title{font-weight:600;font-size:.9rem}
#results .r-crumb{font-size:.72rem;color:var(--text-muted)}
.theme-toggle{background:none;border:1px solid var(--background-modifier-border);
  color:var(--text-muted);border-radius:8px;cursor:pointer;font-size:1rem;
  width:2rem;height:2rem;line-height:1;flex:0 0 auto}
.theme-toggle:hover{color:var(--text-accent)}
.nav-toggle{display:none;background:none;border:none;color:var(--text-muted);
  cursor:pointer;font-size:1.15rem;padding:0 .2rem;flex:0 0 auto}

/* ---- left sidebar file explorer ---- */
:root{--topbar-h:45px;--sidebar-w:264px}
.site-topbar{min-height:var(--topbar-h)}
.layout{display:flex;align-items:flex-start}
.site-sidebar{flex:0 0 var(--sidebar-w);width:var(--sidebar-w);
  position:sticky;top:var(--topbar-h);height:calc(100vh - var(--topbar-h));
  overflow-y:auto;overscroll-behavior:contain;
  background-color:var(--background-secondary);
  border-right:1px solid var(--background-modifier-border);
  font-family:var(--font-interface);font-size:.82rem;padding:.5rem .35rem}
.app-container{flex:1 1 auto;min-width:0}
.nav-list{list-style:none;margin:0;padding:0}
.nav-children{margin-left:.65rem;border-left:1px solid var(--background-modifier-border);display:none}
li.open > .nav-children{display:block}
.nav-folder{display:flex;align-items:center;gap:.2rem;padding:.16rem .35rem;cursor:pointer;
  border-radius:5px;color:var(--text-normal);user-select:none;white-space:nowrap}
.nav-folder:hover{background-color:var(--background-modifier-hover)}
.nav-arrow{display:inline-block;width:.9em;font-size:.7em;color:var(--text-muted);transition:transform .12s}
.nav-name{overflow:hidden;text-overflow:ellipsis}
.nav-file{display:block;padding:.16rem .35rem .16rem 1.1rem;color:var(--text-muted);
  text-decoration:none;border-radius:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-file:hover{background-color:var(--background-modifier-hover);color:var(--text-normal)}
.nav-file.active{background-color:var(--background-modifier-hover);color:var(--text-accent);font-weight:600}
@media(max-width:900px){
  .nav-toggle{display:inline-block}
  .site-sidebar{position:fixed;z-index:38;left:0;top:var(--topbar-h);
    transform:translateX(-100%);transition:transform .2s;box-shadow:6px 0 24px rgba(0,0,0,.18)}
  body.nav-open .site-sidebar{transform:none}
}

/* ---- backlinks ("Linked Mentions") panel ---- */
.backlinks-panel{margin-top:3rem;padding-top:1.2rem;
  border-top:1px solid var(--background-modifier-border);font-family:var(--font-interface)}
.backlinks-header{font-size:1rem;font-weight:700;color:var(--text-normal);
  display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}
.bl-count{font-size:.7rem;font-weight:700;background-color:var(--background-modifier-hover);
  color:var(--text-muted);border-radius:999px;padding:.06rem .5rem}
.bl-group{margin:.4rem 0}
.bl-group-title{display:flex;align-items:center;gap:.4rem;cursor:pointer;list-style:none;
  font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;
  color:var(--text-accent);margin:.45rem 0 .3rem;user-select:none}
.bl-group-title::-webkit-details-marker{display:none}
.bl-group-title::before{content:"\25B8";font-size:.85em;color:var(--text-muted)}
details[open] > .bl-group-title::before{content:"\25BE"}
.bl-group-title:hover{filter:brightness(1.12)}
.bl-list{list-style:none;margin:0 0 .2rem;padding:0 0 0 1.05rem}
.bl-list li{padding:.13rem 0;font-size:.86rem;line-height:1.3}
.bl-list .bl-more{color:var(--text-muted);font-style:italic}

/* ---- final overrides (this sheet loads last) ---- */
/* the theme names its header font "Source Serif Pro"; Google Fonts serves it as
   "Source Serif 4" — alias the heading-font vars so headers actually load it */
body{--h1-font:"Source Serif 4",Georgia,serif;--h2-font:"Source Serif 4",Georgia,serif;
  --h3-font:"Source Serif 4",Georgia,serif;--h4-font:"Source Serif 4",Georgia,serif;
  --h5-font:"Source Serif 4",Georgia,serif;--h6-font:"Source Serif 4",Georgia,serif}
.markdown-rendered :is(h1,h2,h3,h4,h5,h6){font-family:"Source Serif 4",Georgia,serif}
/* lock the warm-paper reading surface (matches Obsidian's uniform cream canvas) */
html,body,.app-container,.markdown-reading-view,.markdown-preview-view{
  background-color:var(--background-primary)!important}
