
/*  ######################################################################
    #----------------------  Theme-specific styles ----------------------#
    #                           Theme: default                           #
    ###################################################################### */

body.default {

  /* Syntax Highlighting */
  --keyword: black;           /* keywords */
  --comments: #cd7054;        /* comments */
  --booleans: darkred;        /* booleans */
  --built-ins: #555;          /* built-ins */
  --function-names: #374049;  /* function names */
  --types: #374049;           /* types */
  --variables: #4d5966;       /* variables */
  --numbers: navy;            /* exact nums */
  --rough-nums: blue;         /* rough nums */
  --rationals: #af1180;       /* rational numbers */
  --bad-numbers: red;         /* bad numbers */
  --unterm-strings: red;      /* unterminated strings */
  --strings: forestgreen;     /* strings */
  --repl-print: #111;         /* result of print() in the REPL */
  --repl-output: #1f1180;     /* values displayed in the REPL */

  /*  Non-color font styling. */
  --keyword-font-weight: bold;
  --bad-numbers-font-weight: bold;
  --unterm-strings-font-weight: bold;

  /* Basic editor appearance */
  --default-text: black;  /* default text across editor */
  --background: #f8f8f8;  /* default bg color of definitions/interactions */
  --cursor: #111;         /* cursor color */

  /* Regions/Selected Text */
  --selected-text: #ccc;                      /* selected text in editor */
  --matching-brackets: rgb(90, 149, 217);     /* brackets around check:...end regions, etc. */
  --matching-region-bg: hsl(220, 100%, 95%);  /* bg on regions like check:...end, etc. */
  --nonmatching-bg: #fdc;                     /* bg on span.CodeMirror-nonmatchingbracket-region */
  --nonmatching-bg-2: #fdd;                   /* bg and borders on nonmatchingbracket-region */
  --nonmatching-brackets: #e11;               /* brackets that form a nonmatching region */

  /* Check Blocks */
  --check-block-default-bg: #E1F5FE;    /* default bg on check blocks (usually invisible) */
  --check-success-bg: #c5e1a5;          /* bg on passing check blocks */
  --check-fail-bg: #FFECB3;             /* bg on failed check block */
  --check-error-bg: hsl(0, 100%, 90%);  /* bg (& box-shadow) on erroring check block */

  /* Tests within check blocks */
  --failing-test-header-bg: hsl(45, 100%, 85%);     /* bg of header within a focused failing test (contains "Test n: Failed") */
  --failing-test-bg: hsl(45, 100%, 94%);            /* bg of failing test NOT in focus */
  --passing-test-bg: hsl(90,  50%, 91%);            /* bg of passing test */
  --highlights-active-border: hsl(204, 100%, 74%);  /* border around errors/tests with highlights active */
  --highlights-active-bg: hsla(0,0%,100%,.9);       /* bg on check block errors/tests with highlights active */
  --empty-check-err-bg: rgba(255,255,255,0.4);      /* bg behind "Processing Result..." in check-block-error:empty */

  /* Errors */
  --err-dotted-border: #FF3131;               /* dotted border around compile/parse errors */
  --err-bg: #FFF2F2;                          /* bg on compile/parse errors */
  --err-link: #469ad4;                        /* links within compile/parse errors */
  --trace-err-bg: #fff6f2;                    /* bg on div.trace.error */
  --err-hover-shadow: hsl(204, 100%, 80%);    /* box-shadow on hover on errors */
  --err-focused-shadow: black;                /* box-shadow on errors in focus */
  --active-highlight-underline: hsla(0, 0%, 0%,.5);   /* border below .highlight and .hinted-highlight */
  --inactive-highlight-underline: hsla(0, 0%, 0%,.5); /* border below inactive highlights (darker) */
  --active-highlight-text: #000;              /* text color in a.highlight */
  --inactive-highlight-text: #000;            /* text color in a.highlight within non-highlighted blocks */

  /* Testing Summaries */
  --testing-summary: white;                       /* text color in testing summary */
  --testing-summary-bg: hsl(212, 62%, 50%);       /* bg on testing summary */
  --summary-fail-bg: hsl(45, 100%, 85%);          /* bg of summary of failed tests */
  --summary-pass-bg: hsl(88, 51%, 76%);           /* bg of summary of passed tests */
  --summary-error-bg: hsla(0,100%,73%,1);         /* bg of announcement in summary that tests errored */
  --summary-err: white;                           /* announcement text that tests errored in testing summary */
  --summary-err-left-border: hsl(0, 100%, 100%);  /* vertical border left of error announcement in summary */

  /* Tables */
  --table-border: black;          /* border on tables */
  --table-bg: #eee;               /* bg on tables */
  --table-even-rows-bg: #f2f2f2;  /* bg on even rows in table */
  --th-bg: #ddd;                  /* bg on table headers */
  --th-font-weight: normal;         /* font weight on table headers */
  --table-col-dividers: white;    /* righthand borders separating generic table columns */
  --pyret-table-col-dividers: white;  /* vertical borders between Pyret table columns */
  --pyret-table-row-dividers: white;  /* horizontal borders between Pyret table row */


  /* Spy Blocks */
  --spy-borders: #9DC5ED;                       /* borders on spy block */
  --spy-bg: #CBDFF2;                            /* bg on spy block */
  --spy-odd-rows-bg: rgba(255, 255, 255, 0.3);  /* bg on odd table rows of spy block */
  --spy-even-rows-bg: rgba(255, 255, 255, 0.2); /* bg on even table rows of spy block */

  /* Spotlights */
  --spotlighted-text-bg: white;                       /* bg on spotlighted text (should match default bg) */
  --non-spotlight-bg: rgb(150,150,150);               /* bg on non-spotlighted elements during spotlight */
  --surrounding-check-spotlight-bg: hsl(45, 9%, 66%); /* bg on check block containing spotlighted test */

  /* Handle that adjusts interactions window size */
  --repl-handle-gradient-darker: #BFBFBF;   /* darker color in REPL handle gradient */
  --repl-handle-gradient-lighter: #D9D9D9;  /* lighter color in REPL handle gradient */
  --repl-handle-border: #A6A6A6;            /* border on REPL handle */

  /* CodeMirror snippets */
  --snippet-border: hsl(0, 0%, 50%);                /* dashed border around CodeMirror snippets */
  --snippet-header-bg: hsl(0, 0%, 97%);             /* CodeMirror snippet header bg color */
  --snippet-header-border: hsl(0, 0%, 60%);         /* border between snippet header & code */
  --check-block-snippet-bg: rgba(255,255,255,0.5);  /* bg of code snippets within check block tests */

  /* Misc. */
  --img-thumbnail-shadow: rgba(128,0,0,0.75);           /* box-shadow on hover over image thumbnail in REPL */
  --cm-in-repl-bg: hsl(0,0%,95%);                       /* bg on .repl .CodeMirror */
  --failed-test-gutter-marker: hsla(45, 90%, 50%, 0.5); /* CodeMirror gutter marker bg for failed test */

  /* CodeMirror gutters/line numbers/ruler */
  --gutter-bg: var(--background);     /* background of line number gutters */
  --gutter-border: #ddd;            /* border between gutter & definitions window */
  --line-numbers: #999;             /* line numbers in left gutter */
  --line-ruler: rgb(49, 123, 207);  /* 100-char line ruler */

  /* REPL */
  --repl-text-output: var(--default-text);  /* text output in the REPL */
  --repl-prompts: var(--default-text);      /* >>> prompt in the REPL */
  --loader-bg: rgba(248, 248, 248, 0.8);  /* REPL background during page load (should be semi-transparent) */
  --loader-text: var(--default-text);       /* text containing loading messages during page load */

  /* Scrollbars */
  --scrollbar-theme: light;

  /* More granular control of check blocks */
  --check-success-text: var(--default-text);  /* text within successful check block */
  --check-fail-text: var(--default-text);    /* text within failing check block */
  --check-fail-header-font-weight: normal;   /* font weight of header text in failing check */
  --check-error-text: var(--default-text);   /* text within erroring check block */
  --check-error-header-font-weight: normal;   /* font weight of header text in erroring check */

  --check-fail-border: none;  /* border around failing check blocks */
  --check-error-border: none; /* border around erroring check blocks */

  /* Testing summaries */
  --summary-pass-text: var(--default-text);  /* text saying "N TESTS FAILED" */
  --summary-fail-text: var(--default-text);  /* text saying "N TESTS PASSED" */

  /* darker syntax highlighting colors for text within error highlights */
  --dark-default-text:    var(--default-text);
  --dark-comments:        var(--comments); 
  --dark-booleans:        var(--booleans);
  --dark-built-ins:       var(--built-ins);
  --dark-function-names:  var(--function-names);
  --dark-variables:       var(--variables);
  --dark-keyword:         var(--keyword);
  --dark-numbers:         var(--numbers);
  --dark-rough-nums:      var(--rough-nums);
  --dark-bad-numbers:     var(--bad-numbers);
  --dark-strings:         var(--strings);
  --dark-unterm-strings:  var(--unterm-strings);
  --dark-types:           var(--types);

}