.navbar .glyphicon {
    font-size: 0.75em;
    opacity: 0.85;
}
.table {
    border-bottom: 1px solid #ddd;
}

#main {
    padding-top: 50px;
    padding-bottom: 50px;
}

table td, th {
    text-align: center;
}

/* Reading table */

img.book {
    width: 200px;
}


/* Staff page profile pictures */

.profilepic {
    display: block;
    margin: 0 auto;
    height: 200px;
    text-align: center;
}
.profilepic img {
    /* Scaled images look a bit better in IE now */
    -ms-interpolation-mode: bicubic;
    max-height: 100%;
    max-width: 100%;
    height: auto;
    width: auto;
    image-orientation: from-image;
}
.profile p {
    text-align: center;
}
.profile {
    padding-top: 30px;
}
.staff {
    padding-top: 10px;
    font-size: 130%;
    text-align: center;
}

/* Calendar styling */

table {
    border: 1px solid #eee;
    margin: auto;
    font-size: 14px;
    width: 100%;
}
table td {
    padding: 5px;
    margin: 4px;
    border: 1px solid #ccc;
    vertical-align: middle;
}
table#calendar .td-left {
    text-align: left;
}
table th {
    padding: 5px;
    margin: 4px;
    border: 1px solid #ccc;
    background-color: #2c3e50;
    color: #fff;
    font-weight: normal;
}
table#calendar .hw0 {
    background-color: #e8f0c8;
}
table#calendar .hw1 {
    background-color: #b7f7fd;
}
table#calendar .hw2 {
    background-color: #ede7ff;
}
table#calendar .hw3 {
    background-color: #ffdfdb;
}
table#calendar .hw4 {
    background-color: #e8f0c8;
}
table#calendar .hw5 {
    background-color: #b7f7fd;
}
table#calendar .hw6 {
    background-color: #ede7ff;
}
table#calendar .hw7 {
    background-color: #ffdfdb;
}
table#calendar .hw8 {
    background-color: #e8f0c8;
}
table#calendar .hw9 {
    background-color: #b7f7fd;
}
table#calendar .proj1 {
    background-color: #c4e6ff;
}
table#calendar .proj2 {
    background-color: #cbe9b0;
}
table#calendar .proj3 {
    background-color: #ffe4b4;
}
table#calendar .proj4 {
    background-color: #dee0ff;
}
table#calendar .proj5 {
    background-color: #ffdee0;
}
table#calendar .gray-bg {
    background: #eee;
}
table#calendar tr th:nth-child(2) {
    width: 60px;
}
table#calendar tr:not(:first-child):hover td:not(.weeknum) {
    background: #ffffd8;
}
table#calendar .today {
    background-color: #ffffd8;
}
table#calendar .blended-assignment {
    background: linear-gradient(to right, var(--start-color), var(--end-color));
}

.scrollTodayButton {
background-color : #2c3e50;
color: white;
padding: 10px 20px;
}

.scrollTodayButton:hover {
    background-color: #141c24;
}

#scrollToday {
position: fixed;
bottom: -4px;
right: 20px;
}

/* Schedule styling */

table#schedule {
    margin-top: 20px;
    width: 100%;
}
table#schedule td {
    border: 1px solid #ccc;
    font-size: 14px;
    vertical-align: middle;
}
table#schedule tr th:first-child {
    width: 12%;
}
table#schedule th {
    width: 17.6%;
    border: 1px solid #ccc;
    background-color: #eee;
}
table#schedule tr:first-child th {
    height: 40px;
}
table#schedule td[colspan=3] {
    width: 8.8%;
}
table#schedule td[colspan=2] {
    width: 5.86666667%;
}
.sched-lec {
    background-color: #c4e6ff;
}
.sched-dis {
    background-color: #cbe9b0;
}
.min30 {
    height: 30px;
}
.sched-oh {
    background-color: #ffe4b4;
}
.sched-oh-prof {
    background-color: #ffffd8;
}

table#schedule td.noborder {
    border: none;
}


/* Special styles for anchors, so that when you go to an anchor, extra space is added for our
 * fixed header. */
a[name] {
    display: block;
    position: relative;
    top: -70px;
    visibility: hidden;
}

a {
    font-weight: bold;
}

.row.display-flex {
  display: flex;
  flex-wrap: wrap;
}
.row.display-flex > [class*='col-'] {
  display: flex;
  flex-direction: column;
}
