h1,hr {
    padding: 0
}

a,html {
    color: #000
}

.hint,form {
    position: relative;
    clear: left
}

hr,html {
    width: 100%
}

#login-links span,.js-link {
    text-decoration: underline
}

#prog_filters ul,.fn,.refresh_icon {
    vertical-align: top
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 400;
    src: local('Roboto Light'),local('Roboto-Light'),url(Roboto300.ttf) format('truetype')
}

@font-face {
    font-family: Roboto;
    font-style: normal;
    font-weight: 700;
    src: local('Roboto Medium'),local('Roboto-Medium'),url(Roboto500.ttf) format('truetype')
}

@font-face {
    font-family: Oswald;
    font-style: normal;
    font-weight: 400;
    src: local('Oswald Regular'),local('Oswald-Regular'),url(Oswald400.ttf) format('truetype')
}

html {
    font-family: Roboto,sans-serif;
    font-weight: 400;
    background: #fff;
    overflow-y: scroll
}

.new_day,.popup-title,h1,h2,h3,h4,h5 {
    font-family: Oswald
}

.item,.popup,form {
    overflow: auto
}

body {
    margin: 8px
}

b,strong {
    font-weight: 700
}

.new_day,h1,h2,h3,h4,h5 {
    font-weight: 400
}

h1 {
    font-size: 25px;
    margin: 0 0 8px
}

h1 a {
    text-decoration: none
}

hr {
    position: relative;
    z-index: 2;
    margin: 0;
    border: none;
    height: 2px;
    background: black
}

.hint,input {
    background: #fff
}

a {
    outline: 0
}

.js-link {
    cursor: pointer
}

form {
    z-index: 1
}

input {
    margin: 0 4px 4px 0;
    border: 2px solid #ccc5bb;
    border-radius: 5px;
    padding: 3px
}

input[type=text] {
    box-shadow: none!important
}

.discreet {
    font-size: .875em;
    color: #736f68
}

.disabled {
    color: #ccc5bb!important;
    cursor: auto!important
}

#login-links,#server_info a,.hint {
    color: #88847d
}

#info_view #last-updated span,#info_view .collapse,#info_view .collapse-open,#login-links span,#refresh.enabled,#server_error>div,#tabs li,.day-link,.filters li,.item,.item_star,.popup ul li,ul.popup li {
    cursor: pointer
}

.selected {
    font-weight: 700;
    border-color: maroon!important
}

.hint {
    z-index: 3;
    max-width: 705px;
    font-size: .8em;
    padding-top: 5px
}

.filters,.item,.ls {
    clear: both
}

#scroll,#scroll a,#server_info,#time {
    color: #ccc5bb
}

.popup-wrap {
    position: fixed;
    z-index: 9;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
    background-color: #fff;
    background: rgba(255,255,255,.85)
}

.popup-title {
    font-weight: 400;
    font-size: 1.5em;
    margin-top: 20px
}

.popup {
    display: none!important;
    position: relative;
    top: 20px;
    left: 0;
    right: 0;
    margin: auto;
    max-width: 90%;
    max-height: 84%;
    border: 2px solid black;
    border-radius: 5px;
    padding: 5px;
    text-align: left;
    background: #fff;
    background: rgba(255,255,255,.9)
}

.filters ul,.popup ul,ul.popup {
    margin-top: 0;
    list-style-type: none
}

#login-popup li,#scroll,#server_connect,#time,.filters,.sub-narrow li {
    text-align: center
}

.popup-wrap .popup {
    display: inline-block!important
}

.popup-title+.popup {
    top: 0
}

img.popup {
    position: absolute;
    top: 0;
    bottom: 0
}

#banner,.filters {
    position: relative;
    background: #fff
}

.popup ul,ul.popup {
    width: 300px
}

.popup ul li,ul.popup li {
    width: 150px;
    display: inline-block;
    padding-bottom: 5px;
    line-height: 1
}

.filters {
    z-index: 4;
    padding: 20px 0;
    max-width: 705px
}

.filters>* {
    padding-left: 20px
}

#top {
    position: absolute;
    top: 0
}

#load_disable {
    position: fixed;
    z-index: 5;
    background-color: #fff;
    opacity: .7;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0
}

#scroll,#time {
    position: fixed;
    z-index: 2;
    margin: 0;
    min-width: 65px
}

#time {
    top: 8px;
    white-space: pre
}

#scroll {
    bottom: 8px;
    display: none;
    max-width: 65px;
    font-size: .8em
}

#scroll a {
    text-decoration: none
}

#banner {
    z-index: 5;
    padding-top: 0
}

#tabs a,.day-link,.sub-narrow li {
    text-decoration: none
}

#login-links span:hover,#server_info a:hover {
    color: #000
}

#login-popup {
    width: 300px;
    padding-left: 8px
}

#login-popup ul {
    margin: 5px 0;
    padding: 0
}

#login-popup li {
    line-height: 1;
    padding-bottom: 5px
}

#server_connect {
    font-size: 14px;
    margin: 10px 0
}

#server_error {
    display: none;
    position: fixed;
    z-index: 6;
    top: 2px;
    left: 50%
}

#server_error>div {
    position: relative;
    left: -50%;
    background: #ffbaba;
    color: #d80000;
    border: 2px solid maroon;
    border-radius: 5px;
    padding: 2px
}

#tabs,#tabs li {
    padding: 0;
    margin: 0
}

#server_error>div code {
    font-size: 1.2em
}

#tabs {
    list-style-type: none
}

#tabs a {
    display: block;
    padding: 6px
}

#tabs.no-people #tap_part {
    display: none
}

.info #tab_info,.next #tab_next,.part #tab_part,.prog #tab_prog,.star #tab_star {
    font-weight: 700;
    border: 2px solid black
}

.sub-side ul {
    margin: -3px 0 3px;
    font-size: .8em;
    font-weight: 400
}

.day-link,.expanded .title,.linklist a {
    font-weight: 700
}

.sub-side li {
    border: none!important;
    padding: 3px 6px!important
}

.sub-side li:after {
    content: " «"
}

#info_view .collapse-open:before,#info_view .collapse:before,.day-link:before,.sub-narrow li:before {
    content: "» "
}

.sub-narrow {
    display: table;
    width: 100%
}

.sub-narrow ul {
    display: table-row!important;
    margin-top: 20px!important;
    padding-left: 0
}

.sub-narrow li {
    display: table-cell;
    padding: 6px;
    cursor: pointer
}

#refresh {
    display: none
}

#refresh.enabled,.refresh_icon {
    height: 40px;
    display: inline-block
}

#refresh.enabled {
    position: fixed;
    border: 2px solid black;
    border-radius: 5px;
    background: #fff;
    padding: 5px;
    line-height: 40px;
    opacity: .5
}

#refresh.enabled:hover {
    opacity: 1
}

.refresh_icon {
    background: url(icons.png) 0 -94px no-repeat;
    width: 39px;
    padding-right: 5px
}

@media (max-width: 699px) {
    .wide-only {
        display:none
    }

    #scroll,#time {
        left: 8px
    }

    #refresh.enabled {
        bottom: 20px;
        right: 20px
    }

    #banner {
        text-align: center;
        margin: 10px 0
    }

    #title {
        display: none!important
    }

    #tabs {
        padding-top: 5px!important
    }

    #tabs li {
        display: inline-block;
        border-bottom: 2px solid black
    }

    .info #tab_info,.next #tab_next,.part #tab_part,.prog #tab_prog,.star #tab_star {
        margin: 0 -2px;
        border-bottom-color: #fff;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px
    }

    .sub-side {
        display: none!important
    }
}

@media (min-width: 700px) {
    #scroll,#time {
        left:228px
    }

    #refresh.enabled {
        bottom: 20px;
        left: 20px
    }

    #banner {
        width: 200px;
        float: left;
        position: fixed
    }

    #title-small {
        display: none
    }

    #title {
        display: block!important
    }

    #tabs {
        font-size: 1.2em
    }

    #tabs li {
        display: block;
        text-align: right;
        border-right: 2px solid black
    }

    .info #tab_info,.next #tab_next,.part #tab_part,.prog #tab_prog,.star #tab_star {
        margin: -2px 0;
        border-right-color: #fff;
        border-top-left-radius: 5px;
        border-bottom-left-radius: 5px
    }

    .sub-narrow {
        display: none!important
    }

    #main {
        position: absolute;
        top: 0;
        left: 228px;
        right: 10px
    }

    #main p {
        max-width: 600px
    }
}

.ls_loading {
    width: 100%;
    max-width: 685px;
    text-align: center
}

.day-link {
    display: block;
    max-width: 665px;
    padding: 10px;
    text-align: center
}

.day-link:hover {
    text-decoration: underline
}

.day-link:last-child {
    padding: 100px 10px
}

.item_expander {
    width: 100%;
    max-width: 685px;
    text-align: right;
    position: absolute;
    z-index: 3;
    padding-top: 50px
}

#filter_sum_wrap,#star_data,#star_links,.new_time {
    text-align: center
}

@media (max-width: 699px) {
    .item_expander,.ls_loading {
        margin-left:-16px
    }
}

.new_day {
    padding-top: 40px;
    background: #fff;
    border-bottom: 5px solid #000000;
    font-size: 2em;
    width: 100%
}

.new_day,.new_time {
    position: relative;
    z-index: 2
}

.new_day+hr {
    display: none
}

.new_time {
    padding: 13px 0 0;
    height: 70px;
    margin-bottom: -78px;
    width: 65px;
    background: #fff;
    background: -webkit-linear-gradient(top,#fff 50%,rgba(255,255,255,0));
    background: -moz-linear-gradient(top,#fff 50%,rgba(255,255,255,0));
    background: -ms-linear-gradient(top,#fff 50%,rgba(255,255,255,0));
    background: linear-gradient(top,#fff 50%,rgba(255,255,255,0))
}

.item_frame {
    position: relative;
    margin: 0 0 10px 65px
}

.item_star {
    position: absolute;
    width: 20px;
    height: 20px;
    top: 10px;
    left: 10px;
    background: #f5e6c3
}

.item_star.has_star {
    background: black!important
}

.show_set .item_star {
    width: 14px;
    height: 14px;
    border: 3px solid #f5e6c3
}

.show_set .item_star.in_set {
    border-color: black
}

@media screen and (forced-colors:active) {
    .item_star {
        background: #f5e6c3
    }

    .item_star.has_star {
        background: black!important
    }
}

.item {
    display: block;
    padding: 5px 10px 0 30px;
    margin-bottom: 5px
}

.item>div {
    margin: 0 10px
}

.item .title {
    margin: 3px 0 3px 10px
}

.item .loc,.item>.item-people {
    display: inline-block;
    color: black;
    font-size: .875em;
    font-style: italic
}

#info_view h2,#part_info h2 {
    font-size: 2em;
    border-bottom: 2px solid black
}

.item .loc a,.item>.item-people a {
    color: #88847d
}

.extra {
    display: none;
    clear: left
}

#part_info,.fn {
    clear: both
}

.extra div {
    float: none
}

.extra p {
    margin-bottom: 0
}

.extra .item-people {
    max-width: 600px;
    margin: 1em 0
}

.permalink {
    background: url(icons.png) -21px -135px no-repeat;
    width: 17px;
    height: 17px;
    display: block;
    position: absolute;
    top: 42px;
    left: 13px;
    opacity: .3
}

.permalink:hover {
    opacity: 1
}

.expanded {
    background: #f5e6c3
}

#filter_sum_wrap,.expanded .item_star {
    background: #fcf6bd;
}

#info_view tr:hover,#q:valid {
    background: #f5e6c3
}

.expanded .item {
    padding-bottom: 1em
}

.expanded .loc {
    color: #black!important
}

.expanded .item>.item-people {
    display: none
}

.expanded .extra {
    display: block
}

#main p {
    white-space: pre-line
}

#info_view p {
    white-space: initial
}

.view {
    display: none
}

.prog #prog_view,.star #star_view {
    display: block
}

.star #prog_ls .new_day:first-child {
    padding-top: 20px
}

.day-list {
    display: none
}

.prog .day-list {
    display: block
}

#prog_filters ul,#q {
    display: inline-block
}

#prog_filters {
    margin-left: -20px
}

#prog_filters ul {
    position: relative;
    z-index: 2;
    margin: 0 0 20px;
    padding-left: 20px;
    text-align: left
}

#prog_filters ul:focus {
    z-index: 3
}

#prog_filters li {
    line-height: 1;
    padding-bottom: 5px
}

#prog_filters input {
    margin: 0 4px 0 0
}

#q {
    max-width: 150px
}

#q_clear {
    float: right
}

#q_clear:disabled {
    visibility: hidden
}

#filter_sum_wrap {
    clear: left;
    max-width: 681px;
    margin: 20px 0 0 20px;
    border: 2px solid black;
    border-radius: 5px;
    padding: 10px
}

.fn,.linklist dt {
    text-align: right
}

#filter_sum_wrap a {
    font-weight: 700;
    text-decoration: none
}

#filter_sum_wrap a:hover {
    text-decoration: line-through
}

#part_names a,.linklist a,.part_list_link {
    text-decoration: none
}

.part #part_view {
    display: block
}

#part_view {
    position: relative;
    z-index: 3;
    padding-top: 0;
    margin-bottom: 1em;
    background: #fff
}

#name_sort li {
    display: inline-block;
    padding: 0 10px
}

.name-list {
    display: none
}

.part .name-list {
    display: block
}

#part_names {
    list-style-type: none;
    margin: 20px 0 0 10px;
    padding: 0;
    -webkit-column-width: 260px;
    -moz-column-width: 260px;
    column-width: 260px
}

#part_names li {
    cursor: auto
}

#part_names.fn-only,#part_names.ln-only {
    -webkit-column-width: 180px;
    -moz-column-width: 180px;
    column-width: 180px
}

#part_names.fn-only .fn,#part_names.ln-only .fn {
    display: none
}

#part_names.fn-only .ln,#part_names.ln-only .ln {
    display: inline;
    width: auto;
    float: none
}

.fn,.ln {
    display: block;
    width: 128px;
    width: calc(48%);
    min-height: 1px;
    float: left
}

.part_img,.part_img img {
    width: 184px;
    height: 184px
}

.fn {
    padding-right: 2px
}

.ln {
    vertical-align: bottom;
    padding-left: 2px
}

.part_img {
    display: block;
    float: right;
    margin: 0 0 5px 10px;
    border: 2px solid black;
    border-radius: 5px;
    overflow: hidden
}

.part_list_link {
    display: block;
    padding-bottom: 10px
}

#part_info h2 {
    margin: 0 0 10px
}

#part_info p {
    margin-bottom: 0
}

.linklist {
    max-width: 705px
}

.linklist dt {
    float: left;
    width: 100px;
    margin-right: 6px
}

.linklist dd {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.linklist a:hover {
    text-decoration: underline
}

.info #info_view {
    display: block;
    max-width: 600px
}

.info #scroll,.info #time {
    display: none!important
}

#info_view #last-updated,#info_view .collapse+* {
    display: none
}

#info_view h3 {
    margin: 20px 0 5px;
    border-bottom: 2px solid #ccc5bb;
    padding-bottom: 2px
}

#info_view h3+p {
    margin-top: 5px
}

#info_view h2 {
    margin-top: 40px
}

.android_menu_icon:before,.ie_menu_icon:before {
    content: "…"
}

#info_view .collapse {
    border: none
}

#info_view table {
    width: 100%;
    border-spacing: 0
}

#info_view td {
    text-align: center
}

#info_view td:first-child {
    text-align: left
}

#info_view ol {
    margin: 5px 0
}

#info_view #last-updated span {
    border-bottom: 1px dotted
}

#install-instructions h4,#install-instructions p {
    display: inline;
    margin: 0
}

.compact-dl {
    padding-top: 10px
}

.compact-dl dt {
    width: 165px;
    float: left;
    clear: left;
    text-align: right;
    color: #88847d
}

.compact-dl dd {
    margin-left: 175px;
    padding-bottom: 10px
}

.ios_share_icon {
    background: url(icons.png) 0 -67px no-repeat;
    height: 14px;
    background-size: 25px;
    display: inline-block;
    width: 10px!important;
    vertical-align: baseline;
    margin: 0 3px!important
}

.android_menu_icon {
    display: inline-block;
    position: relative;
    left: 5px;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

.ie_menu_icon {
    position: relative;
    bottom: 4px
}

@media print {
    #banner,#prog_lists,#search,.item_expander {
        display: none!important
    }
}
