:root {
  /*
	 * Various different 'brand' colours.
	 *
	 * Dandelion:      #fdc82f
	 * WebCMS3
	 *   blue:         #45a6f4
	 *   l. blue:      #9ccff9
	 *   d. orange:    #ff7144
	 *   l. d. orange: #ffb39b
	 *   d. purple:    #825dc4
	 *   l. d. purple: #beace0
	 *   green:        #6abd6e
	 *   indigo:       #6170c2
	 *   l. indigo:    #adb4e0
	 *   orange:       #ffaa2c
	 *   pink:         #ed447d
	 *   l. pink:      #f59dbb
	 *   purple:       #af50bf
	 *   l. purple:    #d6a6de
	 *   red:          #e05757
	 *   l. red:       #ffacb4
	 *   teal:         #42a097
	 */
  --main-color: #2c5364; /* d2691e; */
  --link-color: #4b2e00;
  --text-color-against-main-color: black;
  --background-color: white;
  --invert-filter: invert(92%) hue-rotate(180deg);
}

html {
  filter: var(--invert-filter);
}

/* a slightly lightened --main-color, manually made */
body { 
    background-color: #fdfaf4;
} 
a, a:hover {
    color: var(--link-color);
}

/*
 * Fix content widths --- this ensures the text column is a reasonable
 * width to read, and is centered on the viewport.
 */
main[aria-label="Content"] {
  max-width: 56rem;
  margin: 1rem auto;
}

/*
 * Adjust the display of preformatted text (used throughout!)
 */
pre {
  border: thin solid #eeeeee;
  margin: 0.25rem 1rem;
  padding: 0.25rem 0.5rem;
  white-space: pre-wrap;
}
main[aria-label="Content"] {
  max-width: 56rem;
  margin: 1rem auto;
}
pre {
  border: thin solid #eeeeee;
  margin: 0.25rem 1rem;
  padding: 0.25rem 0.5rem;
  white-space: pre-wrap;
}

code {
  margin-right: 0.3em;
  margin-left: 0.3em;
  tab-size: 2;
  border-radius: 3px;
  padding: 0.2em 0.4em;
  font-size: 85%;
  background: rgba(135, 131, 120, 0.15);
  color: #eb5757;
}

/* additions for 19T2 assignment 1 */

pre.cspaint-nice {
  line-height: 1;
  font-family: monospace;
  font-size: 1.2em;
}

.inverted-color {
  background-color: #2d2d2d;
  color: white;
}

.inverted-color.command_line {
  background-color: #2d2d2d;
  color: white;
  padding: 0.5em;
  margin-right: 0em;
}

.card-body.thinner {
  padding: 0.7rem;
}

span.output {
  margin-top: 0.2em;
  /*margin-left: 0.5em;*/
  display: inline-block;
}

kbd.inverted-color.shell {
  background-color: inherit;
  color: inherit;
  font-family: monospace;
  font-weight: bold;
  display: inline-block;
  margin-bottom: 0.2em;
  line-height: 1.25em;
}

kbd.inverted-color.shell:before {
  content: "$ ";
  background-color: inherit;
  color: inherit;
  /* padding:3px 1px; */
  /* font-weight:lighter; */
  font-family: monospace;
}

th.borderless td.borderless .borderless {
  border-top: 0px;
}

.nav-list > .active {
  color: var(--text-color-against-main-color);
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
  background-color: #0088cc;
}

a.nav-link.visible-tab {
  border-color: #eeeeee #eeeeee #fff;
  border: 0.5px 0.5px 0.5px 0px dotted;
  colour: var(--text-color-against-main-color);
}

a.nav-link.visible-tab.active {
  border-color: #cecece #cecece #fff;
  border: 0.5px 0.5px 0.5px 0.5px solid;
  colour: var(--text-color-against-main-color);
}

/* end of additions for 19T2 assignment 1 */

/* Style command entry into various tools. */
pre[is="tty"] {
}
pre[is="tty"] > kbd {
  font-weight: bold;
  font-size: 100%;
  padding: 0;
  background: none;
  border: none;
  color: black;
}
pre[is="tty"] > kbd:before {
  font-weight: normal;
  color: var(--gray);
}
pre[is="tty"] > kbd[data-prompt]:before {
  content: attr(data-prompt) " ";
}
pre[is="tty"] > kbd[is="sh"]:before {
  content: "$ ";
}
pre[is="tty"] > kbd[is="sh_comment"]:before {
  content: "# ";
}
pre[is="tty"] > kbd[is="sh_comment"] {
  color: grey;
}
pre[is="tty"] > kbd[is="gdb"]:before {
  content: "(gdb) ";
}
/* COMP1521 says hi! */
pre[is="tty"] > kbd[is="spim"]:before {
  content: "(spim) ";
}
/* COMP2041 says hi! */
pre[is="tty"] > kbd[is="py"]:before {
  content: ">>> ";
}
pre[is="tty"] > kbd[is="node"]:before {
  content: " > ";
}
/* COMP3311 and COMP9315 say hi! */
pre[is="tty"] > kbd[is="psql"]:before {
  content: attr(db) "=# ";
}
pre[is="tty"] > kbd[is="psql,"]:before {
  content: attr(db) "-# ";
}

/* Fix indentation. */
pre {
  tab-size: 4;
  -moz-tab-size: 4;
}
pre.mips {
  tab-size: 8;
  -moz-tab-size: 8;
}

/* Tutorial questions. */
body > ol > li {
  margin-top: 1rem;
}

p {
  margin-bottom: 0.5rem;
}
* + p {
  margin-top: 0.5rem;
}

/* indicate ctrl-d typed */
.eof:before {
  content: "Ctrl-D";
  font-weight: lighter;
  font-style: italic;
  font-family: "Courier New", Courier, monospace;
  border: thin solid;
  border-radius: 5px;
  padding: 1px 4px;
}

.eof:after {
  position: relative;
  content: "Ctrl and D keys pressed";
  border: 2px solid black;
  background-color: yellow;
  opacity: 0;
  height: 5em;
  width: 10px;
  border-radius: 5px;
  transition: opacity 0.5s;
}

.eof:hover::after {
  opacity: 1;
}

/*
 * Lay out tutorial answers.
 */
.answer {
  border: thin solid var(--blue);
  padding: 1rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

.inline_answer {
  padding: 0.1rem !important;
}

.answer > h4 {
  background-color: #eef;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  border-bottom: 1px solid var(--blue);
  display: block;
  padding: 0.5rem 1rem;
  margin: -1rem -1rem 0;
  font-size: 1rem;
  font-weight: bold;
}

.tutor_guide {
  border: thin solid var(--orange);
  padding: 1rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

atci-tutors-only {
  border: thin solid var(--orange);
  padding: 1rem;
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

.tutor_guide > h4 {
  background-color: #eef;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
  border-bottom: 1px solid var(--orange);
  display: block;
  padding: 0.5rem 1rem;
  margin: -1rem -1rem 0;
  font-size: 1rem;
  font-weight: bold;
}

.hidden {
  display: none;
}

/*
 * Hints and asides.
 */
aside {
  border: 0.01rem solid var(--light); /* .border */
  border-left-width: 0.25rem;
  border-radius: 0.25rem; /* .rounded */
  margin: 1.5rem; /* .m-4 */
  padding: 0.5rem; /* .p-2 */
}

aside:before {
  text-transform: uppercase;
  font-weight: bold;
  font-size: 90%;
  display: block;
  color: var(--white);
  max-width: 8rem;
  padding: 0.5rem;
  margin-top: -0.5rem; /* undo .p-2 */
  margin-left: -0.5rem; /* undo .p-2 */
  margin-bottom: 0.5rem;
  border-bottom-right-radius: 0.25rem; /* .routded */
}

aside.hint {
  border-color: var(--green);
}
aside.hint:before {
  background-color: var(--green);
  content: "hint: ";
}

aside.note {
  border-color: var(--cyan);
}
aside.note:before {
  background-color: var(--cyan);
  content: "note: ";
}

aside.rationale {
  border-color: var(--purple);
}
aside.rationale:before {
  background-color: var(--purple);
  content: "rationale: ";
}

aside.warning {
  border-color: var(--orange);
}
aside.warning:before {
  background-color: var(--orange);
  content: "warning: ";
}

aside.danger {
  border-color: var(--red);
}
aside.danger:before {
  background-color: var(--red);
  content: "danger: ";
}

aside.danger {
  border-color: var(--red);
}
aside.danger:before {
  background-color: var(--red);
  content: "danger: ";
}

body > nav.navbar {
  background-color: var(--main-color);
  colour: var(--text-color-against-main-color);
}

/*
 * Sectioning for the home page.
 * Replaces ad-hoc .thick_hr with a bordered section.
 */
section.homepage-section {
  /* inherits .thick_hr */
  margin-top: 1.5rem;
  padding-top: 0.5rem;
}

/*
 * Tidy up the login form.
 */
.login-form {
  margin: 1rem auto;
}

.login-form .form-group {
  margin-top: 0;
  margin-bottom: 0;
}

.login-form button {
  margin-top: 1rem;
}

.login-form div.form-group input[type="text"] {
  border-radius: 0.3rem 0.3rem 0 0;
}

.login-form div.form-group input[type="password"] {
  border-radius: 0 0 0.3rem 0.3rem;
}

/*
 * Exercise layout on the lab page.
 */
.exercise {
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #eee;
}

.exercise > header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid var(--green);
  border-radius: 0.25rem;
  border-left-width: 0.5rem; /* left-tab effect */
}
.exercise > header > h3 {
  margin: 0;
}
.exercise.with-pair > header {
  border-color: var(--green);
}
.exercise.with-self > header {
  border-color: var(--red);
}
.exercise.with-test > header {
  border-color: var(--blue);
}

/*
 * Adjust the layout of highlighted program blocks.
 */
.highlight {
  border: 1px solid #f0f0f0;
  border-radius: 0.25rem;
  margin: 0.25rem 0;
  padding: 0.25rem 0.5rem;
}
.highlight > pre {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
 * Code highlighting styles, from Pygments:
 */
.highlight .hll {
  background-color: #ffffcc;
}
.highlight {
  background: #f8f8f8;
}
.highlight .c {
  color: #408080;
  font-style: italic;
} /* Comment */
.highlight .err {
  border: 1px solid #ff0000;
} /* Error */
.highlight .k {
  color: #008000;
  font-weight: bold;
} /* Keyword */
.highlight .o {
  color: #666666;
} /* Operator */
.highlight .ch {
  color: #408080;
  font-style: italic;
} /* Comment.Hashbang */
.highlight .cm {
  color: #408080;
  font-style: italic;
} /* Comment.Multiline */
.highlight .cp {
  color: #bc7a00;
} /* Comment.Preproc */
.highlight .cpf {
  color: #408080;
  font-style: italic;
} /* Comment.PreprocFile */
.highlight .c1 {
  color: #408080;
  font-style: italic;
} /* Comment.Single */
.highlight .cs {
  color: #408080;
  font-style: italic;
} /* Comment.Special */
.highlight .gd {
  color: #a00000;
} /* Generic.Deleted */
.highlight .ge {
  font-style: italic;
} /* Generic.Emph */
.highlight .gr {
  color: #ff0000;
} /* Generic.Error */
.highlight .gh {
  color: #000080;
  font-weight: bold;
} /* Generic.Heading */
.highlight .gi {
  color: #00a000;
} /* Generic.Inserted */
.highlight .go {
  color: #888888;
} /* Generic.Output */
.highlight .gp {
  color: #000080;
  font-weight: bold;
} /* Generic.Prompt */
.highlight .gs {
  font-weight: bold;
} /* Generic.Strong */
.highlight .gu {
  color: #800080;
  font-weight: bold;
} /* Generic.Subheading */
.highlight .gt {
  color: #0044dd;
} /* Generic.Traceback */
.highlight .kc {
  color: #008000;
  font-weight: bold;
} /* Keyword.Constant */
.highlight .kd {
  color: #008000;
  font-weight: bold;
} /* Keyword.Declaration */
.highlight .kn {
  color: #008000;
  font-weight: bold;
} /* Keyword.Namespace */
.highlight .kp {
  color: #008000;
} /* Keyword.Pseudo */
.highlight .kr {
  color: #008000;
  font-weight: bold;
} /* Keyword.Reserved */
.highlight .kt {
  color: #b00040;
} /* Keyword.Type */
.highlight .m {
  color: #666666;
} /* Literal.Number */
.highlight .s {
  color: #ba2121;
} /* Literal.String */
.highlight .na {
  color: #7d9029;
} /* Name.Attribute */
.highlight .nb {
  color: #008000;
} /* Name.Builtin */
.highlight .nc {
  color: #0000ff;
  font-weight: bold;
} /* Name.Class */
.highlight .no {
  color: #880000;
} /* Name.Constant */
.highlight .nd {
  color: #aa22ff;
} /* Name.Decorator */
.highlight .ni {
  color: #999999;
  font-weight: bold;
} /* Name.Entity */
.highlight .ne {
  color: #d2413a;
  font-weight: bold;
} /* Name.Exception */
.highlight .nf {
  color: #0000ff;
} /* Name.Function */
.highlight .nl {
  color: #a0a000;
} /* Name.Label */
.highlight .nn {
  color: #0000ff;
  font-weight: bold;
} /* Name.Namespace */
.highlight .nt {
  color: #008000;
  font-weight: bold;
} /* Name.Tag */
.highlight .nv {
  color: #19177c;
} /* Name.Variable */
.highlight .ow {
  color: #aa22ff;
  font-weight: bold;
} /* Operator.Word */
.highlight .w {
  color: #bbbbbb;
} /* Text.Whitespace */
.highlight .mb {
  color: #666666;
} /* Literal.Number.Bin */
.highlight .mf {
  color: #666666;
} /* Literal.Number.Float */
.highlight .mh {
  color: #666666;
} /* Literal.Number.Hex */
.highlight .mi {
  color: #666666;
} /* Literal.Number.Integer */
.highlight .mo {
  color: #666666;
} /* Literal.Number.Oct */
.highlight .sa {
  color: #ba2121;
} /* Literal.String.Affix */
.highlight .sb {
  color: #ba2121;
} /* Literal.String.Backtick */
.highlight .sc {
  color: #ba2121;
} /* Literal.String.Char */
.highlight .dl {
  color: #ba2121;
} /* Literal.String.Delimiter */
.highlight .sd {
  color: #ba2121;
  font-style: italic;
} /* Literal.String.Doc */
.highlight .s2 {
  color: #ba2121;
} /* Literal.String.Double */
.highlight .se {
  color: #bb6622;
  font-weight: bold;
} /* Literal.String.Escape */
.highlight .sh {
  color: #ba2121;
} /* Literal.String.Heredoc */
.highlight .si {
  color: #bb6688;
  font-weight: bold;
} /* Literal.String.Interpol */
.highlight .sx {
  color: #008000;
} /* Literal.String.Other */
.highlight .sr {
  color: #bb6688;
} /* Literal.String.Regex */
.highlight .s1 {
  color: #ba2121;
} /* Literal.String.Single */
.highlight .ss {
  color: #19177c;
} /* Literal.String.Symbol */
.highlight .bp {
  color: #008000;
} /* Name.Builtin.Pseudo */
.highlight .fm {
  color: #0000ff;
} /* Name.Function.Magic */
.highlight .vc {
  color: #19177c;
} /* Name.Variable.Class */
.highlight .vg {
  color: #19177c;
} /* Name.Variable.Global */
.highlight .vi {
  color: #19177c;
} /* Name.Variable.Instance */
.highlight .vm {
  color: #19177c;
} /* Name.Variable.Magic */
.highlight .il {
  color: #666666;
} /* Literal.Number.Integer.Long */

/**********************************************************************/
/*                          Homepage Styles                           */
/**********************************************************************/

/* For simplicity, all homepage styles can be found here... */

.course-header {
  text-align: center;
  font-weight: bold;
  color: black;
}

h2.homepage {
  font-size: 1.5rem;
  font-weight: bold;
  color: black;
}

h4 {
  font-size: 1.2rem;
}

a.homepage,
a:hover.homepage,
a:focus.homepage,
a:active.homepage {
  text-decoration: none;
  color: inherit;
}

.homepage-box {
  z-index: -1;
  border-radius: 8px;

  background-color: var(--background-color);

  box-shadow: 5px 5px 5px 3px rgb(0 0 0 / 3%);
}

#homepage-navbar > * {
  margin: 1% 1%;
  color: var(text-color-against-main-color);
}

#homepage-container {
  font-family: Noto Sans, Roboto, "Segoe UI", Tahoma, sans-serif;
  font-stretch: condensed;
  font-size: 1.1rem;
}

#course-title-container > * {
  margin: 0;
}

/* A homepage-group will contain a title + a "homepage-group-options" class */
.homepage-group {
  margin-bottom: 1rem;
  width: 100%;
  padding: 10px;
}

.homepage-group-options {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  /* color of the button text */
  color: black;

  margin-top: 10px;
}

.homepage-group-options.centered {
  justify-content: center;
}

.homepage-group-options .break {
  flex-basis: 100%;
}

.homepage-primary-button {
  margin: 5px 10px;
  display: flex;
  justify-content: center;
  align-items: center;

  padding: 8px 6px;
  text-align: center;
  background-color: var(--main-color);
  color: var(--text-color-against-main-color);
  width: 190px;
  max-width: 90%;
  font-size: 14px;
  border: none;
  border-radius: 10px;

  box-shadow: 5px 5px 5px 3px rgb(0 0 0 / 3%);

  transition: 0.5s;
}

#exam-link-button {
  /* I'm so sorry, I know I shouldn't do this
   * but it's late and I'm tired so this is what we get
   **/
  width: 100%;
  max-width: 97%;
  color: white;
  font-size: 5em;
}

.homepage-primary-button:hover {
  transform: scale(1.05);
}

.homepage-primary-button.image-embedded {
  flex-direction: column;
}
.homepage-primary-button.image-embedded > img {
  padding: 0.5rem;
  width: 100%;
  height: 100%;

  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
}

#assignments-container {
  display: flex;
  overflow-x: scroll;

  align-items: center;
}

.assignment-container {
  margin: 20px;
  padding: 15px 15px 8px 15px;
  width: 20rem;
  height: 15rem;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  transition: 0.3s;
}

.assignment-container:hover {
  transform: scale(1.1);

  transition: 0.3s;
}

.assignment-container > img {
  height: 80%;
  border-radius: inherit;
  border: 1px solid lightgray;

  object-fit: cover;
}

#weeks-container {
  width: 100%;
}

#week-tabs {
  border: 0.15rem var(--main-color) solid;
  border-radius: 10px 10px 0 0;
}
.tabs-container {
  display: flex;
  justify-content: space-evenly;

  width: 100%;
}

.tab {
  position: relative;
  z-index: 0;

  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: -5px;
  width: 100%;
  height: 60px;

  border: solid lightgray 1px;
  border-radius: 10px 10px 0 0;

  background-color: var(--background-color);

  transition: background-color 0.3s;
}

.tab.disabled {
  pointer-events: none;
  opacity: 0.5;
}

.tab.selected {
  z-index: 2;

  border-bottom: none;
  outline: none;
  cursor: default;

  font-weight: bold;
}

.tab:not(.selected):hover, .tab:not(.selected):focus {
  background-color: lightgray;
  cursor: pointer;
}

.tab > .tab-data-source {
  display: none;
}

#week-tabs+.homepage-box {
  border-top: 0;
}

.tab.borderless {
  border: none;
}

.tab.borderless.selected {
  border-bottom: 0.2rem solid var(--main-color);
  margin-bottom: 0;
}

.tab-data.homepage-box {
  padding: 20px;
  position: relative;
  z-index: 1;

  border-top-left-radius: 0;
  border-top-right-radius: 0;

  background-color: var(--background-color);
}

.week-section {
  position: relative;
  z-index: 1;
  border: 0.1rem solid lightgray;
  border-radius: 10px;
  padding: 1rem;
  margin-bottom: 1rem;
}

.week-section-title {
  position: relative;
  z-index: 2;
  padding: 0.2rem;
  width: fit-content;
  margin: 0 0 -1rem 1rem;
  background-color: var(--background-color);
}

#course-resources > * {
	margin-top: 20px;
}

.meta-link-list-search-bar-container {
    display: flex;
    height: 40px;
}

.meta-link-list-search-bar-container > * {
    height: 100%;
}

.meta-link-list-search-bar {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.meta-link-list-search-bar-button {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    background-color: var(--main-color);
    color: var(--text-color-against-main-color);
}

.meta-link-list-search-bar-button:hover {
    color: var(--text-color-against-main-color);
}

@media all and (max-width: 650px) {
  .week-text {
    display: none;
  }
}

/* Bootstrap Overrides */
.nav-link {
  font-size: 1.2rem;
  colour: var(--text-color-against-main-color);
}

@media do-not-use-these-styles {
  /* additions for 19T2 assignment 1 */

  pre.cspaint-nice {
    line-height: 1;
    font-family: monospace;
    font-size: 1.5em;
  }

  .inverted-color {
    background-color: #2d2d2d;
    color: white;
  }

  .inverted-color.command_line {
    background-color: #2d2d2d;
    color: white;
    padding: 0.5em;
    margin-right: 0em;
  }

  .card-body.thinner {
    padding: 0.7rem;
  }

  span.output {
    margin-top: 0.2em;
    /*margin-left: 0.5em;*/
    display: inline-block;
  }

  kbd.inverted-color.shell {
    background-color: inherit;
    color: inherit;
    font-family: monospace;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 0.2em;
    line-height: 1.25em;
  }

  kbd.inverted-color.shell:before {
    content: "$ ";
    background-color: inherit;
    color: inherit;
    /* padding:3px 1px; */
    /* font-weight:lighter; */
    font-family: monospace;
  }

  th.borderless td.borderless .borderless {
    border-top: 0px;
  }

  .nav-list > .active {
    color: var(--text-color-against-main-color);
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
    background-color: #0088cc;
  }

  a.nav-link.visible-tab {
    border-color: #eeeeee #eeeeee #fff;
    border: 0.5px 0.5px 0.5px 0px dotted;
  }

  a.nav-link.visible-tab.active {
    border-color: #cecece #cecece #fff;
    border: 0.5px 0.5px 0.5px 0.5px solid;
  }

  /* end of additions for 19T2 assignment 1 */

  /* changes to make bootstrap 4 look like bootstrap 3. */
  pre {
    padding: 9.5px;
    margin: 0 0 10px;
    line-height: 1.42857143;
    color: #333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
  }

  /* lab exercise "cards" */
  .card {
    margin-top: 1em;
    margin-bottom: 1em;
  }

  body {
    font-size: 14px;
  }

  /* changes end here */

  /* changes end here */

  body {
    font-family: Verdana, Tahoma, Arial, sans-serif;
    line-height: 1.6;
    /* width: 960px; */
    /* max-width: 800px; */
    /* font-size: .85em; */
    /* margin: 0 auto; */
  }

  a {
    text-decoration: none;
  }

  #heading {
    /* padding-top: 30px; */
    margin-top: 1rem;
    margin-bottom: 1rem;
  }

  .heading_button {
    padding: 10px;
  }

  #heading,
  .heading_button {
    text-align: center;
    /* x-large no longer fits? */
    font-size: larger;
    font-weight: bold;
  }

  .heading_link {
    /* position: absolute; */
    font-weight: lighter;
    font-size: small;
    top: 10px;
  }

  #left_heading_link {
    left: 10px;
  }

  #right_heading_link {
    right: 10px;
  }

  .program_description {
    font-size: 110%;
    font-weight: bold;
    font-family: courier;
  }

  /* separate tut questions */
  .tut > ol > li,
  .separated_list > li {
    margin-top: 2em;
  }

  .answer {
    /*	border:thin solid #9999CC; */
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 1em;
    margin-right: 1em;
    padding: 16px 8px;
    border-radius: 10px;
  }

  .written.answer {
    margin-top: 0.5em;
    padding: 4px 8px;
  }

  .tutlab h2 {
    text-align: center;
  }

  /* heading for a lab section */
  .lab h3,
  .section_heading {
    margin: 0;
    padding: 0;
    border-radius: 10px;
  }

  /* show a command-line interaction */
  .command_line {
    font-family: "Courier New", Courier, monospace;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 0em;
    margin-right: 1em;
    padding: 4px 8px;
    border-radius: 10px;
    white-space: pre;
    font-size: 1.5em;
    line-height: 125%;
    border: thin solid #9999cc;
  }

  .command_line kbd {
    font-size: 85%;
    font-family: Verdana, Tahoma, Arial, sans-serif;
    padding: 3px 3px;
    box-shadow: none;
  }

  /* show a prompt before a shell command */
  kbd.shell:before {
    content: "$ ";
    background-color: #f4f4ff;
    /* padding:3px 1px; */
    /* font-weight:lighter; */
    font-family: "Courier New", Courier, monospace;
  }

  /*
pre.command_line {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	margin-left: 0em;
	margin-right: 1em;
	padding:4px 8px;
	border-radius:10px;
}
*/

  kbd {
    color: black;
    background: #e0e0e0;
  }

  samp {
    font-weight: lighter;
    font-family: "Courier New", Courier, monospace;
  }

  /* programs */
  .program {
    font-size: 1em;
    line-height: 120%;
    font-family: "Lucida Console", Courier, "Courier New", monospace;
  }

  pre.program {
    border: thin solid #9999cc;
    margin: 1em;
    padding: 4px 8px;
    border-radius: 10px;
  }

  .cp_embed_wrapper {
    margin-top: 1em;
    margin-bottom: 1em;
    margin-left: 0em;
    margin-right: 0em;
  }

  .answer pre.program {
    margin: 0.5em;
  }

  .example_link {
    font-weight: bold;
    font-size: 1.2em;
    font-family: "Courier New", Courier, monospace;
    /* margin-left: 2em; */
  }

  .example_header_comment {
    /*	font-weight:bold;
	margin-left: 4em; */
    font-size: 1.2em;
    font-family: Verdana, Tahoma, Arial, sans-serif;
  }

  div.date_changed {
    margin-top: 2em;
    margin-left: -3em;
    text-align: center;
    font-family: monospace;
    font-size: 110%;
    font-style: italic;
  }

  .tutors_only:after {
    content: "(tutors-only)";
    /* padding:3px 1px; */
    font-weight: lighter;
    font-size: 50%;
  }

  .thin_hr {
    height: 2px;
    border: none;
  }

  .thick_hr {
    height: 5px;
    border: none;
  }

  .autotest_results {
    margin-top: 0.5em;
    margin-bottom: 0em;
    margin-left: 0em;
    margin-right: 1em;
    padding: 4px 8px;
    border-radius: 10px;
    border: thin solid #9999cc;
    font-size: 100%;
  }

  .autotest_results_individual {
    font-size: 75%;
  }

  .autotest_results_emphasis {
    font-weight: bold;
  }

  .edit_github {
    margin: 1em;
  }

  .edit_github_link {
    font-weight: bold;
    font-size: 75%;
  }

  .cgi_display {
    width: 100%;
    display: inline-block;
    border-top: 1.5em;
    border-bottom: 1.5em;
  }

  .cgi_display_title {
    width: 100%;
    float: left;
    text-align: center;
    font-weight: bold;
  }

  .cgi_output_panel {
    float: left;
    height: 20em;
    width: 50%;
  }

  .cgi_source_display {
    height: 100%;
    width: 100%;
    font-family: "Lucida Console", Courier, "Courier New", monospace;
    background: #e8e8ff;
  }

  .cgi_output_display {
    height: 100%;
    width: 100%;
  }

  .html_source_panel {
    float: left;
    height: 20em;
    width: 50%;
    left: 50%;
  }

  .html_source_display {
    padding-left: 2px;
    height: 100%;
    width: 100%;
    overflow: auto;
    white-space: pre;
    background: #f0f0ff;
    border: thin solid #9999cc;
  }

  .give_marking {
    font-family: Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono,
      Courier New, monospace, serif;
  }

  .give_marking_listing_file {
    border: thin solid #9999cc;
    margin: 1em;
    padding: 4px 8px;
    border-radius: 10px;
  }

  .highlighted_note {
    border: solid #9999cc;
    margin: 1em;
    padding: 4px 8px;
    border-radius: 10px;
    font-size: 120%;
  }

  code {
    border: none;
    font-size: 120%;
  }

  .multicolumn_block {
    white-space: nowrap;
  }

  .two_column_block {
    max-height: 64em;
    overflow: auto;
    width: 50%;
    display: inline-block;
    vertical-align: top;
  }

  .code_link {
    font-weight: bold;
    font-size: 0.9em;
    font-family: "Courier New", Courier, monospace;
    text-align: center;
  }

  .faq {
    margin-top: 2em;
  }

  /* FAQ question */
  .faq div:nth-child(1) {
    margin-left: 0em;
    margin-bottom: 0em;
    font-size: 120%;
    padding: 4px 8px;
    border-radius: 10px;
    border: thin solid #9999cc;
  }
  /* show a prompt before a shell command */
  .faq div:nth-child(1):before {
    content: "Question:";
    font-weight: bold;
  }

  /* FAQ answer */
  .faq div:nth-child(2) {
    margin-top: 0.4em;
    margin-left: 2em;
    margin-bottom: 0em;
  }

  .request_path {
    text-align: center;
    /* x-large no longer fits? */
    font-size: larger;
    font-weight: bold;
  }

  .survey_message {
    font-size: larger;
    font-weight: bold;
    border-radius: 10px;
    border: thin solid green;
    margin: 2em;
    padding: 8px 8px;
    background-color: #f1faf1;
  }

  .survey_preface {
    border-radius: 10px;
    border: thin solid;
    margin: 2em;
    padding: 8px 8px;
    background-color: #fafafa;
  }

  .survey_question {
    margin-bottom: 2em;
  }

  .survey_question_description {
    font-weight: bold;
  }

  .survey_question_radio {
    margin-top: 0.3em;
  }

  /* color scheme */

  a {
    color: #3333ff;
  }

  a[href]:hover {
    background-color: #ffffcc;
    color: #cc0000;
  }

  h2 {
    color: #3366cc;
    page-break-before: always; /* so exam questions start on new page */
  }

  code {
    color: black; /* why pink in bootstrap */
    background-color: #ffffff;
  }
  /* show a command-line interaction */
  .command_line {
    background-color: #f8f8ff;
  }

  .command_line kbd {
    background-color: #f8f8ff;
    color: black;
  }

  /* indicate ctrl-d typed */
  .eof {
    /*	background-color:#F8F8FF; */
  }

  /* programs */
  .program {
    background-color: #f8f8ff;
  }

  .answer code,
  .answer {
    background-color: #eafaea;
  }

  .answer .command_line,
  pre.answer,
  .answer pre {
    border: thin solid green;
    background-color: #f1faf1;
  }

  .tutors_only {
    color: red;
  }

  #heading,
  .heading_button {
    color: #4477dd;
    color: #4477dd;
    background-color: #ffffff;
  }

  .program_description {
    /* color:#993300; */
  }

  .written.answer {
    /*	color: blue; */
    border: thin solid green;
    background-color: #f1faf1;
  }

  /* heading for a lab section */
  .lab h3,
  . {
    color: black;
    /*	background-color: #E0E0E0; */
    background-color: #fff8a0;
  }

  /* heading for a tut section */
  .tut h3 {
    color: #4477dd;
  }

  .heading {
    color: #4477dd;
  }

  kbd {
    color: black;
    background: #e0e0e0;
  }

  .thin_hr {
    color: var(--main-color);
    background-color: var(--main-color);
  }

  .thick_hr {
    color: var(--main-color);
    background-color: var(--main-color);
  }

  .autotest_results {
    background-color: #fff8d0;
  }

  .nav-tabs > li.active > a {
    border-color: var(--main-color);
    color: var(--text-color-against-main-color);
  }
  .nav-tabs > .active > a {
    color: var(--text-color-against-main-color);
  }
  .nav-tabs > .active > a:hover,
  .nav-tabs > .active > a:focus {
    border-color: var(--main-color);
    border-bottom-color: transparent;
  }
  .nav-tabs {
    border-bottom: 1px solid var(--main-color);
    color: var(--text-color-against-main-color);
  }

  .edit_github_link {
    background-color: #ffe050;
    color: #000000;
  }

  .give_marking_listing_file {
    background-color: #f8f8ff;
  }

  .highlighted_note {
    background-color: #fff4f4;
  }

  /* FAQ question */
  .faq div:nth-child(1) {
    background-color: #f6fff6;
  }

  /* FAQ answer */
  .faq div:nth-child(2) {
  }

  .request_path {
    color: black;
  }
}
