/*
 * Syntax theme: dark
 * Palette: bg=#0F0F10, surface=#191920, text=#E4E3E8, accent=#9A7EC4
 */

.z-code {
  color: #E4E3E8;
  background-color: #191920;
}

.z-hl {
  background-color: #9A7EC420;
}

.giallo-ln {
  color: #55545A;
}

/* Base */
.z-text        { color: #E4E3E8; }
.z-source      { color: #E4E3E8; }

/* Comments */
.z-comment                             { color: #78777C; }
.z-punctuation.z-definition.z-comment  { color: #78777C; }

/* Keywords, storage, operators */
.z-keyword                          { color: #B09AD8; }
.z-storage                          { color: #B09AD8; }
.z-storage.z-type                   { color: #B09AD8; }
.z-storage.z-modifier               { color: #B09AD8; }
.z-keyword.z-operator               { color: #78777C; }
.z-keyword.z-control                { color: #B09AD8; }
.z-punctuation                      { color: #78777C; }

/* Strings */
.z-string                           { color: #E4E3E8; }
.z-string.z-regexp                  { color: #9A7EC4; }

/* Constants & numbers */
.z-constant                         { color: #9A7EC4; }
.z-constant.z-numeric               { color: #9A7EC4; }
.z-constant.z-language              { color: #9A7EC4; }
.z-constant.z-character.z-escape    { color: #B09AD8; }

/* Variables */
.z-variable                         { color: #E4E3E8; }
.z-variable.z-parameter             { color: #E4E3E8; }
.z-variable.z-language              { color: #B09AD8; }

/* Functions */
.z-entity.z-name.z-function         { color: #E4E3E8; }
.z-support.z-function               { color: #E4E3E8; }
.z-variable.z-function              { color: #E4E3E8; }
.z-meta.z-function-call             { color: #E4E3E8; }

/* Types, classes */
.z-entity.z-name.z-type             { color: #9A7EC4; }
.z-entity.z-name.z-class            { color: #9A7EC4; }
.z-entity.z-name.z-struct           { color: #9A7EC4; }
.z-entity.z-name.z-enum             { color: #9A7EC4; }
.z-entity.z-name.z-trait            { color: #9A7EC4; }
.z-entity.z-name.z-impl             { color: #9A7EC4; }
.z-support.z-type                   { color: #9A7EC4; }
.z-support.z-class                  { color: #9A7EC4; }

/* Tags (HTML/JSX) */
.z-entity.z-name.z-tag              { color: #E4E3E8; }
.z-entity.z-other.z-attribute-name  { color: #78777C; }

/* Markup */
.z-markup.z-bold                    { color: #E4E3E8; font-weight: bold; }
.z-markup.z-italic                  { color: #E4E3E8; }
.z-markup.z-strikethrough           { color: #78777C; text-decoration: line-through; }
.z-markup.z-link                    { color: #B09AD8; }
.z-markup.z-quote                   { color: #78777C; }
.z-markup.z-raw                     { color: #9A7EC4; }
.z-markup.z-inserted.z-diff         { color: #9A7EC4; }
.z-markup.z-deleted.z-diff          { color: #B09AD8; }
.z-markup.z-changed.z-diff          { color: #9A7EC4; }
.z-markup.z-heading                 { color: #E4E3E8; font-weight: bold; }
.z-markup.z-inline.z-raw            { color: #9A7EC4; }
.z-markup.z-underline.z-link        { color: #B09AD8; }

/* Punctuation refinements */
.z-punctuation.z-accessor                { color: #9A7EC4; }
.z-punctuation.z-definition.z-tag        { color: #78777C; }
.z-punctuation.z-section.z-interpolation { color: #B09AD8; }

/* Meta / decorators */
.z-meta.z-decorator     { color: #9A7EC4; }
.z-punctuation.z-decorator { color: #9A7EC4; }

/* Diff */
.z-meta.z-diff.z-header { color: #B09AD8; }
