/* sections:

=topbar
=landing
=desktop
=comicfeed
=mobile

*/

html {
    position:relative;
}

* {
    box-sizing: border-box;
}

@media (-webkit-min-device-pixel-ratio: 2) {
    .container {
        scale: 1;
    }
}

a.blackLink {
    text-decoration: none;
    color: black;
}

a.blackLink :visited {
    color: #222;
}

audio {
    margin-left: 10%;
}

h4 {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 100;
}

h4 > a {
    color: #833;
}

h4.comicTop {
    font-size: 14px;
}

body {
    background-color: #fff;
    font-family: Verdana, Geneva, sans-serif;
	font-size: 12px;
    margin: 0;
    padding: 0;
    min-width: 320px;
}

hr {
    width: 70%;
    margin-top: 40px;
    margin-bottom: 40px;
}

address {
    margin-left: 40%;
}

.canWrap {
    white-space: normal;
}

.noBreak {
    white-space: nowrap;
}

/* Hide arrows on dropdown menus */
details > summary {
    list-style: none;
}
details > summary::-webkit-details-marker {
    display: none;
}

.noPointer {
    pointer-events: none;
}

#live_area {
    background-color: #fff;
    min-width: 320px;
    width: 100%;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

#rotateAlert {
    display: none;
    position: fixed;
    background-color: white;
    width: 260px;
    height: 240px;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-color: #000;
    border-style: solid;
    border-width: 9px;
    border-radius: 19px;
    filter: drop-shadow(12px 12px 9px #000);
    z-index: 999;
}

h2.rotateCaption {
    color: white;
    font-size: 14px;
    margin-top: -5px;
    margin-left: 66px;
}

#rotateImage {
    width: 240px;
    margin: auto;
    display: block;
}

#rotateAlert > h3 {
    margin: auto;
    padding: 5px;
    text-align: center;
}

#raysPlaceTable {
    max-width: 600px;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    border-spacing: 0;
}

/* =topbar greenBox is the desktop topbar */

.greenBox {
    background-color: #006600;
    width: 100%;
    height:50px;
    display: none;
}

nav {
    background-color: transparent;
}

img#mobileLogo {
    width: 185px;
    display: block;
    position: absolute;
    z-index: 10;
    bottom: 25px;
    left: 50%;
    transform-origin: bottom;
    transform: translateX(-50%);

}

.container {
    margin-top: -12px;
    display: block;
    padding: 10px 0 10px 0;
    background-color: white;
}

#topSpacer {
    height: 80px;
}

#topBanner {
    padding-top: 50px;
}

.comicBox {
    margin-left: auto;
    margin-right: auto;
    width: 98%;
}

.captionBlock {
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.arcDropDown {
    display: inline-block;
    position: absolute;
    z-index: 9;
    width: 100%;
}

.viewMoreButton {
    position: relative;
    padding: 10px;
    left: 50%;
    transform: translateX(-40%);
    font-size: 32px;
}

/* Top Menubar  =topbar ============================================== */


.menuBar {
    display: none;
}

#topBar {
    height: 90px;
    background-color: #006600;
    display: block;
    position: relative;
}

img #mobileLogo {
    display: none;
}

.hamburger {
    padding: 0;
}

#menuToggle {
    position: relative;
    height: 20px;
    bottom: -40px;
}

#menuToggle span {
    margin-left: auto;
    margin-right: auto;
    margin-top: -1em;
}

/* checkbox receiver for hamburger dropdown */
#menuToggle input {
    display: block;
    position: relative;
    color: white;
    scale: 3;
    z-index: 99;
    cursor: pointer;
    margin-left: 90%;
    opacity: 0;
}

#menuToggle button {
    position: absolute;
    margin-top: 3px;
}


#mobileTextSearchForm {
    opacity: 100;
    scale: 1.0;
    color: #000;
    right: 0;
    width: 130px;
    margin-top: 14px;
    margin-left: auto;
    margin-right: 55px;
}


input#mobileTextSearchSubmit {
    opacity: 100;
    scale: 1.5;
    margin-top: -18px;
    margin-left: 150px;
    background-color: #006600;
    border: 0;
}

input#mobileTextSearchBox {
    border: 0;
    opacity: 100;
    scale: 1.5;
    color: #000;
    right: 140px;
    width: 130px;
    margin-top: 14px;
}

.burgerMenu {
    display: none;
    position: relative;
    left: 0;
    right: 0;
    top: 30px;
    color: white;
    background-color: #99cc00;
    width: 100%;
    line-height: 1.5;
    border-color: #333;
    border-radius: 1px;
}

.burgerMenu ul {
    list-style-type: none;
    font-size: 25px;
    text-align: right;
    padding: 18px 30px 30px 0;
    margin: -2px auto;

}


.dropDown {
    list-style-type: none;
    color: #333;
    background-color: #eee;
    position: relative;
    right: 10px;
    width: 110%;
}

.dropDown ul {
    top: 40px;
}

.burgerMenu a {
    text-decoration: none;
    color: white;
}

a.arc {
    color:#333;
    text-decoration: none;
}

#menuToggle input:checked ~ .burgerMenu {
    display: block;
}

.hamburger {
    margin-left: 85%;
    top: 100%
}

.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    background-color: white !important;
}


.arcDropDown:hover .arcMenu {
    display: block;
}

.arcMenu {
    display: none;
    position: relative;
    background-color: white;

}

/* Comic feed =comicfeed ----------------------------------- */

p.attnText {
    width: 80%;
    margin-left: 5%;
}

#attentionText {
    position: relative;
    text-align: center;
    color: #d00;
    margin-top: -10px;
}

#attentionLink {
    color: #833;
}

img.awBanner {
    display: block;
    position: relative;
    width: 380px;
    margin-left: auto;
    margin-right: auto;
}

.padding {
    height: 20px;
}

a.comic_prev, a.comic_next {
    font-size: 200%;
    text-decoration: none;
    color: black;
}

img.comicImage {
    width: 98%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.captionBlock {
    max-width: 720px;
    width: 98%;
}

.comicTitle {
    font-size: 10px;
}

.captionCenter {
    padding-left: 0;
}

.captionRight {
    vertical-align: top;
    text-align: right;
    padding-right: 10;
}

img.signedStripButton {
    width: 115px;
    opacity: 0.9;
}

img.linkButton {
    width: 40px;
    opacity: 0.7;
}

img.printButton {
    width: 128px;
}

.altText {
    font-style: italic;
    color: #ddd;
    display: inline;
}

.urgentText {
    color: red;
    font-weight: 700;
}

/* bottomSpacer styles can stay in for slow loads */

.bottomSpacer {
    display: none;
    height: 600px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

p.bottomSpacer {
    position: relative;
    width: 180px;
    margin-left: auto;
    margin-right: auto;
    color: #999;
}

p.bottomSpacer > img {
    opacity: 0.5;
}

input[type=checkbox] {
    display: none;
}

/* landing page =landing ------------------------------------*/

.lmWrapper {
    display: flex;
    flex-wrap: wrap;
    margin: -0.5rem;
    justify-content: center;
    align-items: baseline;
}

.landingModule {
    text-align: center;
    margin: 0.5rem;
    width: 300px;
    border-width: 1px;
    border-color: #000;
    border:#000;
}

/* archive page =archive ----------------------------------- */

.archiveMonth {
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

td.archiveDate {
    text-align: right;
    padding-right: 30px;
}

tr.newWeek > td {
    padding-top: 30px;
}

 /* Mobile Media Queries =mobile ---------------------------------------- */


@media screen and ( min-width: 400px )  {
    body {
        min-width: 400px;
    }

    h4.comicTop {
        font-size: 18px;
    }


    img.signedStripButton {
        width: 140px;
    }
}

@media screen and ( min-width: 500px ) {
    img#mobileLogo {
        width: 200px;
    }

    img.awBanner {
        width: 480px;
    }

    h4.comicTop {
        font-size: 20px;
    }

    .hamburger {
        margin-left: 87%;
    }

}

@media screen and ( min-width: 550px )  {
    .hamburger {
        margin-left: 89%;
    }

    h4.comicTop {
        font-size: 24px;
    }

    img#mobileLogo {
        width: 220px;
    }

    .burgerMenu ul {
        text-align: center;
        padding-right: 0;
    }

    .dropDown {
        top: 6px;
        right: 0;
        width: 100%;
    }

    #mobileTextSearchForm {
        margin-right: auto;
    }

}

@media screen and ( min-width: 650px ) {
    .body {
        min-width: 650px;
    }

    .hamburger {
        margin-left: 90%;
    }

    img#mobileLogo {
        width: 240px;
    }


}

@media only screen and ( min-width: 48rem ) and ( any-pointer: fine ) {
    img.comicImage {
        width: unset;
    }


}



/* desktop media query =desktop */
/* sized to fit topbar menu */
@media only screen and ( min-width: 60rem ) and ( any-pointer: fine ) {
    #live_area {
        width: 90%;
    }

    #topBar {
        display: none;
    }

    .greenBox {
        display: inline-block;
    }

    .arcDropDown {
        top: -7px;
    }

    .desktopDropDown {

        box-sizing:border-box;
        padding-right: 30px;
        padding-top: 5px;
        margin-left: -26px;
    }

    .menuBar {
        background-color: transparent;
        color: #fff;
        margin-top: -50px;
        padding: 13px 4px 3px 3px;
        font-size: 11px;
        display: flex;
        text-decoration: none;
        list-style: none;
    }

    #topMenu {
        padding-left: 50px;
    }

    details.menuBar {
        margin-left: 8px;
        position: absolute;
    }

    img#desktopLogo {
        position: absolute;
        width: 140px;
        top: 24px;
    }

    li.firstMenuItem {
        margin-left: 155px;
    }

    img.comicImage {
        width: unset;
    }


    .captionBlock {
        width: 98%;
    }

    .captionRight {
        padding-right: 10px;
        text-align: right;
    }


    img.signedStripButton {
        width: 162px;
    }

    .hideDesktop {
        display: none;
    }

    img.awBanner {
        width: 600px;
    }

    li .menuBar {
        display: inline-block;
        top: 73px;
    }


    #desktopSearchButton {
        -moz-box-sizing:border-box;
        -webkit-box-sizing:border-box;
        box-sizing:border-box;
        color: white;
        position: absolute;
        right: 16px;
        top: 26px;
    }

    #desktopSearchButton[open] {
        right: -162px;
    }

    #desktopSearchButton > summary {
        font-size: 21px;
    }

    #desktopSearchButton > ul {
        right: 180px;
        top: 5px;
        padding: 10px 20px 25px 23px;
    }

    input#desktopTextSearchBox {
        opacity: 100;
        scale: 1;
        color: #000;
        right: 140px;
        width: 130px;
        margin-top: 14px;
    }

    .filterWhite {
        filter: invert(99%) sepia(91%) saturate(5%) hue-rotate(200deg) brightness(108%) contrast(100%);
    }

    .padTopFive {
        padding-top: 5px;
    }

    .padTopNine {
        padding-top: 9px;
    }

    .padTopTen {
        padding-top: 14px;
    }

    .blogLinkLeft {
        margin-left: -9px;
    }

    .offsetRight {
        padding-left: 75px;
    }

    .offsetRight2 {
        padding-left: 106px;
    }

    /* bullets between all menu items but not at the beginning */
     ul li.bullet::before {
        content: ' :: ';
    }

    a.comic_prev, a.comic_next {
        font-size: 110%;
    }

    summary {
        padding-left: 8px;
        margin-top: -15px;
        font-size: 11px;
        cursor: pointer;
    }

    details summary::marker {
        display: none;
    }

    details > summary {
        list-style: none;
    }

    details > summary::-webkit-details-marker {
        display: none;
    }

    details summary * {
        display: inherit;
    }

    #menuToggle {
        display: none;
    }
}

/* adjustments for Chrome browser */
@supports (contain: paint) and (not (-moz-appearance: none)) {

    details.menuBar {
        margin-left: 0;
    }

    #desktopSearchButton[open] {
        right: -166px;
    }
}

/* adjustments for Safari only */
@supports selector(:nth-child(1 of x)) {
    details.menuBar {
        margin-left: 8px;
    }

    #desktopSearchButton[open] {
        right: -167px;
    }
}