/* top right bottom left;    vert horz;    top horz bottom */

@import url(https://fonts.googleapis.com/css?family=Open+Sans);

* {
    margin: 0;
    padding: 0;
}
ul, ol {
    margin-top: 0.5em;
    margin-left: 2em;
}

body {
    font-size: 16px;
    padding: 60px 16px 52px;
}
body.longContent {
    padding-bottom: 0;
}
code {
    color: inherit;
    background-color: #f5f5f5;
}

.csa-content, .checkpage {
    max-width: 1024px;
    margin: 0 auto;
}

.csa-main-title {
    margin-top: 15px;
    margin-bottom: 2em;
}
.csa-main-title .visible-xs {
    text-align: center;
}
.csa-main-title .visible-xs img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.csa-main-title .visible-xs h1 {
    color: #546e7c;
    font-weight: bold;
    font-size: 32px;
    margin-top: 0.5em;
}
.csa-main-title .visible-xs h2 {
    color: #fc8a3c;
    font-weight: bold;
    font-size: 18px;
    margin-top: 0.5em;
    margin-bottom: 1.5em;
}
.csa-main-title .visible-xs .buttons {
    text-align: center;
}
.csa-main-title .hidden-xs .buttons {
    margin-left: 267px;
    margin-top: 1em;
}
.csa-main-title .buttons .btn {
    padding-left: 24px;
    padding-right: 24px;
}
.csa-main-title .buttons .btn-outline-inverse {
    margin-left: 20px;
}

.checkpage dd {
    padding-left: 5rem;
}
.footer {
    padding: 4px 16px;
    text-align: center;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
}
.footer p {
    margin: 0;
}
.footer-moving {
    position: static;
    bottom: auto;
    left: auto;
    width: auto;
    margin-top: 24px;
    margin-left: -16px;
    margin-right: -16px;
}
.footer-part {
    display: inline;
}
.footer-sep {
    padding: 0 0.5em;
}
@media (max-width: 512px) {
    body {
        padding: 50px 5px 0;  /* top horz bottom */
    }
    .checkpage dd {
        padding-left: 2.5rem;
    }
    .footer {
        padding: 4px 0;
        text-align: center;
        width: auto;
        position: static;
        bottom: auto;
        left: auto;
        margin-left: -5px;
        margin-right: -5px;
    }
}
@media (max-width: 790px) {
    .footer-part {
        display: block;
    }
    .footer-sep {
        display: none;
    }
}

.navbar {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
}
a.navbar-brand {
    font-weight: bold;
    padding-top: 17px;
}


h1 {
    font-size: 38px;
    margin-bottom: 24px;
}
h2 {
    margin-top: 32px;
    margin-bottom: 16px;
}
h4 {
    margin-top: 18px;
    margin-bottom: 6px;
}

.table .post-title {
    font-weight: bold;
}
.table .post-title a {
    color: inherit;
}

.whatsnewposts .container-fluid .row {
    margin: 0 -16px 0 -16px;
}
.whatsnewposts .container-fluid .col-sm-5, .whatsnewposts .container-fluid .col-sm-2 {
    padding-left: 0;
}
.whatsnewposts  .panel {
    margin-bottom: 8px;
}
.whatsnewposts  .panel .panel-body p {
    margin: 0;
}
.whatsnewposts .panel .panel-links {
    padding: 8px 15px;
    border-top: 1px solid #ddd;
}

.article .csa-post-links {
    margin-top: 2em;
}

.csa-run h2 {
    border-top: 2px solid #ddd;
    padding-top: 0.8em;
    margin-top: 1em;
}

a.csa-offset-anchor { /* used to prevent anchors from being obscured by the fixed header */
    display: block;
    position: relative;
    top: -60px;
    visibility: hidden;
}
.csa-run a.csa-offset-anchor {
    top: -15px;
}

#travis-status {
    width: 295px;
}
#travis-status .panel-body a {
    margin-right: 1em;
}

.csa-toggle {
    color: #3399F3;
    cursor: pointer;
}
.csa-toggle:hover {
    text-decoration: underline;
}
.csa-toggled-text {
    padding: 5px;
    margin-bottom: 1.5em;
    display: none;
    font-size: small;
    background-color: #f5f5f5;
}
.csa-toggled-text code {
    background-color: #fff;
}

.pagination .reset a {
    border: 0;
    padding-left: 0;
    color: inherit;
    font-size: 16px;
}
.pagination .reset a:hover {
    color: inherit;
    background-color: inherit;
    cursor: default; 
}

div.csa-largeImageWrapper {
    overflow-x: auto;
    overflow-y: visible;
    white-space: nowrap;
    margin-bottom: 1em;
}
div.highlight {
    white-space: pre;
    word-wrap: normal;
    overflow-x: auto;
    overflow-y: visible;
}
div.highlight > pre, div.highlight > pre code {
    white-space: pre !important;
    word-break: keep-all;
    word-wrap: normal;
}

table.csa-version-table td, table.csa-version-table th {
    border-right: 1px solid #dddddd;
}
table.csa-version-table tr td:last-child, table.csa-version-table tr th:last-child {
    border-right: 0;
}
table.csa-version-table td.orange {
    background-color: #ffbc68;
}

.checkpage h2 {
    border-top: 1px solid #dddddd;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: #f9f9f9;
}
.checkpage h3 {
    margin-top: 3rem;
}
.checkpage dl {
    margin-bottom: 2rem;
}
.checkpage dl > dt:nth-of-type(2n), .checkpage dl > dd:nth-of-type(2n) {
    background-color: #f9f9f9;
}
.checkpage dl > dd:nth-of-type(2n) code {
    background-color: white;
}
.checkpage dt {
    float: left;
    display: inline;
    padding: 5px 5px 0 5px;
    font-weight: bold;
}
.checkpage dd {
    border-bottom: 1px solid #dddddd;
    padding-top: 5px;
    padding-bottom: 6px;
    padding-right: 2px;
}
.checkpage dd p {
    margin-bottom: 0;
}
.checkpage dd.title {
    border-bottom: 2px solid #DDD;
}
.checkpage .proptype:before{
    content: "[";
}
.checkpage .proptype {
    font-weight: normal;
}
.checkpage .proptype:after {
    content: "] – ";
}
.checkpage .propdefault:before{
    content: "Default: ";
    font-style: italic;
}
.checkpage .propdefault{
    display: block;
}
.checkpage dl dl.inner {
    margin: 0;
}
.checkpage dl dl.inner > dd, .checkpage dl dl.inner > dt {
    border: 0;
    padding: 0 5px 0 0;
}
.checkpage dl dl.inner > dt:nth-of-type(2n), .checkpage dl dl.inner > dd:nth-of-type(2n) {
    background-color: inherit;
}
.checkpage dl dl.inner > dt:after {
    content: " – ";
    font-weight: normal;
}
pre .line-numbers {
    display: none;
}

.panel div.csa-logos-panel {
    padding-bottom: 0;
    padding-right: 0;
}
.panel div.csa-logos-panel a {
    outline: 0;
}
img.csa-tablogo {
    height: 50px;
    margin-bottom: 15px;
    margin-right: 15px;
}
img.csa-tablogo-gradle {
    position: relative;
    top: -1px;
    margin-right: 20px;
}

div.post-links a.btn {
    margin-right: 0.5em;
}
.post-date {
    font-style: italic;
}
table.table-striped tr:last-child {
    border-bottom: 1px solid rgb(221, 221, 221);
}

/* ------- START Jimmy Bonney Rotation ------- from http://jimmybonney.com/articles/column_header_rotation_css/ */

table.table-header-rotated-jb {
    width: 96%;
    margin-top: 1.5em;
}
table.table-header-rotated-jb td {
    width: 40px;
    border-left: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
    text-align: center;
}
table.table-header-rotated-jb td.no:before {
    content: '--';
}
table.table-header-rotated-jb td.yes:before {
    content: '\a0\a0\a0✓\a0\a0\a0';  /* \a0 = &nbsp; */
}

table.table-header-rotated-jb th.broken {
    font-weight: normal;
}
table.table-header-rotated-jb th.broken:before{
    content: "(";
}
table.table-header-rotated-jb th.broken:after{
    content: ")";
}
table.table-header-rotated-jb tr.subheading > th, table.table-header-rotated-jb tr.subheading_bottom > td {
    padding: 1px 0;
    margin: 0;
    font-size: 0.7em;
    font-weight: normal;
    text-align: center;
    border-right: 1px solid #dddddd;
    border-top: 0;
}
table.table-header-rotated-jb tr.subheading_bottom  {
    border-top: 3px solid #888;
}
table.table-header-rotated-jb tr.subheading_bottom > td > a, table.table-header-rotated-jb tr.subheading > th > a {
    display: block;
    width: 100%;
    height: 100%;
}
table.table-header-rotated-jb tr.subheading_bottom > td:first-child {
    border-left: 0;
}
table.table-header-rotated-jb tr.subheading > th:last-child {
    border-right: 0;
}
table.table-header-rotated-jb tr.subheading > th:hover, table.table-header-rotated-jb tr.subheading_bottom > td:hover {
    background-color: #def2fc;
    font-weight: bold;
}
table.table-header-rotated-jb tr.subheading_bottom > td.nolink:hover, table.table-header-rotated-jb tr.subheading > th.nolink:hover {
    background-color: white;
    cursor: inherit;
    font-weight: normal;
    text-decoration: none;
}

/* horizontal groups by checkstyle java level */
table.table-header-rotated-jb tr.javaLevel {
    border-top: 3px solid #888;
}
/* vertical groups by topic */
table.table-header-rotated-jb tr > td:nth-child(2),  table.table-header-rotated-jb tr.subheading > th:nth-child(2),  table.table-header-rotated-jb th.rotate-45:nth-child(2) > div,
table.table-header-rotated-jb tr > td:nth-child(6),  table.table-header-rotated-jb tr.subheading > th:nth-child(6),  table.table-header-rotated-jb th.rotate-45:nth-child(6) > div,
table.table-header-rotated-jb tr > td:nth-child(10), table.table-header-rotated-jb tr.subheading > th:nth-child(10), table.table-header-rotated-jb th.rotate-45:nth-child(10) > div,
table.table-header-rotated-jb tr > td:nth-child(13), table.table-header-rotated-jb tr.subheading > th:nth-child(13), table.table-header-rotated-jb th.rotate-45:nth-child(13) > div,
table.table-header-rotated-jb tr > td:nth-child(15), table.table-header-rotated-jb tr.subheading > th:nth-child(15), table.table-header-rotated-jb th.rotate-45:nth-child(15) > div {
    border-left: 3px solid #888;
}

table.table-header-rotated-jb th.rotate-45 {
    height: 80px;
    width: 40px;
    min-width: 40px;
    max-width: 40px;
    position: relative;
    vertical-align: bottom;
    padding: 0;
    font-size: 12px;
    line-height: 0.8;
    border-bottom: 0;
}

table.table-header-rotated-jb th.rotate-45 > div {
    position: relative;
    top: 0px;
    left: 40px; /* 80 * tan(45) / 2 = 40 where 80 is the height on the cell and 45 is the transform angle*/
    height: 100%;
    -ms-transform:skew(-45deg,0deg);
    -moz-transform:skew(-45deg,0deg);
    -webkit-transform:skew(-45deg,0deg);
    -o-transform:skew(-45deg,0deg);
    transform:skew(-45deg,0deg);
    overflow: hidden;
    border-left: 1px solid #dddddd;
    border-right: 1px solid #dddddd;
    border-top: 0;
}

table.table-header-rotated-jb th.rotate-45 span {
    -ms-transform:translateX(10px) skew(45deg,0deg) rotate(315deg);
    -moz-transform:translateX(10px) skew(45deg,0deg) rotate(315deg);
    -webkit-transform:translateX(10px) skew(45deg,0deg) rotate(315deg);
    -o-transform:translateX(10px) skew(45deg,0deg) rotate(315deg);
    transform:translateX(10px) skew(45deg,0deg) rotate(315deg);
    position: absolute;
    bottom: 30px; /* 40 cos(45) = 28 with an additional 2px margin*/
    left: -25px; /*Because it looked good, but there is probably a mathematical link here as well*/
    display: inline-block;
    width: 85px; /* 80 / cos(45) - 40 cos (45) = 85 where 80 is the height of the cell, 40 the width of the cell and 45 the transform angle*/
    text-align: left;
    line-height: 1em;
}

table.table-header-rotated-jb tr > td:last-child, table.table-header-rotated-jb tr > th:last-child > div {
    border-right: 0;
}
table.table-header-rotated-jb tr > th:first-child > div {
    border-left: 0;
}

/* ------- END Jimmy Bonney Rotation ------- */

.csa-small {
    font-size: smaller;
}

.footer {
    background-color: #eeeeee;
    background-image: linear-gradient(#e4e4e4, #eee 50%, #fff);
    background-repeat: no-repeat;
    border-top: 1px solid #d5d5d5;
    filter: none;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.3);
    font-size: 14px;
}
.footer .colored a {
    color: #3399f3;
}
.footer a {
    color: inherit;
}

.csa-hilite-exceeded {
    background-color: #5d8018;
    color: white;
}
.csa-hilite-exceeded:after {
    content: "(too many cells highlighted)";
    color: #a7e62b;
    display: block;
    font-size: 8px;
    font-weight: normal;
}

table.csa-bordered-table {
    width: auto;
    margin-bottom: 10px;
}
table.csa-bordered-table > thead > tr > th, table.csa-bordered-table > tbody > tr > td {
    padding-right: 20px;
}
table.table-striped tr:nth-of-type(2n+1) code {
    background-color: white;
}
table.csa-hilite-colors tr:nth-child(1) > td:nth-child(2) {
    background-color: #f2dede;  /* bootstrap: danger */
}
table.csa-hilite-colors tr:nth-child(2) > td:nth-child(2) {
    background-color: #fcf8e3;  /* bootstrap: warning */
}
table.csa-hilite-colors tr:nth-child(3) > td:nth-child(2) {
    background-color: #d9edf7;  /* bootstrap: info */
}
table.csa-hilite-colors tr:nth-child(4) > td:nth-child(2) {
    background-color: #dff0d8;  /* bootstrap: success */
}

span.glyphicon-link {
    font-size: 0.66em;
}
h2 > a, h3:not(.panel-title) > a, h4 > a, h5 > a {
    display: none;
    margin-left: 0.5em;
    color: inherit;
}
h2:hover > a, h3:hover > a, h4:hover > a, h5:hover > a {
    display: inline;
    color: inherit;
}

ul.navbar-right > li > a {
    display: inline-block;
}
ul.nav > li > div.star-container {
    height: 50px;
    padding: 12px 0 10px;  /* top horz bottom */
    display: inline-block;
    position: relative;
}
@media (max-width: 839px) {
    ul.nav > li > div.star-container {
        display: none;
    }
}
