: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: #6260ac; /* bootstrap primary blue */
}

/*
 * 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: .25rem 0;
	padding: .25rem .5rem;
	white-space: pre-wrap;
}

blockquote[is="markdown"] {
	background: #f9f9f9;
	border-left: 10px solid #ccc;
	margin: 1.5em 10px;
	padding: 0.5em 10px;
	quotes: "\201C""\201D""\2018""\2019";
}

code {
	background-color: rgba(27, 31, 35, 0.05);
	padding: 0.2em 0.4em;
	border-radius: 3px;
	color: initial;
	white-space: nowrap;
}

/* Style command entry into various tools. */
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,"]:before    { content: '> '; }
pre[is="tty"] > kbd[is="sh_comment"]: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="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) '; }
pre[is="tty"] > kbd[is="mipsy"]:before  { content: '[mipsy] '; }
/* COMP2041 says hi! */
pre[is="tty"] > kbd[is="py"]:before     { content: '>>> '; }
pre[is="tty"] > kbd[is="py,"]:before    { content: '... '; }
pre[is="tty"] > kbd[is="py_help"]:before    { content: 'help> '; }
pre[is="tty"] > kbd[is="py-help"]:before    { content: 'help> '; }
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) '-# '; }

/* Show the `ctrl-d' widget. */
.eof:before {
	content: 'Ctrl-D';
	font-weight: lighter;
	font-style:  italic;
	border: thin solid;
	border-radius: .25rem;
	padding: .1rem .25rem;
}

.eof:after {
	position: relative;
	content: 'Ctrl and D keys pressed';
	border: 2px solid black;
	background-color: var(--main-color);
	opacity: 0;
	width: 10px;
	height: 5em;
	border-radius: .25rem;
	transition: opacity 0.5s;
}

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

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

/* Tutorial questions. */
body > ol > li { margin-top: 1rem; }
li > code:nth-child(1) { margin-left: 1ex; }

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

/*
 * Sectioning for the home page.
 * Replaces ad-hoc .thick_hr with a bordered section.
 */
section.homepage-section {
	/* inherits .thick_hr */
	margin-top: .5rem;
	border-top: .25rem solid var(--main-color);
	padding-top: .5rem;
}

.hidden { display: none; }

/*
 * Hints and asides.
 */
aside {
	border: .01rem solid var(--light); /* .border */
	border-left-width: .25rem;
	border-radius: .25rem; /* .rounded */
	margin: 1.5rem; /* .m-4 */
	padding: .5rem; /* .p-2 */
	overflow: hidden;
}

aside:before {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 80%;
	display: block;
	color: var(--white);
	max-width: 6rem;
	padding: .5rem;
	margin-top:  -.5rem; /* undo .p-2 */
	margin-left: -.5rem; /* undo .p-2 */
	margin-bottom: .5rem;
	border-bottom-right-radius: .25rem; /* .rounded */
}

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.answer { border-color: var(--blue); }
aside.answer:before { background-color: var(--blue); content: "answer: " }

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

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

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

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

body > nav.navbar { background-color: var(--main-color) }

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

section > header {
	padding: .75rem 1.25rem;
	margin-bottom: 1rem;
	border: 1px solid;
	border-radius: .25rem;
	border-left-width: .5rem; /* left-tab effect */
}

section > header > h3 { margin: 0; }
section.exercise > header { border-color: var(--green); }
section.exercise.pair-exercise > header { border-color: var(--yellow); }
section.exercise.peer_assessed-exercise > header { border-color: var(--orange); }
section.exercise.challenge-exercise > header { border-color: var(--red); }
section.exercise.test-exercise > header { border-color: var(--blue); }

/*
 * 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: .3rem .3rem 0 0;
}

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

/*
 * Adjust the layout of highlighted program blocks.
 */
.highlight {
	border: 1px solid #f0f0f0;
	border-radius: 0.25rem;
	margin: .25rem 1rem;
	padding: .25rem .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 */

/**********************************************************************
 * These styles are intentionally disabled as a scream test --- if you
 * have a use for them, you probably should move and document them.
 * Otherwise, these will be removed at the end of 20T2.
 */

@media do-not-use-these-styles {

/* additions for 19T2 assignment 1 */

pre.cspaint-nice {
    line-height: 1.0;
    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: #ffffff;
    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;
}

/* 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;
}

.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;
}


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

.give_marking_listing_file {
	background-color:#F8F8FF;
}

.highlighted_note {
	background-color:#FFF4F4;
}

/*
 * Colour in the navigation elements.
 */
.nav-tabs > li.active > a {
	border-color: var(--main-color);
}
.nav-tabs > .active > a,
.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);
}

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

.request_path {
	color: black;
}

}
/**********************************************************************/
