/*******************************************************************
 styles_layout.css
  
 This CSS file contains all layout definitions like positioning,
 floats, margins, padding, borders etc.

 Styles are organised into the following sections:
  core
  header
  footer

  admin
  blocks
  calendar
  course
  doc
  grades
  login
  message
  tabs
  user

  various modules

*******************************************************************/


/***
 *** Core
 ***/

body {
  margin:0; padding:0;
}

#content {
  margin:0.5em;
}

h1.main,
h2.main,
h3.main,
h4.main,
h5.main,
h6.main {
  text-align: center;
}

#layout-table {
  width:100%;
  border-collapse:separate;
  margin-top: 8px;
  padding:10px;
}

#layout-table #left-column,
#layout-table #middle-column,
#layout-table #right-column
{
  vertical-align:top;
}

#layout-table #middle-column {
  padding-left:12px;
  padding-right:12px;
}


.clearer {
  clear:both;
  margin:0px;
  padding:0px;
  height:1px;
  border:none;
  background:transparent;
}

.continuebutton {
  text-align: center;
}

form {
  margin-bottom:0px;
}

table {
  border-spacing: 0px;
  border-collapse: collapse;
}

a img {
  border:none;
}

img.userpicture,
img.grouppicture,
.block_online_users .listentry img {
  border: 0px solid
}

.notifyproblem {
  text-align: center;
  padding: 10px;
}
  
.notifysuccess {
  text-align:center;
  padding: 10px;
}   

.generalbox {
  border-width:1px;
  border-style:solid;
  margin-bottom: 15px;
}

.generalbox#intro {
}

.noticebox {
  border-width:1px;
  border-style:solid;
}
.errorbox {
  border-width:1px;
  border-style:solid;
  margin: 1em 15%;
  width: 70%;
}
.errorbox .title {
  padding: 5px;
}
.informationbox {
  border-width:1px;
  border-style:solid;
}
.feedbackbox {
  border-width:1px;
  border-style:solid;
}
.feedbackby {
}
.feedback {
}
.initialbar {
  text-align: center;
}

#help .indent {
  margin-left:3em;
}

.tabledivider {
  border-width:1px;
  border-style:solid;
  border-left:0px;
  border-right:0px;
  border-top:0px;
}

.sitetopic {
  margin-bottom:20px;
}

.sitetopiccontent {
  border-width:1px;
  border-style:solid;
}

.pagingbar {
  text-align:center;
}
.pagingbar a {
  padding-left: 10px;
}
.pagingbar .thispage {
  padding-left: 10px;
}

table.formtable {
  margin: auto;
}

table.formtable tbody th {
  vertical-align: top;
}

table.formtable tbody td,
table.formtable tbody th
{
  padding: 5px;
}

.paging {
  text-align: center;
  margin: 10px 0px 10px 0px;
}

.unread {
  padding-right:2px;
} 

.cell {
  vertical-align: top;
}

.helplink img {
  vertical-align: middle;
  margin: 0px 2px;
}

form.popupform {
  display: inline;
}

/***
 *** Header
 ***/

#header-logo {
  width:100%; white-space: nowrap;
}

#header-logo img {
  border:0;
}

.headermain {
}

.headermenu {
  float:right;
  text-align:left;
}

.navbar {
  width:100%;
  padding:3px 0.5em;
  height:1.3em;
  border-width:1px;
  border-style:solid;
}

.navbar .breadcrumb {
  float:left;
  margin:0.2em 0em;
}

.navbar .navbutton,
.navbar .menu {
  float:right;
}

#footer .navbar {
  margin-top: 4em;
}

.reportlink {
  text-align:right;
}


/***
 *** Footer
 ***/

#footer {
  text-align:center;
  margin-top: 60px;
  margin-bottom:20px;
}

.homelink {
  margin: 1em 0;
}

.homelink a {
  padding-left:1em;
  padding-right:1em;
}

.performanceinfo {
  margin: 2em;
}

.performanceinfo span {
  display: block;
}



/***
 *** Admin
 ***/

body#admin-index .c0 {
  vertical-align: top;
} 

body#admin-modules table.generaltable td.cell,
body#admin-modules .generaltablecell {
  padding-top: 2px;
  padding-bottom: 2px;
} 

body#admin-blocks table#blocks,
body#admin-blocks table#incompatible {
  width: 70%;
  margin: auto;
}

body#admin-blocks table#blocks th,
body#admin-blocks table#incompatible th,
body#admin-blocks table#blocks td.cell,
body#admin-blocks table#incompatible td.cell {
  padding: 4px;
  text-align: center;
  vertical-align: middle;
} 

body#admin-blocks table#blocks td.c0,
body#admin-blocks table#blocks th.c0,
body#admin-blocks table#incompatible td.c0,
body#admin-blocks table#incompatible th.c0 {
  text-align: left;
}

body#admin-blocks 
body#admin-config .confighelp {
  display: block;
  padding-bottom: 20px;
}


/***
 *** Blocks
 ***/

.sideblock .content h3,
.sideblock .content h2 {
  text-align: left;
}

.sideblock {
  margin-bottom:1em;
  width: 100%;
}

.sideblock .header {
  text-align: left;
  padding:4px;
  border-width: 1px;
  border-style: solid;
  border-bottom: none;
}

.sideblock .header .hide-show {
  float:right;
}

.sideblock .header .hide-show img.hide-show-image {
  height:11px;
  width:11px;
  margin-top:0.25em;
}

.sideblock .header .commands {
  margin-top: 0.3em;
  clear: both;
}

.sideblock .header .commands a {
  margin: 0px 2px;
}

.sideblock .content {
  padding: 4px;
  border-width: 1px;
  border-style: solid;
}

.sideblock .content hr {
  height:1px;
  margin-top:4px;
  margin-bottom:4px;
  border:none;
  border-top:1px solid;
}

#left-column .hidden .header,
#right-column .hidden .header
{
  border-bottom-width: 1px;
  border-bottom-style: solid;
}

#left-column .hidden .content,
#right-column .hidden .content
{
  display: none;
}

.sideblock .list {
  width: 100%;
}

.sideblock .list .c0{
  padding: 2px;
}

.sideblock .footer {
  margin-bottom: 4px;
  text-align:center;
}

.sideblock .header .icon.hide,
.sideblock .header .icon.edit {
  margin-right: 6px;
}

.sideblock .content .head {
  margin-top: 10px;
}

.blockconfigtable {
  margin-top: 0;
}

.blockconfiginstancecontent .tabs {
  margin-bottom: 0px;
}

.block_online_users .listentry {
  padding-top:5px;
}

/***
 *** Calendar
 ***/

#calendar {
  width: 100%;
  border-spacing: 5px;
  border-collapse: separate;
}

#calendar h2,
#calendar h3
{
  text-align: center;
}

#calendar .maincalendar,
#calendar .sidecalendar
{
  vertical-align: top;
  border: 1px solid;
  padding: 0px;
}

#calendar .sidecalendar {
  width: 25%;
}

#calendar .maincalendar table.calendarmonth {
  border-collapse: separate;
  margin: 0px auto;
  width: 98%;
}

#calendar .maincalendar table.calendarmonth th {
  padding:10px;
  border-bottom:2px solid;
}

#calendar .maincalendar table.calendarmonth td {
  height: 5em;
  padding-left: 4px;
  padding-top: 4px;
  line-height:1.2em;
}

#calendar .maincalendar table.calendarmonth td,
table.minicalendar td,
table.minicalendar th {
  width:14%;
  vertical-align:top;
}
table.minicalendar td {
  text-align: center;
}
#calendar .maincalendar table.calendarmonth td table td {
  height: auto;
}

#calendar div.header
{
  padding: 5px;
}

#calendar .maincalendar .buttons {
  float: right;
}

#calendar .maincalendar .filters table,
#calendar .sidecalendar .filters table,
.sideblock.block_calendar_month .filters table
{
  border-collapse:separate;
  border-spacing: 2px;
  padding: 2px;
  width: 100%;
}

#calendar .maincalendar .filters {
  padding: 0px 10px;
}

#calendar .sidecalendar .filters {
  padding: 5px;
}

#calendar .maincalendar .controls {
  clear:both;
  padding:10px;
}

#calendar .maincalendar table.calendarmonth ul.events-new,
#calendar .maincalendar table.calendarmonth ul.events-underway
{
  padding:0px;
  margin:0px;
  list-style-type:none;
}

#calendar .maincalendar table.calendarmonth ul li {
  margin-top: 4px;
}

.minicalendarblock {
  padding: 0px 4px;
}

table.minicalendar {
  width: 100%;
  margin: 10px auto;
  padding:2px;
  border-width:1px;
  border-style:solid;
  border-collapse:separate;
  border-spacing:1px !important;
}

table.minicalendar th {
  padding: 0px 2px;
}

#calendar .maincalendar .eventlist {
  padding: 10px;
}

#calendar .maincalendar .eventlist .topic {
  padding: 5px;
  border-style:solid; 
  border-width: 0px;
  border-bottom-color: #EEEEEE;
  border-bottom-width: 1px;
}

#calendar .maincalendar .eventlist .event {
  width:100%;
  margin-bottom:10px;
  border-spacing:0px;
  border-collapse:separate;
  border-width:1px;
  border-style:solid;
}

#calendar .maincalendar .eventlist .event .name {
  float:left;
}

#calendar .maincalendar .eventlist .event .course {
  float:left;
  clear:left;
}

#calendar .maincalendar .eventlist .event .date {
  float:right;
}

#calendar .maincalendar .eventlist .event .description .commands {
  width:100%;
}

#calendar .maincalendar .eventlist .event .description {
  padding:5px;
}

#calendar .maincalendar .eventlist .event .picture {
  padding:8px;
}

#calendar .maincalendar .eventlist .event .side {
  width:32px;
}

#calendar #selecteventtype table {
  margin:auto;
}

#calendar .event_global,
#calendar .event_course,
#calendar .event_group,
#calendar .event_user,
.minicalendar .event_global,
.minicalendar .event_course,
.minicalendar .event_group,
.minicalendar .event_user {
  border:2px solid !important;
}

#calendar .duration_global,
#calendar .duration_course,
#calendar .duration_group,
#calendar .duration_user,
.minicalendar .duration_global,
.minicalendar .duration_course,
.minicalendar .duration_group,
.minicalendar .duration_user
{
  border-top:2px solid !important;
  border-bottom:2px solid !important;
}

#calendar .today,
.minicalendar .today {
  border:2px solid !important;
}
  
.cal_popup_bg {
  padding:0px;
  margin:0px;
  border:1px solid;
}

.cal_popup_close {
  margin-right:5px;
}

.cal_popup_caption {
  border-width:0px 0px 1px 0px;
  border-style:solid;
  padding-bottom:2px;
}

table.calendar-controls {
  width: 100%;
}

table.calendar-controls .previous,
table.calendar-controls .next
{
  width: 12%;
}
table.calendar-controls .previous {
  text-align: left;
}
table.calendar-controls .current {
  text-align: center;
}
table.calendar-controls .next {
  text-align: right;
}

#calendar .maincalendar .calendar-controls .previous,
#calendar .maincalendar .calendar-controls .next
{
  width: 30%;
}


/***
 *** Course
 ***/
.activitydate, .activityhead {
  text-align:center;
}

#course-view .section td {
  vertical-align:top;
}

#course-view .section .content {
  padding:5px;
  border-style:solid;
  border-width:1px;
  border-left:0px;
  border-right:0px;
}

#course-view .section .side {
  padding:5px;
  border-style:solid;
  border-width:1px;
}

#course-view .section .left {
  border-right:0px;
  text-align:center;
  width: 1.5em;
}

#course-view .section .right {
  border-left:0px;
  text-align:center;
  width: 1.5em;
}

#course-view .current .side {
}

#course-view .section .spacer {
  height:0.5em;
}

#course-view .section .weekdates {
}

.section .activity img.activityicon {
  vertical-align:middle;
  height:16px;
  width:16px;
}

.section img.movetarget {
  height:16px;
  width:80px;
}

body#course-view .unread {
  margin-left: 3em;
} 

body#course-enrol .generalbox {
  margin-top: 20px;
}
body#course-enrol .coursebox {
  margin-top: 20px;
}

body#course-user .graph {
  text-align: center;
}

body#course-user .section,
body#course-user .content {
  margin-left: 30px;
  margin-right: 30px;
}

body#course-user .section {
  border-width:1px;
  border-style:solid;
  padding:10px;
  margin-bottom: 20px;
}

body#course-user .section h2 {
  margin-top: 0px;
}


.headingblock {
  border-width:1px;
  border-style:solid;
  padding:5px;
}

.headingblock .link {
  text-align:right;
}

body#site-index .headingblock,
body#course-view .headingblock {
  margin-bottom: 9px;
}

.coursebox {
  margin-bottom: 8px;
}

.categoryboxcontent,
.courseboxcontent {
  border-width:1px;
  border-style:solid;
}

.courseboxcontent .cost {
  padding-top: 20px;
}


/***
 *** Doc
 ***/

body#doc-contents h1 {
  margin: 1em 0px 0px 0px;
}

body#doc-contents ul {
  list-style-type: none;
  margin: 0px;
  padding: 0px;
  width: 90%;
}


/***
 *** Grades
 ***/

body#grade-index .grades {
  border-width:1px;
  border-style:solid;
  border-collapse: separate;
}

body#grade-index .grades td {
  border-width:0px 1px 0px 1px;
  border-style:solid;
  border-collapse: collapse;
}

body#grade-index .grades .header {
  vertical-align: top;
}

body#grade-index .grades .points,
body#grade-index .grades .percent,
body#grade-index .grades .weighted {
  text-align: right;
}



/***
 *** Login
 ***/

.loginbox {
  margin-top:15px;
}

.loginbox .content {
  border-width:1px;
  border-style:solid;
  padding:15px;
}


/***
 *** Message
 ***/

.message .link {
  vertical-align:middle;
}

table.message .searchresults td {
  padding:5px;
  border-width:1px;
  border-style:solid;
  border-collapse:collapse;
  border-spacing:0px;
}
.message .summary .link {
  text-align:right;
}
.message .heading {
  text-align:center;
}

.message .note {
  text-align:center;
  padding:10px;
}

#message-user .commands span {
  margin-left:10px;
  margin-right:10px;
}

body#message-messages {
  padding:10px;
}


/***
 *** Logs
 ***/

.logtable td,
.logtable th {
  padding-left: 10px;
  padding-right: 10px;
}

.logtable th {
  text-align:left;
}

/***
 *** Tabs
 ***/

.tabs {
  width: auto;
  margin-bottom: 15px;
  border-collapse: collapse;
}

.tabs td {
  padding: 0px;
}

.tabs .side {
  width: 50%;
  border-style: solid;
  border-width: 0px 0px 1px 0px;
}

.tabrow {
  border-collapse:collapse;
  width:100%;
  margin: 1px 0px 0px 0px;
}

.tabrow td {
  padding:0 0 0px 14px;
  border-style: solid;
  border-width: 0px 0px 1px 0px;
}

.tabrow th {
  display:none;
}
.tabrow td .tablink {
  display:block;
  padding:10px 14px 4px 0px;
  text-align:center;
  white-space:nowrap;
  text-decoration:none;
}
.tabrow .last {
  display:block;
  padding:0px 1px 0px 0px;
}
          
.tabrow td.selected {
  border-width: 0px;
}


/***
 *** User
 ***/

.userinfobox {
  margin-bottom:5px;
  border-width: 1px;
  border-style: solid;
  border-collapse: separate;    
}

.userinfobox .left {
  padding: 10px;
  width: 100px;
  vertical-align: top;
}

.userinfobox .content {
  padding: 10px;
  vertical-align: top;
}

.userinfobox .links {
  width: 100px;
  padding: 5px;
  vertical-align: bottom;
}

.userinfobox .list td {
  padding: 3px;
}

.userinfobox .username {
  padding-bottom: 20px;
}    


table.userinfobox {
  width: 80%;
  margin-left: 10%;
  margin-right: 10%;
}

table.groupinfobox {
  width: 60%;
  margin-left: 20%;
  margin-right: 20%;
  border-width:1px;
  border-style:solid;
  margin-bottom: 20px;
}

.groupinfobox .left {
  padding: 10px;
  width: 100px;
  vertical-align: top;
}

body#user-index h2 {
  text-align: center;
}

body#user-index #longtimenosee,
body#user-index #showall {
  text-align: center;
}

body#user-index #showall {
  margin: 10px 0px;
}

body#user-index table#teachers,
body#user-index table#students {
  margin: auto;
  width: 80%;
}
body#user-index table#teachers td,
body#user-index table#teachers th,
body#user-index table#students td,
body#user-index table#students th {
  vertical-align: middle;
  text-align: left;
  padding: 4px;
}

body#user-index table.controls {
  width: 100%;
}
body#user-index table.controls tr {
  vertical-align: top;
}
body#user-index table.controls td.right,
body#user-index table.controls td.left {
  padding: 4px;
}
body#user-index table.controls .right {
  text-align: right;
}


/***
 *** Modules: Assignment
 ***/

/***
 *** Modules: Chat
 ***/

/***
 *** Modules: Choice
 ***/

/***
 *** Modules: Forum
 ***/

.forumheaderlist,
.forumpost {
  border-width:1px;
  border-style:solid;
  border-collapse:separate;
}

.forumpost {
  margin-top: 15px;
}

.forumpost .topic {
  padding: 4px;
  border-style:solid;
  border-width: 0px;
  border-bottom-width: 1px;
}

.forumpost .commands {
  padding-top: 0.5em;
  text-align:right;
  clear: both;
}

.forumpost .ratings {
  padding-top: 1em;
  text-align:right;
}

.forumpost .attachments {
  padding: 7px;
  text-align:right;
}

.forumpost .content {
  padding: 4px;
}

.forumpost .footer {
  padding-top: 0.5em;
  text-align:right;
}

.forumpost .link {
  padding-top: 0.5em;
  text-align:right;
}

.forumpost .left {
  width: 35px;
  padding: 4px;
  text-align: center;
  vertical-align: top;
}

.mod-forum .indent {
  margin-left: 30px;
}

body#user-view .forumpost,
.course .forumpost {
  width: 100%;
}

body#mod-forum-search .c0 {
  text-align: right;
}

body#mod-forum-search .introcontent {
  padding: 15px;
}

.forumolddiscuss {
  text-align: right;
}

.forumheaderlist {
  width: 100%;
}

.forumheaderlist td {
  border-width:1px 0px 0px 1px;
  border-style:solid;
}

.forumheaderlist .replies {
  text-align: center;
  white-space: nowrap;
}

.forumheaderlist .picture {
  width: 35px;
}

.forumheaderlist .discussion .starter {
  vertical-align: middle;
}

.forumheaderlist .lastpost {
  white-space: nowrap;
  text-align: right;
}

.forumheaderlist .discussion .author {
  white-space: nowrap;
}
.forumolddiscuss {
  text-align:right;
}
.forumaddnew,
.forumnodiscuss,
.noticeboxcontent {
  text-align:center;
}
#mod-forum-view .unread {
  padding-left: 3px;
  padding-right: 3px;
}
#mod-forum-discuss .forumpost.unread .content {
  border-style: solid;
  border-width: 2px;
}
#mod-forum-index .unread img,
#mod-forum-view .unread img 
{
  margin-left: 5px;
}

#email .unsubscribelink {
  margin-top:20px;
  border-width: 0px 1px 0px 0px;
  border-style: solid;
  text-align:center;
}


/***
 *** Modules: Glossary
 ***/

.glossarypost .commands {
  width: 200px;
  white-space: nowrap;
}

#mod-glossary-comments .glossarypost,
#mod-glossary-comment .glossarypost {
      margin-top: 15px;
}

.entryboxheader {
  border-width: 1px 1px 0px 1px;
  border-style: solid;
}

.entrybox {
  border-width: 0px 1px 1px 1px;
  border-style: solid;
}

.glossarypost {
  width: 95%;
  border-width:1px;
  border-style:solid;
  border-collapse:separate;
  margin-bottom: 5px;
  text-align: left;
}


.entrylist {
  border-width:0px;
}

.entrylowersection {
  padding-top: 10px;
}
.entrylowersection table{
  width: 100%;
}
.entrylowersection .aliases {
  text-align:center;
}
.entrylowersection .icons,
.entrylowersection .ratings {
  text-align:right;
  padding-right: 5px;
}
.entrylowersection .ratings {
  padding-bottom: 2px;
}
.categoryheader {
  width: 95%;
}
.glossaryformatheader {
  width: 90%;
}

.glossarypost .entry {
  padding: 3px;
}

.glossarypost .picture {
  width: 35px;
}

.glossarycomment {
  border-width:1px;
  border-style:solid;
  border-collapse:separate;
  margin-bottom: 5px;
  text-align: left;
}


.glossarycomment .entry {
  padding: 3px;
}

.glossarycomment .picture {
  width: 35px;
}

.glossarycomment .icons {
  text-align: right;
}

.glossarydisplay {
  width: 70%;
}

.glossarydisplay .tabs {
  width: 100%;
}

.glossarydisplay .separator {
  width: 4px;
}

.glossarydisplay .tabs .selected,
.glossarydisplay .tabs .inactive,
.glossarydisplay .tabs .general {
}

.glossarypopup {
  width: 95%;
}

.glossaryapproval {
  width: 100%;
}

.mod-glossary .tabs {
  margin-bottom: 0px;
}
.mod-glossary .tabs .side {
  border-style: none;
  border-width: 0px;
  width: auto;
}


/***
 *** Modules: Journal
 ***/
#mod-journal-view .lastedit,
#mod-journal-view .editend {
  margin: 5px;
  text-align: center;
}
#mod-journal-view .feedbackbox {
  width: 75%;
  border-collapse: separate;
}
#mod-journal-view .entrycontent {
  padding: 3px;
}
#mod-journal-view .picture {
  width: 35px;
}
#mod-journal-view .grade {
  text-align: right;
}
#mod-journal-view .info {
  margin-bottom: 5px;
  text-align: right;
}


/***
 *** Modules: Label
 ***/

/***
 *** Modules: Lesson
 ***/

/***
 *** Modules: Quiz
 ***/

.feedbacktext {
  display:block;
  text-align:right;
}

body#mod-quiz-report table#attempts,
body#mod-quiz-report table#commands,
body#mod-quiz-report table#itemanalysis
{
  width: 80%;
  margin: auto;
}
body#mod-quiz-report table#attempts {
  margin: 20px auto;
}
body#mod-quiz-report table#attempts .header,
body#mod-quiz-report table#attempts .cell
{
  padding: 4px;
}
body#mod-quiz-report table#attempts .header .commands {
  display: inline;
}
body#mod-quiz-report table#attempts .picture {
  width: 40px;
}
body#mod-quiz-report table#attempts td {
  border-left-width: 1px;
  border-right-width: 1px;
  border-left-style: solid;
  border-right-style: solid;
  vertical-align: middle;
}
body#mod-quiz-report table#attempts .header {
  text-align: left;
}
body#mod-quiz-report table#attempts .picture {
  text-align: center !important;
}
body#mod-quiz-report .controls {
  text-align: center;
}



/***
 *** Modules: Resource
 ***/

/***
 *** Modules: Scorm
 ***/

/***
 *** Modules: Survey
 ***/

/***
 *** Modules: Wiki
 ***/
 
#wiki-view {
  padding-top:1em;
}

#wiki-view td.generalboxcontent {
  background-color:#fff;
}

/***
 *** Modules: Workshop
 ***/
