body{
	padding:      0px;
	margin:       0px;
  background:   no-repeat url("http://www.bootstrapworld.org/images/bootBG.png") fixed bottom right;
  background-color: #f5deb3;
	max-width:    800px;
  font-family:  Times;
}

div.content{
	max-width:		800px; 
	background:		rgba(255, 255, 255, .3);
}

/************************************************************************************
 * LESSON TOOLBAR
 * Sits on the bottom of the page at all times
 * Displays buttons for teachers
*/
div#lessonToolbar{
  display:      block;
  z-index:      999;
  text-align:   center;
}

div#lessonToolbar * {margin: 10px; display: inline-block;}

div#lessonToolbar.fixed{
  position:     fixed;
  left:         806px;
  top:          0px;
  background:   black;
  border-bottom-right-radius: 10px;
}
/************************************************************************************
 * OVERVIEW PAGE
 * Lesson overviews contain logo, various lists, Language Table, title and duration
 * Unit overviews include an agenda, and a concatenation of lesson overview lists
*/

.OverviewBoundary{display: inline}

.BootstrapTitle{
    text-align:   center;
    font-size:    32px;
    font-weight:  bold;
    display:      block;
}
.BootstrapTitle   img{
  float:          left;
}

.BootstrapHeader{
	  font-weight:  bold;
	  font-size:    16px;
    margin-top:   15px;
    margin-right: 5px;
}

/* Overview design */
.BootstrapOverviewTitle{
    background:   black;
    color:        white;
    font-size:    18px;
    margin:       0px;
    display:      block;
    width:        100%;
}
.BootstrapOverview {
    padding:      5px;
    width:        788px; /*  788px wide + 5px padding + 2px border = 800px total */
    background:   lightgray;
    page-break-after: always;
    border:       solid 1px black;
    min-height:   100px;
}

/*Table Design*/
.BootstrapTableHeader{
	border: 1px solid black;
	background: grey;
	font-weight: bold;
  padding: 5px;
  font-family: monospace;
}
.BootstrapTable{
	width: 300px;
	border: 1px solid black;
	background: white;
	}
.BootstrapOverview td{
	padding: 0px;
}

table {
  margin: 20px auto;
}

.BootstrapAgenda{
	border:         1px solid black;
	display:        inline-block;
	text-align:     center;
	background:     white;
	float:          right;
	font-weight:    bold;
	position:       relative;
  padding:        5px;
  margin:         0px 0px 10px 10px;
  width:          225px;
}
  
ul.BootstrapAgendaList{
  text-align:     left;
  font-weight:    normal;
  font-size:      12px;
  list-style-type: none;
  padding:        0px;
}

li.BootstrapAgendaListItem{clear: both;}
ul.BootstrapAgendaList .BSLessonName{float: left;}

.BootstrapPreparationList, .BootstrapMaterialsList{
  margin: 0px;
  list-style-image: url('box.gif');
}

/* Standards and Evidence Statements (make sub-lists fade in and out of view) */
ul.EvidenceStatementsList{
    opacity: 0; height: 0px; overflow: hidden;
}
li.LearningObjectivesListItem:hover ul.EvidenceStatementsList,
ul.EvidenceStatementsList:hover{opacity: 1; height: auto;}



/************************************************************************************
 * LESSON SEGMENT
 * All Segments contain an Overview, a Student and Teacher column, as well as a Header
 * The Overview contains a brief description, and various lists we track
 * The Header contains a title, time, and the stoplight
   ****************************************************************************/

div.overview{
  display:      none;
	background:		lightgray; 
	margin:       5px;
	padding-bottom: 20px;
	page-break-after: always;
}
.overview h2 {float: none; clear: none;}
.overview img {float: left; position: relative; top: -50px; margin-bottom: -50px;}

blockquote.LessonBoundary{margin: 0px; display: inline-block;}

.BootstrapLessonTitle{
    background: black;
    color: white;
    font-size: 18px;
    display: block;
}
.BootstrapPageTitle{display: none; font-size: 24px; margin-top: 0px;}
.BSLessonDuration{float: right;}

h2{width: 100%; background: black; color: white; font-size: 18px; padding: 0px; margin: 0px; clear: both;}
h3{font-size: 16px; margin-bottom: 0px; }
span.time{float: right; padding-right: 5px;}
span.board{font-weight: bold; padding: 40px;}

ul.todo li {list-style-image: url('images/box.gif');}

table.bordered {
  border-collapse: collapse;
	border:       solid 1px black;
	background:		white; 
	margin-left:	0px;
	font-size:		12px;
}
table.bordered td{border: solid 1px black; margin: 10px; padding: 5px; min-width: 30px;}
tr.number{color:  blue}
tr.string{color:  green}
tr.image{color:   purple}
tr.boolean{color: red}
tr.position{color:orange}

input.prev{display:none;}
input.next{display:none;}
input.toggle{display:none;}



div.ExtraExercises, div.segment{
  float:      left;
  border:     1px solid black;
  background:	rgba(255, 255, 255, .8);
  width:      800px;
  overflow:   hidden;
}

.remediation, .misconception, .challenge{
  width:      12px;
  height:     12px;
  display:    inline-block;
  float:      right;
  margin:     5px;
  border-radius: 6px; 
}

.callout{
  width:      400px;
  border:     solid 3px black;
  font-size:  12px;
  font-weight:normal;
  color:      black;
  background: white; 
  position:   relative;
  display:    none;
  top:        12px;
  left:       -380px;
  box-shadow: 5px 5px 5px #888888;
  padding:    10px;
}

span.remediation    {background: red;}
span.misconception {background: yellow;}
span.challenge  {background: green;}
span.remediation>div:before{content: 'If they get stuck..'}
span.misconception>div:before{content: 'Proceed with caution...'}
span.challenge>div:before{content: 'Moving ahead...'}
.remediation:hover .callout, .misconception:hover .callout, .challenge:hover .callout,  .callout:hover{
  display: block; 
  background: white;
  z-index: 2;
}

.segment ul.lesson{
  margin:         0px;
  padding-left:   0px;
  border-bottom:  solid 1px lightgray;
  list-style-type:none;
  max-width:      790px;
}


/************************************************************************************
 * INDIVIDUAL LESSON ITEMS
 * lessonItems represent the smallest meaningful unit of content
 * Each lessonItem contains a student and teacher DIV, and multiple
 * possible components (activities, codeblocks, embedded WeSchemes, etc)
*/

li.lessonItem{
  width:          1270px;
  vertical-align: top;
  overflow:       hidden;
  position:       relative;
  padding:        0px 10px;
  padding-bottom: 30px;
  clear:          both;
  margin:         0px;
}
.segment ul.teacherNotes li+li .teacher{box-shadow: inset 3px -3px 3px black; border-top: none;}

div.teacher{
  width:          250px;
  display:        inline-block;
  height:         100px;
  vertical-align: top;
  height:         35px;
  padding-bottom: 35px;
  margin-bottom: -35px;
  padding-left:   10px;
  padding-right:  10px;
  box-shadow:     inset 3px 0px 3px black;
  background:     lightgray;
  margin-left:    20px;
}
ul.teacherNotes li div.teacher{
  height: auto;
  padding-bottom: 32767px;
  margin-bottom: -32767px;
}
div.student{
  width: 780px; 
  display: inline-block; 
}
ul.teacherNotes li div.student{width: 500px;}
ul.teacherNotes .embedded-wescheme{width: 500px;}

/* show lists normally inside a lessonItem */
li.lessonItem li{
  width:      100%;
  padding:    0px;
  list-style-position: inside;
}


/* embedded WeSchemes should be full-width, and transform during animation */
.embedded-wescheme{width: 780px; margin-bottom: 40px;}
.embedded-wescheme .editbox{display: none;}
.embedded-wescheme .refreshButton {background: black; color: white; font-size: 16px; border: outset;}

/* make sure inline code is never broken across lines */
.editbox{white-space: nowrap;}

.management{margin-bottom: 10px; color: darkblue;}
div.activity{
  width:          100%;
  padding:        10px 0px;
  background:     rgba(200,200,255,0.5);
  float:          left;
  margin:         10px 0px;
  display:        inline-block;
  border-top:     dashed 1px black;
  border-bottom:  dashed 1px black;
  vertical-align: middle;
}

img{float: right; padding: 5px;}
img.video{width: 20px; height: 20px; padding: 0px; margin: 0px;}
div.activity li img{float: none;}

/* all banners have borders, and text is bold */
div.banner{
  display:        inline-block;
  width:          100%;
  margin:         10px 0px;
  padding:        5px;
  font-weight:    bold;
  color:          black;
  border-top:     solid 1px black;
  border-bottom:  solid 1px black;
}
/* Banner images are centered */
div.banner img{float: none; margin-left: auto; margin-right: auto; display: block;}
div.banner span.MathJax{display: block; clear: both;}

div.embedded-wescheme-alt{
  display:        inline-block;
  width:          100%;
  margin:         10px 0px;
  padding:        5px;
}

td.header{background: lightgray; font-weight: bold; text-align: center;}
table tr{height: 16px;}
tt{font: Courier;}

td.vertical {
	writing-mode:tb-rl;
	transform:rotate(90deg);
	-webkit-transform:rotate(90deg);
	-moz-transform:rotate(90deg);
	-o-transform: rotate(90deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}

span.wp { font-weight:   bold; }
span.vocab{font-style:  italic; font-weight: bold; color: darkblue;}

div.ExtraExercises {background:	rgba(200, 200, 200, .8); }

div#copyright{
  display: inline-block;
  border-top: dashed 2px black;
  padding: 20px;
  margin-top: 20px;
}

/************************************************************************************
 * ANIMATIONS
 * consolidate all vendor prefixes into one place
*/

ul.EvidenceStatementsList, ul.teacherNotes li div.teacher, div.student, .embedded-wescheme, iframe#forum_embed{
  transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
}

/************************************************************************************
 * EMBEDDED GOOGLE GROUP
*/

iframe#forum_embed{
  width:    80%;
  height:   80%;
  z-index:  -1;
  position: fixed;
  left:     30px;
  top:      30px;
  margin:   20px;
  visibility:hidden;
  opacity:  0;
  background: white;
  box-shadow: 5px 5px 7px #000;
  -moz-box-shadow: 5px 5px 7px #000;
  -webkit-box-shadow: 5px 5px 7px #000;
}

iframe#forum_embed.shown{
  opacity: 1; visibility: visible;  z-index:  100;
}


/************************************************************************************
 * CONVERTABLE S-EXPRESSIONS
*/

div.code{max-width: 500px; display: inline; margin: 0px; padding: 0px;}
div.student div.circleevalsexp, div.codesexp{display: inline-block;}
div.circleevalsexp{float: right;}

div.circleevalsexp .expression{
	display:        inline-block;
  padding-top:    6px;   /* top padding pushes the rounded corners up slightly, so as not to clip function name */
	margin:         5px;
	clear:          none;
	border:         2px solid black;
  background:     white;
  border-radius:  20px;
  text-align:     center;
	-moz-border-radius: 20px;
	-webkit-border-radius:20px;
}

div.circleevalsexp .value{
	display:        inline-block;
	margin:         10px 10px 5px 10px;
  vertical-align: top;
}

div.circleevalsexp .operator{
  display:        block;
  height:         20px;
  text-align:     center;
  width:          100%;
  border-bottom:  solid 2px black;
  border-radius:  15px 15px 0px 0px; /* top left, top right, bottom right, bottom left */
}

div.circleevalsexp .lParen, div.circleevalsexp .rParen{display: none;}


/************************************************************************************
 * EXERCISES
 * Most exercises use the twoColumn layout, in which each LI has a left and right div
 * All LIs have top borders, except in matching activities.
*/

div.exercise-instr{margin: 10px;}
ul.twoColumnLayout {
  list-style-type:  none;
  padding:          0px; 
  margin:           0px;
  counter-reset:    item; /* initialize the "item" counter */

}

ul.twoColumnLayout li {
  border-top: solid 1px black; overflow: hidden;
  counter-increment:  item; /* increment the counter for each row */
}

}
ul.matching li          {border-top: none;}

div.rightColumn, div.leftColumn {
  width:          50%;
  display:        inline-block;
  vertical-align: top;
  padding-bottom: 100%;
  margin-bottom:  -100%;
}

div.rightColumn>p{padding: 0px; padding-bottom: 5px;}
span.rightColumnLabel,
div.leftColumn:before,
div.rightColumn:before{
  box-sizing:         border-box;
  -moz-box-sizing:    border-box;
  -webkit-box-sizing: border-box;
  padding:            4px;
  color:              #fff;
  background:         #666;
  font-weight:        bold;
  font-family:        "Helvetica Neue", Arial, sans-serif;
}
/*  don't auto-number the rightColumn for matching solutions */
ul.solutions li.matchingItem div.rightColumn:before{display: none}

/* display numbers in all left columns */
div.leftColumn:before{content: counter(item);}
div.rightColumn:before{content: counter(item, lower-latin);}


div.rightColumn>*, div.leftColumn>*{padding: 5px 15px;}
div.rightColumn{border-left: solid 1px black; margin-right: -1px; }
div.leftColumn{border-right: solid 1px black; margin-right: -1px; }

/* Define minimum heights for various answer types */
div.circeval {min-height: 250px;}
div.code, div.math, div.text,  {min-height: 50px;}

.exercises h2{ text-align: center; page-break-before:always;}
ol.question>li{clear: both; border-top: solid 1px black; padding: 20px 20px; margin-bottom: 35px;}
ol.question li:first-of-type{border: none;}
.exercises img{float: right; }

div#exercises div.circleevalsexp{float: none;}

/* student answers should be at least 15px tall */
.studentAnswer, .operator:empty{
  display:      inline-block;
  background:   #eee;
  min-height:   15px;
  min-width:    60px;
  border-bottom: solid 1px black;
}

/* holes in code should be at least 40px x 40px */
div.circleevalsexp  .studentAnswer{
  min-height:   40px;
  margin:       10px;
  border-bottom: none;
}

/* Specify min-sizes for parts of a contract, to give students room to fill them in */
.contract-name  {min-width: 1.5in; min-height: .2in;}
.contract-domain{min-width: 3.0in; min-height: .2in;}
.contract-range {min-width: 1.0in; min-height: .2in;}

/* .studentAnswers should appear differently if they're in code or circles of Eval */
div.circleevalsexp .studentAnswer .studentAnswer{margin: 20px;}
div.codesexp       .studentAnswer                { margin-bottom: 2px; margin-left: 10px; }
div.codesexp       .studentAnswer .studentAnswer { margin-bottom: 2px; margin-left: 60px; border-bottom: none;}
div.codesexp       .studentAnswer+.studentAnswer { margin-left: 10px;}


/************************************************************************************
 * PRINT MEDIA
 * Hide callouts, embedded WeSchemes, box-shadows, and background images
 * which are styled a little differently
*/
@media print {
	body			{background: white;}
	div.content		{border: none; font-size: 12px; display: inline-block;}
	div.overview img			{width: 80px; margin-top: 0px; }
	table, img {page-break-inside: avoid;}
  table.bordered td {border: none; padding: 0px;}
  div.segment{border: none;}
  li.lessonItem{page-break-inside: avoid;}
  div.teacher{
    height:         auto;
    padding-bottom: 32767px;
    margin-bottom: -32767px;
    border:         0px none;
    background:     #eee;
    box-shadow:     inset 0px 0px 0px black;
  }
  iframe#forum_embed{display: none;}
  .segment ul.teacherNotes li+li .teacher{box-shadow: none;}
  input, div.callout, .embedded-wescheme{display: none;}
  ul.EvidenceStatementsList{display: block; height: auto; opacity: 1;}
}