html , body {
    height: 100%;
    margin: 0px;
    padding: 0px;
    background: #4472c4;
}

img#back {
    top: 0px;
    left: 0px;
    padding-left: 19px;
    margin-bottom: -25px;
} 

#bbox {
    margin-left: 30px;
    margin-right: 30px;
    margin-top: 30px;
    padding: 10px;
    background: #ffffff;
    border: 1px solid black;
}

#settings {
    padding: 1px;
    margin-right: 5px;
    float: right;
    border: 0px;
}

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

td , th {
    text-align: left;
    padding-left: 2px;
    padding-right: 8px;
    padding-top: 2px;
    padding-bottom: 2px;
}

tr.alternate:nth-child(odd) {
    background: #ffffc0;
}

tr.alternate:nth-child(even) {
    background: #fffff0;
}

.msg {
    border: black solid 1px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.msg-seen {
    background: #d3ffbb;
}

.msg-new {
    background: #ffdd75;
}

.msg-seen-self {
    background: #eeffe4;
}

.msg-new-self {
    background: #ffecb0;
}

.act {
    border: black solid 1px;
    margin-top: 5px;
    margin-bottom: 5px;
    padding: 10px;
}

.act-todo {
    background: #ffc796;
}

.act-done {
    background: #ccffcc;
}

a {
    color: #555f9b;
    text-decoration: none;
}

a:hover {
    color: #555f9b;
    text-decoration: underline;
}

a:visited {
    color: #555f9b;
    text-decoration: none;
}

.tile a {
    color: inherit;
}

.tile a:hover {
    color: inherit;
}

.tile a:visited {
    color: inherit;
}

select {
    background: #d3ffbb;
    border: black solid 1px;
}

select.changed {
    background: #f8e6a9 !important;
    border: black solid 1px;
}

select.improved {
    background: #bde5a8;
    border: black solid 1px;
}

select.improved2 {
    background: #b0d890;
    border: black solid 1px;
}

input {
    background: #d3ffbb;
    border: black solid 1px;
}

input.changed {
    background: #f8e6a9;
    border: black solid 1px;
}

input.button {
    background: #82d456;
    border: black solid 1px;
}

.hidden {
    visibility: hidden;
}

a.help {
    text-decoration: none;
}

a.help img {
    position: relative;
    top: 2px;
    border: 0px none;
}

a.help span.internal {
    display: none;
}

a.help span.external {
    padding-right: 10px;
}

a.help:hover span.external {
    z-index: 20;
    display: inline;
    position: relative;
    left: -15px;
    top: 10px;
    padding-right: 10px;
}

a.help:hover span.internal {
    z-index: 25;
    display: block;
    position: absolute;
    left: 0px;
    top: 10px;
    background: #f6f0c3;
    padding: 5px;
    border: 1px solid #000000;
    color: #000000;
    width: 350px;
}

img.edit {
    position: relative;
    top: 2px;
    border: 0px none;
}

div.outerEdit {
    position: relative;
    left: -15px;
    top: 10px;
}

div.edit {
    z-index: 20;
    position: absolute;
    left: 0px;
    top: 0px;
    padding: 5px;
    border: 1px solid black;
    background: whitesmoke;
    width: 500px;
}

div.editHidden {
    display: none;
}

div.editShown {
    display: inline;
}

.pupil-details {
    float: left;
}

.pupil-major {
    float: left;
    padding-left: 30px;
}

.notice {
    color: #ff0000;
    font-weight: bold;
}

.extraInfo {
    z-index: 10;
    display: block;
    position: absolute;
    left: 120px;
    top: 240px;
    background: #f0f0f0;
    padding: 10px;
    border: 2px solid #000000;
    color: #000000;
    width: 600px;
}

.extraInfoHw {
    z-index: 10;
    display: block;
    position: absolute;
    left: 120px;
    top: 240px;
    background: #f0f0f0;
    padding: 10px;
    border: 2px solid #000000;
    color: #000000;
    width: 600px;
}

.tile {
    margin: 5px;
    padding: 5px;
    border: 1px solid;
    width: 300px;
    float: left;
}

div.calTotal {
    width: 1050px;
}

div.calMonth {
    margin: 10px;
    width: 480px;
    float: left;
}

span.calHead {
    font-weight: bold;
}

span.calEmpty {
    width: 60px;
    display: inline-block;
}

span.calFree {
    width: 60px;
    display: inline-block;
    text-align: center;
}

span.calSunday {
    width: 60px;
    display: inline-block;
    text-align: center;
    color: red;
}

span.calLesson {
    width: 60px;
    display: inline-block;
    text-align: center;
    background: limegreen;
}

span.calEvent {
    width: 60px;
    display: inline-block;
    text-align: center;
    background: orange;
}

