/* Tokyo Night palette */
:root {
  --tn-bg:      #1a1b26;
  --tn-surface: #24283b;
  --tn-border:  #2e3250;
  --tn-text:    #c0caf5;
  --tn-dim:     #a9b1d6;
  --tn-accent:  #7dcfff;
  --tn-green:   #9ece6a;
  --tn-magenta: #bb9af7;
  --tn-code-bg: #16161e;
}

html, body {
  background-color: var(--tn-bg);
  color: var(--tn-text);
  font-family: 'Source Code Pro', 'Courier New', monospace;
}

/* Links */
a { color: var(--tn-accent); }
a:hover { color: var(--tn-magenta); text-decoration: underline; }

/* Headings */
h1, h2, h3, h4 { color: var(--tn-text); }

/* Bulma overrides for dark theme */
.section { background-color: transparent; }
.hero { background-color: var(--tn-bg); }

.box {
  background-color: var(--tn-surface);
  border: 1px solid var(--tn-border);
  color: var(--tn-text);
}

.tag.is-dark { background-color: var(--tn-surface); color: var(--tn-dim); }

/* Code blocks */
pre {
  background-color: var(--tn-code-bg) !important;
  border: 1px solid var(--tn-border);
  border-radius: 4px;
  overflow-x: auto;
}

pre code {
  color: var(--tn-green);
  background: none;
  font-family: 'Source Code Pro', 'Courier New', monospace;
  font-size: 0.875rem;
  line-height: 1.65;
}

code {
  background-color: var(--tn-code-bg);
  color: var(--tn-green);
  font-family: 'Source Code Pro', 'Courier New', monospace;
}

/* Comment style in code blocks */
.code-comment { color: var(--tn-dim); }

/* Typography */
.lp-title { color: var(--tn-accent); }
.lp-subtitle { color: var(--tn-dim); }
.lp-card-title { color: var(--tn-accent); }
.lp-meta { color: var(--tn-dim); font-size: 0.9rem; }
.lp-button-ghost { color: var(--tn-dim); }

/* Footer */
.lp-footer { background-color: var(--tn-bg); border-top: 1px solid var(--tn-border); }
.lp-footer-text { color: var(--tn-dim); font-size: 0.875rem; }

/* Section dividers */
.lp-divider {
  border: none;
  border-top: 1px solid var(--tn-border);
  margin: 0;
}

