body {
    background-color: #222;
    color: #ccc;
    font-family: Ubuntu, sans-serif;
    font-size: 100%;  /* Usually 16px. */
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    margin: 0;
}
a img {border: none}

.page {
    background: #666 url(/static/images/bubbles.png) top left repeat;
    color: #ccc;
    margin: 0 auto;
    padding: 0 0.5rem;
}
@media (min-width: 960px) {
    .page {
        max-width: 59.5rem;
    }
}

.masthead {
    background-color: transparent;
    background-image: url(/static/images/masthead-sergel.png);
    background-position: 40% top;
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    height: 7rem;
    margin: 0;
    padding: 0.5rem 0.75rem;
}
.masthead a {
    backdrop-filter: blur(0.5rem);
    background: #fff7;
    color: black;
    font-size: 2rem;
    padding: 0.5rem 1rem 0.5rem 0.75rem;
    line-height: 1.5rem;
    text-decoration: none;
}
.masthead a:active, .masthead a:hover {
    background: #fffc;
    color: #c30;
    text-decoration: underline;
}
.icon-logo {
    background: transparent;
    color: #639;
}

nav {
    margin: 0 0 1rem 0;
}
nav ul {
    background-color: #c30;
    color: white;
    display: block;
    line-height: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0.25rem 1rem;
}
nav li {
    display: inline;
    margin: 0 0.5rem 0 0;
}
nav a:link, nav a:focus, nav a:hover, nav a:active, nav a:visited {
    font-weight: bold;
    padding: 0.5rem 1rem;
}
nav a:link, nav a:visited {
    background: transparent;
    color: white;
    text-decoration: none;
}
nav a:focus {
    background-color: white;
    color: black;
}
.navCurrent a:link, .navCurrent a:hover, .navCurrent a:active, .navCurrent a:focus, nav a:hover, nav a:active {
    box-shadow: 0 0.25rem 0.5rem 0 #0009;
}
.navCurrent a:hover, .navCurrent a:active, .navCurrent a:focus, nav a:hover, nav a:active {
    text-decoration: underline;
}
.navCurrent a:hover, .navCurrent a:active, .navCurrent a:focus, nav a:hover, nav a:active {
    background-color: white;
    color: #c30;
}
.navCurrent a:link, .navCurrent a:visited {
    background-color: white;
    color: black;
}

.alert {
    margin-bottom: 1rem;
    padding: 0 1rem;
}
.alert p {
    font-size: 0.88rem;
    line-height: 1.25rem;
}
.warning {
    background-color: #ff9;
    color: black;
}

.body {
    margin-bottom: 1rem;
}
.body h1 {
    font-size: 1.75rem;
}
.body h2 {
    font-size: 1.5rem;
}
.body h3 {
    font-size: 1.25rem;
}
.body h1, .body h2, .body h3 {line-height: 1em}
.body p, .body pre, .body li, .body h4, .body h5, .body h6, .body th, .body td {
    font-size: 0.88rem;
    line-height: 1.5rem;
}
.body blockquote::before {
    background: transparent;
    content: '\201d';
    color: #666;
    float: left;
    font-size: 4rem;
    margin: -0.25rem 0 0 -2rem;
}
.body blockquote {
    margin: 0;
    padding: 0 0 0 2rem;
}

.body a {text-decoration: underline}
.body h1 a {text-decoration: none}
.body a:link {
    background: transparent;
    color: #339;
}
.body a:visited {
    background: transparent;
    color: #666;
}
.body a:hover {
    background: transparent;
    color: #c30;
}
.body a:active {
    background-color: #c30;
    color: white;
    outline: 0.125rem solid  #c30;
}
.body a:focus {
    outline: 0.125rem solid #3396;
}
.bodyEnd {clear: both}

.body em.highlight {
    background-color: #ff9;
    color: #000;
    font-style: normal;
    font-weight: normal;
}

.flow {
    margin-bottom: 0.5rem;
    max-width: 100%;
}
@media (min-width: 960px) {
    .flow {
        float: left;
        max-width: 100%;
        width: 38rem;
    }
}

.boxHead, .itemHead, .itemFoot {
    background-color: #eee;
    color: black;
    margin: 0;
    padding: 0 1rem 0.5rem;
}
.boxEdit, .itemEdit {
    float: right;
    margin: 0 -1rem 0 1rem;
}
.boxEdit a, .itemEdit a {
    display: block;
    padding: 0 1rem;
}
.boxEdit a:link, .boxEdit a:visited, .itemEdit a:link, .itemEdit a:visited {
    background-color: #c93;
    color: black;
    text-decoration: none;
}
.boxEdit a:hover, .itemEdit a:hover {
    background-color: #c93;
    color: black;
    text-decoration: underline;
}
.boxEdit a:active, .itemEdit a:active {
    background-color: black;
    color: #c93;
    text-decoration: underline;
}
.boxType, .itemType {margin: 0}
.boxName, .itemName {margin: 0.5rem 0 0}
.boxMeta, .itemMeta {margin: 0.5rem 0 0}
.boxType, .itemType {
    background-color: #c30;
    color: white;
    font-variant: small-caps;
    font-weight: bold;
    letter-spacing: 0.25rem;
    margin: 0 1rem 0 -1rem;
    padding: 0 2rem 0 1rem;
    width: 9rem;
}
.itemThumb {
    float: right;
    margin-left: 1rem;
}
.boxBody, .itemBody {
    overflow-x: auto;
    padding: 0.5rem 1rem;
}
.boxBody * img, .itemBody * img {max-width: 100%}
.featured .itemName {
    font-size: 2.5rem;
    line-height: 2.5rem;
}
.boxFoot, .itemFoot {clear: both}
.itemBody .links {
    background: #bef;
    color: inherit;
}
.itemBody .links li {
    display: inline-block;
    padding-right: 1rem;
}

.main table {
    background: white;
    border-collapse: collapse;
    color: black;
    display: block;
    overflow-x: auto;
}
.main th, .main td {
    line-height: 1.5em;
    padding: 0.25rem;
}
.main th {
    background-color: #eee;
    border-bottom: .0625rem solid black;
    color: inherit;
    text-align: left;
    vertical-align: bottom;
}
.main td {
    border-bottom: .0625rem solid #999;
    vertical-align: top;
}
.main tr:hover {
    background: #bef;
    color: inherit;
}

.selector {
    background-color: #eee;
    color: black;
    padding: 0 1.15rem;
}

.sidebar {
    max-width: 100%;
}
@media (min-width: 960px) {
    .sidebar {
        float: right;
        width: 20rem;
    }
}

.tag {
    background: #f4f4f4 !important;
    border: 0.0625rem solid #ccc;
    border-radius: 0.25rem;
    color: #000;
    padding: 0.25rem;
}

progress {
    background: #c30 linear-gradient(#fff3, #0006);
    border: none;
    color: #000;
    width: 100%;
}
progress::-moz-progress-bar,
progress::-webkit-progress-bar {
    background: #9e6 linear-gradient(#fff3, #0006);
    color: #000;
}
.todo {
    border-left-style: solid;
    border-left-width: 0.25rem;
    display: block;
    margin-left: -1rem;
    padding: 0.25rem 0 0.25rem 0.5rem;
}
.todo:hover {outline: .25rem solid #3334}
.todo .due {
    float: right;
    font-weight: bold;
    margin-left: 1rem;
}
.todo .past {
    background: #c30;
    color: #fff;
}
.todo100 .past, .todoRej .past {
    background: inherit;
    color: inherit;
}
.todo0 {
    background: #fdc;
    border-left-color: #c30;
    color: inherit;
}
.todo25, .todo50, .todo75 {
    background: #ffd;
    border-left-color: #fc6;
    color: inherit;
}
.todo100 {
    background: #efe;
    border-left-color: #9e6;
    color: inherit;
}
.todoRej {
    background: #ddd;
    border-left-color: #aaa;
    color: inherit;
}
.todo ul {
    border-bottom: .0625rem solid #aaa;
}

.neg, .pos {
    border-bottom-style: solid;
    border-bottom-width: 0.0625rem;
}
.neg {
    background: #fdc;
    border-bottom-color: #c30;
    color: inherit;
}
.pos {
    background: #efe;
    border-bottom-color: #9e6;
    color: inherit;
}

code, kbd, pre {
    font-family: "Ubuntu Mono", monospace;
    background-color: #eee;
    border: .0625rem solid #ccc;
    box-decoration-break: clone;
    color: black;
    padding: 0.25em;
}
kbd {
    border-radius: 0.25rem;
    border-bottom-width: 0.125rem;
    font-family: Ubuntu, sans-serif;
}
pre {overflow-x: auto}
pre code {
    border: none;
    padding: 0;
}
label {
    background: transparent;
    color: #999;
    font-weight: bold;
}
input:focus, select:focus, textarea:focus {
    outline: 0.125rem solid #3396;
}
input[type=password], input[type=text], input[type=url], select, textarea {
    background: #eee;
    border: none;
    border-bottom: 0.125rem solid #c30;
    color: #000;
    max-width: 100%;
    padding: 0.5rem;
    width: 34rem;
}
input[type=submit] {
    background: #339 linear-gradient(#fff3, #0006);
    border: 0.125rem solid #339;
    border-radius: 0.25rem;
    color: #fff;
    padding: 0.5rem 1.5rem;
}

ul {padding: 0 0 0 1rem}

.ops {
    display: block;
    padding: 0;
}
.op {
    display: inline;
    margin: 0 1rem 0 0;
    padding: 0;
}

.footer {
    background-color: #eee;
    color: black;
}
.footer a {font-weight: normal}
.footer a:link {
    background: transparent;
    color: #339;
}
.footer a:visited {
    background: transparent;
    color: #666;
}
.footer a:hover, .footer a:focus {
    background: transparent;
    color: #c30;
}
.footer a:active {
    background-color: #c30;
    color: white;
}

.legal, .links {padding: 0.5rem 1rem}
.legal {
    background-color: #ccc;
    color: black;
    font-size: 0.88rem;
}
.legal p {margin: 0}
.links h1, .links h2, .links ul, .links li, .links p {
    background: transparent;
    color: black;
    display: block;
    list-style: none;
    margin: 0;
}
.links h1 {
    font-size: 1rem;
    line-height: 1.5rem;
}
.links h2, .links li, .links p {
    font-size: 0.75rem;
    line-height: 1.5rem;
}
.links ul, .links li {padding: 0}
.links em {
    font-style: normal;
    font-weight: bold;
}
.footEnd {
    clear: both;
}

.ad, .box, .boxThumb, .footer, .header, .item, .itemThumb, .selector {
    background-color: white;
    box-shadow: 0 0.25rem 0.5rem 0 #0009;
    -moz-box-shadow: 0 0.25rem 0.5rem 0 #0009;
    -webkit-box-shadow: 0 0.25rem 0.5rem 0 #0009;
    color: black;
}
.ad, .box, .item, .selector {
    margin-bottom: 1rem;
}
.boxHead, .itemHead, .legal, .selector {
    background: #eee linear-gradient(#fff9, #0002);
    color: inherit;
}
