:root {
  color-scheme: dark;
  --is-dark-theme: true;
  accent-color: #58a6ff;
  --color-primary: #58a6ff;
  --color-primary-contrast: #111111;
  --color-primary-hover: rgb(78, 156, 245);
  --color-secondary: #333333;
  
  /* Color palette */
  --color-red: #f38ba8;
  --color-orange: #fab387;
  --color-yellow: #f9e2af;
  --color-green: #a6e3a1;
  --color-blue: #89b4fa;
  --color-violet: #b4befe;
  --color-purple: #58a6ff;
  --color-pink: #f5c2e7;
  --color-grey: #777777;
  --color-black: #161616;
  --color-white: #cccccc;

  /* Target-based colors */
  --color-body: #111111;
  --color-text: #cccccc;
  --color-text-dark: #888888;
  --color-text-light: #999999;
  
  --color-input-text: #cccccc;
  --color-input-background: #222222;
  --color-input-border: #333333;
  
  --color-hover: rgba(85, 85, 85, 0.2);
  --color-active: rgba(204, 204, 204, 0.1);
  
  --color-code-bg: #1a1a1a;
  --color-shadow: rgba(17, 17, 17, 0.1);
}

/* Sharp corners — remove all border-radius */
* {
  border-radius: 0 !important;
}

body {
  background-color: var(--color-body);
  color: var(--color-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
  margin: 0;
  line-height: 1.5;
}

::selection {
  background: rgba(88, 166, 255, 0.3) !important;
}

/* Syntax Highlighting (Chroma) */
.chroma .c, .chroma .c1, .chroma .ch, .chroma .cm, .chroma .cs { color: #555555; }
.chroma .cp, .chroma .cpf, .chroma .se, .chroma .sr { color: #89b4fa; }
.chroma .k, .chroma .kd, .chroma .kr, .chroma .nt { color: #58a6ff; }
.chroma .kc, .chroma .kn, .chroma .kt, .chroma .na, .chroma .nc, .chroma .nl, .chroma .nn, .chroma .no, .chroma .vc, .chroma .vi { color: #f9e2af; }
.chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi, .chroma .mo, .chroma .nv, .chroma .nx, .chroma .bp, .chroma .nb, .chroma .go, .chroma .il, .chroma .vg { color: #fab387; }
.chroma .s, .chroma .s1, .chroma .s2, .chroma .sa, .chroma .sb, .chroma .sc, .chroma .sd, .chroma .sh, .chroma .si, .chroma .ss, .chroma .sx { color: #a6e3a1; }
.chroma .p { color: #777777; }
.chroma .o, .chroma .ow { color: #89dceb; }
.chroma .gh, .chroma .gu { color: #89dceb; }
.chroma .gd { color: #cccccc; background-color: rgba(243, 139, 168, 0.15); }
.chroma .gi { color: #cccccc; background-color: rgba(166, 227, 161, 0.15); }
.chroma .ge { font-style: italic; }
.chroma .gs { font-weight: bold; }
.chroma .gr, .chroma .gt, .chroma .ne { color: #eba0ac; }

/* Invert emojis that are hard to read on dark backgrounds */
.emoji[aria-label="check mark"],
.emoji[aria-label="currency exchange"],
.emoji[aria-label="TOP arrow"],
.emoji[aria-label="END arrow"],
.emoji[aria-label="ON! arrow"],
.emoji[aria-label="SOON arrow"],
.emoji[aria-label="heavy dollar sign"],
.emoji[aria-label=copyright],
.emoji[aria-label=registered],
.emoji[aria-label="trade mark"],
.emoji[aria-label=multiply],
.emoji[aria-label=plus],
.emoji[aria-label=minus],
.emoji[aria-label=divide],
.emoji[aria-label="curly loop"],
.emoji[aria-label="double curly loop"],
.emoji[aria-label="wavy dash"],
.emoji[aria-label="paw prints"],
.emoji[aria-label="musical note"],
.emoji[aria-label="musical notes"] {
  filter: invert(100%) hue-rotate(180deg);
}
