:root {
    --node-border: #aaaaaa;

    /* brand colors */
    --state-complete-bg: #0e8f2b;
    --state-skipped-bg: #0e8f2b;
    --state-skipped-triangle: #ffd400;

    /* optional dark/light */
    --bg: #2c2c2c;
    --fg: #e0e0e0;
}

/* Page theming */
body { background: var(--bg); color: var(--fg); }

/* Typography and links */
h1,h2,p,ul,li { text-align: center; }
a { color: #66aaff; text-decoration: underline; }
a:visited { color: #aa88ff; }

/* Context menu (optional feature) */
#context-menu { background:#5D5447; border:1px solid #5D5447; box-shadow:2px 2px 5px rgba(0,0,0,.5); font-family:"Trebuchet MS", Arial, sans-serif; }
#menu-title { background:#000; color:#5D5447; padding:4px; margin-bottom:2px; }
#button-container { border:1px solid #000; display:flex; flex-direction:column; }
.menu-button { background:#5D5447; border:none; display:flex; align-items:center; padding:6px 8px; cursor:pointer; font-size:14px; width:100%; text-align:left; }
.left-text { color:#fff; text-shadow:1px 1px 2px black; white-space:pre; }
.menu-button:hover .left-text { color:#ff0; }
.right-text { color:#ff9040; text-shadow:1px 1px 2px black; }

/* Extras */
.subtitle { font-size:.85em; font-style:italic; color:#aaa; text-align:center; display:block; margin-top:-10px; margin-bottom:30px; }
/* Restore normal list behavior */
ul, li { text-align: left; }          /* stop centering list text */
li { display: list-item; }            /* ensure bullets render */

/* Changelog lists: classic indent, centered as a block */
body.changelog > ul {
  list-style: disc outside;           /* bullets outside, visible */
  padding-left: 1.25rem;              /* indent */
  margin: .5rem auto 1.25rem;         /* center the whole UL */
  max-width: 70ch;                    /* keep it near the middle */
}

/* Nested lists get a bit more indent */
body.changelog ul ul {
  margin-left: 1.25rem;
}

/* acknowledgements: centered block with bullets */
.acknowledgements {
  text-align: center;      /* center heading + paragraph text */
  margin: 2rem auto;
}

.acknowledgements ul {
  list-style-position: inside;  /* bullets stay with text */
  display: inline-block;        /* shrink-wrap list so it can be centered */
  text-align: left;             /* bullet + text left aligned within block */
  padding-left: 0;              /* override browser padding */
  margin: 1rem auto;            /* center block horizontally */
}

.acknowledgements li {
  margin: 0.5rem 0;
}