/* Time for UBI — node homepage v3.
   Top-bar navigation, full-width centered main. System fonts only. */

:root{
  --bg:#16161a;
  --bg-elev:#1d1d23;
  --fg:#e8e6df;
  --muted:#a8a69e;
  --rule:#2c2c33;
  --rule-strong:#3a3a42;
  --accent:#d6c7a8;
  --link:#d6c7a8;
  --link-hover:#ffffff;
  --code-bg:#22222a;
  --card-bg:#1d1d23;
  --badge-bg:#22222a;
  --badge-fg:#d6c7a8;
}
[data-theme="light"]{
  --bg:#f6f1e3;
  --bg-elev:#efe8d3;
  --fg:#1d1d1b;
  --muted:#5a5a55;
  --rule:#d8d0bb;
  --rule-strong:#bdb39a;
  --accent:#5a4632;
  --link:#5a4632;
  --link-hover:#1d1d1b;
  --code-bg:#ece5cf;
  --card-bg:#efe8d3;
  --badge-bg:#e6dcc0;
  --badge-fg:#5a4632;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--fg);
  font-family: Georgia, "Iowan Old Style", "Apple Garamond", "Palatino Linotype", "Times New Roman", serif;
  line-height:1.7;
  font-size:18px;
  -webkit-text-size-adjust:100%;
  min-height:100vh;
}

/* TOP BAR */
.topbar{
  position:sticky;top:0;z-index:50;background:var(--bg);
  border-bottom:1px solid var(--rule);
  display:flex;align-items:center;gap:1rem;
  padding:0.55rem 1.2rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}
.topbar-left{display:flex;align-items:center;gap:0.7rem;flex:0 0 auto}
.topbar-flag{display:inline-flex;align-items:center;gap:0.55rem;text-decoration:none;color:var(--fg);line-height:0}
.topbar-flag img{height:24px;width:auto;border-radius:2px;opacity:0.95;display:block}
.topbar-flag .brand{
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;
  font-weight:700;color:var(--muted);line-height:1;
}
.topbar-flag:hover .brand{color:var(--fg)}
.topbar-title{
  flex:1 1 auto;text-align:center;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:0.82rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--muted);font-weight:700;
}
.topbar-right{display:flex;align-items:center;gap:0.9rem;flex:0 0 auto}
.topbar-eco{display:flex;align-items:center;gap:0.9rem;font-size:0.82rem}
.topbar-eco a{color:var(--link);text-decoration:none;border-bottom:1px solid transparent}
.topbar-eco a:hover{color:var(--link-hover);border-bottom-color:var(--link-hover)}
.theme-toggle{
  background:transparent;border:1px solid var(--rule-strong);color:var(--fg);
  font:inherit;font-size:1.05rem;width:2.1rem;height:2.1rem;padding:0;
  border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;
}
.theme-toggle:hover{border-color:var(--accent);color:var(--accent)}
.theme-toggle .glyph{font-size:1.1rem;line-height:1}
.menu-toggle{
  display:none;background:transparent;border:1px solid var(--rule-strong);
  color:var(--fg);font:inherit;font-size:0.85rem;padding:0.3rem 0.6rem;
  border-radius:4px;cursor:pointer;line-height:1;
}
.mobile-drawer{
  display:none;position:fixed;top:3rem;left:0;right:0;
  background:var(--bg);border-bottom:1px solid var(--rule);
  padding:0.8rem 1rem;z-index:45;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.mobile-drawer.open{display:block}
.mobile-drawer a{
  display:block;padding:0.55rem 0.3rem;color:var(--link);
  text-decoration:none;border-bottom:1px solid var(--rule);font-size:0.95rem;
}
.mobile-drawer a:last-child{border-bottom:none}

/* MAIN — centered single column */
.wrap{max-width:780px;padding:2.5rem 1.6rem 4rem;margin:0 auto}

/* Hero */
.hero{margin:0 0 2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--rule)}
.hero .eyebrow{
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--muted);font-weight:700;margin-bottom:0.9rem;
}
h1{
  font-family: Georgia, serif;font-size:2.25rem;line-height:1.18;
  margin:0 0 1.1rem;letter-spacing:-0.01em;
}
.hero p{font-size:1.08rem;margin:0 0 1rem}
.hero p:last-child{margin-bottom:0}

/* Node badge */
.node-badge{
  display:block;margin:0 0 2.5rem;padding:1.1rem 1.3rem;
  background:var(--badge-bg);border-left:3px solid var(--accent);
  border-radius:3px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size:0.95rem;line-height:1.5;color:var(--fg);
}
.node-badge .label{
  display:block;font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--muted);font-weight:700;margin-bottom:0.3rem;
}
.node-badge .domain{
  font-family: "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  font-size:1.05rem;color:var(--badge-fg);font-weight:700;
}
.node-badge .meta{display:block;margin-top:0.4rem;color:var(--muted);font-size:0.9rem}

/* Section headings */
h2{font-family: Georgia, serif;font-size:1.55rem;margin:2.8rem 0 1rem;line-height:1.3}
h3{font-family: Georgia, serif;font-size:1.18rem;margin:1.8rem 0 0.5rem;line-height:1.35}
p{margin:0 0 1.05rem}
em{font-style:italic}
strong{font-weight:700;color:var(--fg)}
a{color:var(--link)}
a:hover{color:var(--link-hover)}

/* Reading paths */
.paths{
  display:grid;grid-template-columns:1fr;gap:1rem;
  margin:1.3rem 0 1.5rem;padding:0;list-style:none;
}
.paths li{
  margin:0;padding:1.1rem 1.3rem;background:var(--card-bg);
  border-radius:5px;border:1px solid var(--rule);
}
.paths .path-title{
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  font-size:0.78rem;letter-spacing:0.14em;text-transform:uppercase;
  color:var(--muted);font-weight:700;margin:0 0 0.4rem;display:block;
}
.paths a.path-link{
  font-family: Georgia, serif;font-size:1.18rem;font-weight:700;
  text-decoration:none;display:inline-block;margin-bottom:0.4rem;
}
.paths a.path-link:hover{text-decoration:underline}
.paths .path-blurb{margin:0;color:var(--muted);font-size:0.95rem;line-height:1.55}

/* Host-your-own block */
.host-block{
  margin-top:1.2rem;padding:1.5rem 1.5rem 1.3rem;
  background:var(--card-bg);border-radius:5px;border:1px solid var(--rule);
}
.host-block h3{margin-top:0}
.host-block ul{margin:0.7rem 0 0;padding-left:1.4rem}
.host-block li{margin:0.55rem 0;line-height:1.55}
.host-block code{
  font-family: "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  font-size:0.92em;background:var(--code-bg);
  padding:0.1em 0.35em;border-radius:3px;
}

/* Footer */
footer{
  margin-top:3.5rem;padding-top:1.2rem;border-top:1px solid var(--rule);
  color:var(--muted);font-size:0.82rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  line-height:1.6;
}
footer p{margin:0 0 0.4rem}
footer p:last-child{margin-bottom:0}
footer a{color:var(--muted)}
footer a:hover{color:var(--link-hover)}

/* Mobile */
@media (max-width:780px){
  .topbar{padding:0.45rem 0.8rem;gap:0.5rem}
  .topbar-title{display:none}
  .topbar-eco{display:none}
  .menu-toggle{display:inline-block}
  body{font-size:17px}
  .wrap{padding:1.6rem 1.1rem 3rem}
  h1{font-size:1.75rem}
  .hero p{font-size:1.02rem}
  h2{font-size:1.3rem}
  .node-badge .domain{font-size:0.98rem}
  .paths li{padding:1rem 1.1rem}
  .host-block{padding:1.2rem 1.1rem 1rem}
}
