/* Apply a natural box layout model to all elements (@paulirish) */
*,
*:before,
*:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* Green color: #42b983 */

/**
 * General and content
 **/
body {
    font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    color: #34495e;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

p {
    word-spacing: 0.05em;
}

h1, h2, h3, h4, strong {
    position: relative;
    font-weight: 600;
    color: #2c3e50;
}

a {
    text-decoration: none;
    color: #34495e;
}

code, pre {
    font-family: "Inconsolata", Monaco, courier, monospace;
    font-size: 0.9em;
    background-color: #f3f3f3;
    -webkit-font-smoothing: initial;
    -moz-osx-font-smoothing: initial;
}

code {
    color: #525252;
    padding: 2px 6px;
    margin: 0 2px;
    border: 1px solid #e6e6e6;
    white-space: nowrap;
    border-radius: 3px;
}

.info code {
    background-color: #ffffff;
    border-color: #c9c9c9;
}

.highlight {
    box-shadow: 0 1px 1px rgba(0,0,0,0.125);
    position: relative;
}

.highlight .toggle-lineno {
    position: absolute;
    top: 7px;
    right: 6px;
    background: transparent;
    border: 0;
    color: #42b983;
    font-size: 0.9em;
    display: none;
}

.highlight .codepen-button {
    position: absolute;
    bottom: 7px;
    right: 6px;
    background: transparent;
    border: 0;
    color: #42b983;
    font-size: 0.9em;
    display: none;
}

.highlight:hover .toggle-lineno,
.highlight:hover .codepen-button {
    display: inline;
}

.highlight .toggle-lineno:hover,
.highlight .codepen-button:hover {
    text-decoration: underline;
}

.highlight .toggle-lineno .show {
    display: none;
}

.highlight.toggle .toggle-lineno .show {
    display: inline;
}

.highlight.toggle .toggle-lineno .hide {
    display: none;
}

.highlight pre code,
.highlighter-rouge pre code {
    display: block;
    position: relative;
    padding: 1.7em 1em;
    margin: 0;
    overflow-x: auto;
    background-color: #f3f3f3;
    line-height: 1.1em;
    font-size: 0.95em;
}

.highlighter-rouge pre code {
    padding-left: 2em;
}

.highlight table {
    margin: 0;
    width: auto;
}
.highlight table tbody {
    border: 0;
}

.highlight table tbody td {
    text-align: left;
    border: 0;
    padding: 0;
}

.highlight table tbody pre {
    margin: 0;
}
.highlight table .lineno {
    padding: 0 1.2em;
}

.highlight .lineno {
    color: #999;
    display: inline-block;
    padding: 0.15em 1.2em;
    margin: 0;
}

/* Hide line numbers */
.highlight.toggle .lineno {
    visibility: hidden;
}

.highlight code {
    border: 0;
    white-space: inherit;
}

.content {
    max-width: 720px;
    min-height: 300px; /* TODO temporary? */
    margin: 0 auto;
    padding-top: 1em;
}

.content.index {
    max-width: 750px;
}

.highlight,
.content figure,
.content p,
.content ul,
.content ol {
    margin: 1em 0 1em 0.8em;
}

.content p,
.content ul,
.content ol {
    line-height: 1.6em;
    text-align: justify;
}

.content a {
    color: #42b983;
    font-weight: 600;
}

.content a:hover {
    text-decoration: underline;
}

.content p img {
    display: block;
    margin: 1.5em auto 1.2em auto;
    max-width: 100%;
}

/* TODO better solution.. */
.content p img + em {
    display: block;
    text-align: center;
    font-style: normal;
    margin-bottom: 2em;
}

.contribute {
    margin-top: 4em;
    margin-left: 0.8em;
    padding-top: 2em;
    border-top: 1px solid #e5e5e5;
    font-size: 0.9em;
    color: #7f8c8d;
}

.contribute p {
    margin-left: 0;
}

table {
   width: 100%;
   max-width: 100%;
   margin: 20px auto;
   border-spacing: 0;
   border-collapse: collapse;
}

table tbody {
    border-bottom: 1px solid #dddddd;
}

th {
    text-align: left;
}

table thead th {
    vertical-align: bottom;
    border-bottom: 2px solid #dddddd;
    padding: 8px;
}

table tbody td {
   padding: 8px;
   vertical-align: top;
   border-top: 1px solid #dddddd;
}

table.small tbody td {
    font-size: 0.9em;
}

table tbody tr:nth-child(odd) {
    background: #f3f3f3;
}

/**
 * Grid
 **/
.row {
    clear: both;
}
.row:after {
    content: "";
    display: table;
    clear: both;
}

.col-6 {
    float: left;
    padding: 1.33333%;
    margin: 1.33333%;
    width: 44.666667%;
}

/**
 * Index
 **/

.index .brand {
    display: block;
    text-align: center;
}

.index .content-header {
    text-align: center;
}

.index .content-list {
    padding-left: 0;
    list-style: none;
    text-align: center;
}

.index .content-list li {
    margin-bottom: 10px;
}

.index .course-name,
.index .blog-title {
    font-size: 1.4em;
    font-weight: 200;
    display: block;
    color: #42b983;
}

.index.content a:hover {
    text-decoration: none;
}

.index .content-list a:hover .course-name,
.index .content-list a:hover .blog-title {
    text-decoration: underline;
}

.index .course-code,
.index .course-credits,
.index .blog-date {
    color: #838E8F;
}

/**
 * Navigation
 **/
.header {
    box-shadow: 0 0 4px rgba(0,0,0,0.35)
}

.header-inner {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    padding: 25px 0;
}

.brand {
    display: inline-block;
}

.navigation {
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: 25px;
}

.navigation li {
    display: inline-block;
    margin: 0 0.6em;
}

.navigation a {
    display: inline-block;
    padding-bottom: 3px;
}

.navigation a.current,
.navigation a:hover {
    border-bottom: 3px solid #42b983;
}

.navigation .submenu {
    display: none;
}

/**
 * Footer
 **/
.footer {
    background: #f3f3f3;
    padding: 2em 0;
    margin-top: 4em;
}

.footer-inner {
    max-width: 800px;
    margin: 0 auto;
}

.footer .license,
.footer .fork,
.footer-links {
    display: inline-block;
    color: #687374;
    font-size: 0.9em;
}

.footer .license,
.footer .fork {
    width: 36%;
    margin-right: 3em;
    vertical-align: top;
}

.footer-links {
    margin-right: 0;
    width: 15%;
}

.footer a {
    color: #42b983;
}

.footer a:hover {
    text-decoration: underline;
}

/**
 * Course list
 **/
.course-list-header {
    text-align: center;
    margin-bottom: 1em;
}
.content .course-list {
    text-align: center;
    list-style: none;
    padding: 0;
}
.course-list li {
    margin-bottom: 1em;
}
.content .course-list li a {
    text-align: center;
}
.content .course-list a:hover {
    text-decoration: none;
}
.content .course-list a:hover .course-name {
    color: #42b983;
}
.course-list .course-name {
    font-size: 1.5em;
    font-weight: 200;
    color: #34495e;
    display: block;
}
.course-list .course-code {
    color: #838E8F;
    margin-left: 1.1em;
}
.course-list .course-credits {
    color: #838E8F;
    margin-left: 1.1em;
}

/**
 * Course and blog sidebar
 **/
.sidebar {
    margin-left: 2em;
    margin-top: 1em;
    position: absolute;
    max-width: 19em;
}

.blog .sidebar .blog-overview .blog-overview-submenu {
    font-size: 0.9em;
}

.fix-sidebar .sidebar {
    position: fixed;
    top: 0;
    overflow-y: auto;
    max-height: 85%;
}

.toggle-sidebar {
    display: none;
    text-align: center;
    font-size: 1.5em;
    line-height: 0.8em;
    height: 32px;
    cursor: pointer;
}

.toggle-sidebar:hover {
    background: #f3f3f3;
}

.sidebar h3.course-name {
    font-size: 16px;
    max-width: 270px;
}

.course-name a,
.blog-header a {
    font-weight: 200;
}

.course-name a:hover,
.blog-header a:hover {
    color: #42b983;
}

.course-name small {
    font-size: 0.8em;
    margin-left: 0.8em;
    color: #727b7c;
}

.course-overview,
.blog-overview {
    list-style: none;
    padding-left: 0.8em;
}

.course-overview-element,
.blog-overview-element {
    color: #727b7c;
    font-size: 0.95em;
    line-height: 1.8em;
    cursor: pointer;
}

.course-overview-element a {
    color: #727b7c;
}

.course-overview-element a:hover {
    color: #42b983;
}

.course-overview-element .expand {
    display: none;
    color: #42b983;
    margin-left: 0.5em;
}

.course-overview-element.toggle .expand,
.course-overview-element:hover .expand {
    display: inline;
}

.course-overview-submenu {
    display: none;
    list-style: none;
    padding-left: 1em;
}

.blog-overview-submenu {
    list-style: none;
    padding-left: 1em;
}

.blog-overview-submenu a small,
.course-overview-submenu a small {
    margin-left: 0.6em;
    font-size: 0.9em;
    color: #758383;
}

.course-overview-element.toggle + .course-overview-submenu {
    display: block;
}

.course-overview-submenu a,
.blog-overview-submenu a {
    color: #4F5858;
    line-height: 1.8em;
}

.course-overview-submenu a.active,
.course-overview-submenu a:hover,
.blog-overview-submenu a.active,
.blog-overview-submenu a:hover {
    border-bottom: 2px solid #42b983;
}

/**
 * Blog
 **/
.blog-post {
    margin-bottom: 2em;
}

.blog-post-title {
    margin-bottom: 5px;
}

.blog-post-title a {
    color: #34495e;
}

.blog-post-title a:hover {
    color: #42b983;
    text-decoration: none;
}

.blog-post .blog-post-date {
    color: #34495e;
    display: block;
    font-size: 0.9em;
}

.blog-post-date:hover {
    color: #42b983;
    text-decoration: none;
}

.blog-post-excerpt p {
    margin-left: 0.5em;
}

/**
 * Pagination
 **/
.blog .pagination-container {
    margin-top: 3em;
}

.blog .pagination {
    list-style: none;
    text-align: center;
    padding-left: 0;
    font-size: 1.2em;
}

.blog .pagination li {
    display: inline-block;
}

.blog .pagination li a,
.blog .pagination li span {
    padding: 0.3em 0.5em;
}

/**
 * Contact
 **/
.member-list li {
    margin-bottom: 1em;
}

.member-list span {
    display: block;
}

.member-list .member-name {
    font-size: 1.2em;
}

.member-list .member-email,
.member-list .member-phone {
    color: #606A74;
}

/**
 * Info
 **/
.content p.info {
    padding: 12px 24px 12px 30px;
    margin: 2em 0 2em 0.8em;
    border-left: 4px solid #42A3B9;
    background-color: #f3f3f3;
    position: relative;
    border-top-left-radius: 0px;
    border-top-right-radius: 0px;
    box-shadow: 0 1px 1px rgba(0,0,0,0.125);
}

.content p.info:before {
    position: absolute;
    top: 50%;
    margin-top: -15px;
    left: -17px;
    background-color: #42A3B9;
    color: #fff;
    content: "i";
    width: 30px;
    height: 30px;
    border-radius: 100%;
    text-align: center;
    line-height: 30px;
    font-weight: bold;
    font-family: Georgia;
}

/**
 * Top link
 **/
.up {
    display: none;
    position: fixed;
    bottom: 2.3em;
    left: 2.1em;
    font-size: 1.4em;
}

.fix-sidebar .up {
    display: block;
}

.up a {
    padding: 6px 20px 11px 20px;
    background: #f0f0f0;
    border-radius: 4px;
    box-shadow: 0 1px 1px rgba(0,0,0,0.23);
}

.up a:hover {
    background: #eaeaea;
}

/**
 * Header anchor
 **/
.header-anchor {
    display: none;
}

.header-anchor:hover,
.content h1:hover .header-anchor,
.content h2:hover .header-anchor,
.content h3:hover .header-anchor {
    display: inline;
}

.header-anchor:hover::after {
    color: #42b983;
}

.header-anchor::after {
    content: "#";
    color: #888888;
    font-size: 0.8em;
    padding: 4px 6px;
    position: absolute;
}

/**
 * Gridcalculator
 **/
#grid-calculator {
    text-align: center;
    padding: 10px;
    margin-bottom: 30px;
}

#grid-calculator #grid-width,
#grid-calculator #grid-column,
#grid-calculator .other,
#grid-calculator #grid-columns,
#grid-calculator #grid-margin,
#grid-calculator #grid-padding,
#grid-calculator #grid-border,
#grid-calculator #grid-result {
    display: inline-block;
    margin-right: 10px;
}

#grid-calculator #grid-width,
#grid-calculator #grid-margin,
#grid-calculator #grid-padding,
#grid-calculator #grid-border {
    width: 90px;
    border: 1px solid #dddddd;
    padding: 4px 8px;
}

#grid-calculator #grid-width:focus,
#grid-calculator #grid-margin:focus,
#grid-calculator #grid-padding:focus,
#grid-calculator #grid-border:focus {
    outline: none;
    border-color: #42b983;
}

#grid-calculator #grid-column,
#grid-calculator .other,
#grid-calculator #grid-result {
    font-size: 1.2em;
}

/**
 * Percent calculator
 */
#percent-calculator {
    text-align: center;
    padding: 10px;
    margin-bottom: 30px;
}

#percent-calculator #target-width,
#percent-calculator #context-width,
#percent-calculator #decimal-result,
#percent-calculator #percent-result,
#percent-calculator .other {
    display: inline-block;
    margin-right: 10px;
}

#percent-calculator #target-width,
#percent-calculator #context-width {
    width: 90px;
    border: 1px solid #dddddd;
    padding: 4px 8px;
}

#percent-calculator #target-width:focus,
#percent-calculator #context-width:focus {
    outline: none;
    border-color: #42b983;
}

#percent-calculator #decimal-result,
#percent-calculator #percent-result,
#percent-calculator .other {
    font-size: 1.2em;
}

/**
 * Iframes
 **/
.video {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 35px;
    height: 0;
    overflow: hidden;
}

.video iframe {
    position: absolute;
    top:0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/* Hide the extra div from slideshare by default. */
.video div { display: none; }

/**
 * Web App
 **/
body .web-app-nav-container {
    display: none;
}

.standalone .web-app-nav-container {
    display: block;
    background: white;
}

.standalone .web-app-nav-container {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 200;
}

.standalone .web-app-subnav {
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    border-top: 1px solid #42b983;
}

.standalone .web-app-subnav:after {
    content: "";
    display: table;
    clear: both;
}

.standalone .web-app-subnav li {
    float: left;
    width: 25%;
    padding: 10px 0;
    border-right: 1px solid #42b983;
    color: #328962;
    cursor: pointer;
}

.standalone .web-app-subnav li:last-child {
    border: 0;
    margin-top: -4px;
}

.standalone .header .brand {
    display: none;
}

.standalone .header {
    box-shadow: none;
}

.standalone .header .header-inner {
    padding: 10px 0;
}

.standalone .navigation {
    position: static;
    margin: 0 auto;
    padding-left: 0;
    text-align: center;
    border: 1px solid #42b983;
    border-radius: 4px;
    max-width: 400px;
}
.standalone .navigation:after {
    content: "";
    display: table;
    clear: both;
}

.standalone .navigation li {
    display: inline;
    float: left;
    width: 33.3%;
    border-right: 1px solid #42b983;
    margin: 0;
}

.standalone .navigation li:last-child {
    border-right: 0;
}

.standalone .navigation a {
    width: 100%;
    display: inline-block;
    font-weight: 200;
    text-decoration: none;
    color: #42b983;
    padding-top: 8px;
    padding-bottom: 8px;
    letter-spacing: 1px;
}

.standalone .navigation a.current,
.standalone .navigation a:hover,
.standalone .navigation a:active {
    background: #42b983;
    color: white;
    border: 0;
}

.standalone .footer {
    display: none;
}

.standalone .content {
    margin: 1em auto 3em auto;
}

.standalone .toggle-sidebar {
    display: none;
}

.standalone .sidebar {
    position: fixed;
    top: 0;
    max-height: 93%;
    overflow: auto;
    box-shadow: none;
}

/**
 * Media Queries
 **/
@media print {
    #header,
    #sidebar,
    .footer,
    .contribute,
    .up,
    form {
        display: none !important;
    }

    body {
        color: Black !important;
    }

    body .content {
        max-width: 100%;
        margin: 4em 3em;
    }

    code {
        border-color: #eeeeee;
        border-radius: 2px;
    }

    .highlight {
        box-shadow: none;
    }

    .highlight .lineno {
        color: #bbbbbb;
        border-right: 1px solid #dddddd;
        padding-left: 0.5em;
        padding-right: 1.1em;
        margin-right: 1em;
    }

    .highlight pre code {
        font-size: 8pt !important;
        padding: 1.2em 0;
    }

    .content a {
        color: #2B7A56 !important;
    }

    .content p,
    .content ul,
    .content ol,
    .content a {
        font-size: 9pt !important;
        text-align: left;
    }

    .highlight,
    .content figure,
    .content p,
    .content ul,
    .content ol {
        margin: 0.8em 0 0.8em 0;
    }

    .content h1 { font-size: 16pt !important; }
    .content h2 { font-size: 14pt !important; }

    .content p.info:before { display: none; }
    .content p.info {
        padding: 10px 10px 10px 20px;
        margin: 1em 1em 1em 1.2em;
        border-left: 2px solid #dddddd;
        box-shadow: none;
        font-size: 8pt !important;
    }
}

@page {
    margin: 4em 3em;

    @bottom {
        content: counter(page) "/" counter(pages);
    }
}

@media (max-width: 1400px) {
    .sidebar {
        margin-left: 3em;
    }
    .sidebar .course-name small {
        display: block;
        text-align: center;
    }
    .content {
        margin-left: 21em;
        padding-right: 15px;
    }

    .default .content {
        margin: 0 auto;
        padding-right: 0;
        padding-left: 0;
    }
}

@media (max-width: 1000px) {
    .header-inner {
        max-width: 95%;
    }
    .header .brand {
        position: relative;
        left: 80px;
    }
    .navigation {
        right: 15px;
    }
}

@media (max-width: 900px) {
    .footer {
        margin-top: 2em;
    }
    .footer-inner {
        max-width: 100%;
    }
    .footer .license,
    .footer .fork,
    .footer-links {
        display: block;
        width: 80%;
        margin: 0 auto 1.3em auto;
    }

    .footer-links {
        text-align: center;
        padding-left: 1.6em;
    }

    .footer-links li {
        display: inline-block;
        margin-right: 1em;
    }
    .content table thead th {
        font-size: 0.9em;
    }
    .content table tbody td {
        font-size: 0.7em;
    }
}

@media (max-width: 800px) {
    .header .brand {
        left: 20px;
    }

    .content {
        max-width: 100%;
        padding: 1em 1.4em;
        margin: 1em auto 0 auto;
    }

    .content p,
    .content ul,
    .content ol,
    .content a {
        font-size: 0.9em;
        text-align: left;
    }

    .index .content-list,
    .index .content-list a {
        text-align: center;
    }

    .highlight,
    .content figure,
    .content p,
    .content ul,
    .content ol {
        margin: 0.8em 0 0.8em 0;
    }

    .content h1 {
        font-size: 1.7em;
    }
    .content h2 {
        font-size: 1.3em;
    }

    .highlight pre code {
        font-size: 0.9em;
        padding: 1.2em 0;
    }

    .up {
        display: none !important;
    }

    .sidebar {
        margin: 0;
        position: absolute;
        text-align: center;
        width: 100%;
        max-width: 100%;
        background: white;
        border-top: 1px solid #eee;
        box-shadow: 0 2px 2px rgba(0,0,0,0.1);
        z-index: 100;
    }

    .sidebar .course-name small {
        display: inline;
        text-align: left;
    }

    .contribute {
        margin-top: 3em;
        margin-left: 0;
        padding-top: 1em;
    }

    .sidebar .course-name,
    .sidebar .course-overview,
    .sidebar .blog-header,
    .sidebar .blog-overview {
        display: none;
    }

    .sidebar h3.course-name {
        margin: 0 auto;
    }

    .sidebar.toggle .course-name,
    .sidebar.toggle .course-overview,
    .sidebar.toggle .blog-header,
    .sidebar.toggle .blog-overview {
        display: block;
    }

    .course-overview-element,
    .blog-overview-element {
        cursor: auto;
    }

    .course-overview-element:hover .expand,
    .course-overview-element.toggle .expand,
    .course-overview-element .expand {
        display: none;
    }

    .course-overview,
    .blog-overview {
        padding-left: 0;
    }

    .course-overview-submenu,
    .blog-overview-submenu {
        display: block;
        padding-left: 0;
    }

    .course-name,
    .blog-header {
        margin-top: 0.2em;
    }

    .toggle-sidebar {
        display: block;
    }
}

@media (max-width: 650px) {
    .index .col-6 {
        float: none;
        width: 97%;
        padding: 0;
        margin: 1.5em auto;
    }
}

/**
 * TODO: better solution for tables @ smaller devices?
 **/
@media (max-width: 500px) {
    .content table thead th,
    .content table tbody td {
        display: block;
        text-align: left !important;
    }
}

@media (max-width: 370px) {
    .header .brand,
    .header .navigation {
        position: static;
        display: block;
        text-align: center;
    }
    .header .brand {
        margin-bottom: 1em;
    }
}

/**
 * ===============
 * Code Highlight
 * ===============
 **/
.highlight  { background: #ffffff; }
.highlight .c { color: #999988; } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2; } /* Error */
.highlight .k { color: #e96900; } /* Keyword */
.highlight .o { } /* Operator */
.highlight .cm { color: #999988; } /* Comment.Multiline */
.highlight .cp { color: #999999; } /* Comment.Preproc */
.highlight .c1 { color: #999988; } /* Comment.Single */
.highlight .cs { color: #999999; } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd; } /* Generic.Deleted */
.highlight .gd .x { color: #000000; background-color: #ffaaaa; } /* Generic.Deleted.Specific */
.highlight .ge { } /* Generic.Emph */
.highlight .gr { color: #aa0000; } /* Generic.Error */
.highlight .gh { color: #999999; } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd; } /* Generic.Inserted */
.highlight .gi .x { color: #000000; background-color: #aaffaa; } /* Generic.Inserted.Specific */
.highlight .go { color: #888888; } /* Generic.Output */
.highlight .gp { color: #555555; } /* Generic.Prompt */
.highlight .gs { } /* Generic.Strong */
.highlight .gu { color: #aaaaaa; } /* Generic.Subheading */
.highlight .gt { color: #aa0000; } /* Generic.Traceback */
.highlight .kc {  } /* Keyword.Constant */
.highlight .kd { color: #0092db; } /* Keyword.Declaration */
.highlight .kp {  } /* Keyword.Pseudo */
.highlight .kr {  } /* Keyword.Reserved */
.highlight .kt { color: #445588; } /* Keyword.Type */
.highlight .m { color: #42b983; } /* Literal.Number */
.highlight .s { color: #d14; } /* Literal.String */
.highlight .na { color: #008080 } /* Name.Attribute */
.highlight .nb { color: #0092db; } /* Name.Builtin */
.highlight .nc { color: #0092db; } /* Name.Class */
.highlight .no { color: #008080; } /* Name.Constant */
.highlight .ni { color: #800080; } /* Name.Entity */
.highlight .ne { color: #990000; } /* Name.Exception */
.highlight .nf { color: #990000; } /* Name.Function */
.highlight .nn { color: #555555; } /* Name.Namespace */
.highlight .nt { color: #000080; } /* Name.Tag */
.highlight .nv { color: #099999; } /* Name.Variable */
.highlight .ow {  } /* Operator.Word */
.highlight .w { color: #bbbbbb; } /* Text.Whitespace */
.highlight .mf { color: #009999; } /* Literal.Number.Float */
.highlight .mh { color: #009999; } /* Literal.Number.Hex */
.highlight .mi { color: #42b983; } /* Literal.Number.Integer */
.highlight .mo { color: #009999; } /* Literal.Number.Oct */
.highlight .sb { color: #d14; } /* Literal.String.Backtick */
.highlight .sc { color: #d14; } /* Literal.String.Char */
.highlight .sd { color: #d14; } /* Literal.String.Doc */
.highlight .s2 { color: #42b983; } /* Literal.String.Double */
.highlight .se { color: #d14; } /* Literal.String.Escape */
.highlight .sh { color: #d14; } /* Literal.String.Heredoc */
.highlight .si { color: #d14; } /* Literal.String.Interpol */
.highlight .sx { color: #d14; } /* Literal.String.Other */
.highlight .sr { color: #009926; } /* Literal.String.Regex */
.highlight .s1 { color: #d14; } /* Literal.String.Single */
.highlight .ss { color: #990073; } /* Literal.String.Symbol */
.highlight .bp { color: #999999; } /* Name.Builtin.Pseudo */
.highlight .vc { color: #008080; } /* Name.Variable.Class */
.highlight .vg { color: #008080; } /* Name.Variable.Global */
.highlight .vi { color: #008080; } /* Name.Variable.Instance */
.highlight .il { color: #009999; } /* Literal.Number.Integer.Long */





/*
    Table for course plan
*/
#plan th{
    padding: 15px;
    background-color: #ddd;
}

#plan td[rowspan] {
    text-align: center;
    font-weight: bold;
    font-size: 1em;
    vertical-align: middle;
}

#plan .odd{
    background-color: #eee;
}
#plan .even{
    background-color: #fff;
}

#plan .lecture{
    border-right: 5px solid #c1f0b7;
}

#plan .header{
    border-right: 5px solid #eee;
}

#plan .tenta{
    border-right: 5px solid #f04945;
}

#plan .laboration{
    border-right: 5px solid #bfcef0;
}

#plan .assignment td:nth-child(4), #plan .assignment td:nth-child(3){
    font-style: italic;
}
