 body {
     font-family: Arial, Helvetica, sans-serif;
     padding: 4px;
     font-size: 1em;
    display: flex;
        justify-content: center;
        align-items: center;
     /* min-height: 100vh; */
 }

.my-container {
    margin: 0 auto;
    /* border: black solid 1px; */
    /* padding: 1em; */
    width: 100%;
    max-width: 1000px;
    height: fit-content;
}

.bolder {
    font-weight: bold;
}

.my-row {
    display: flex;
    flex-wrap: wrap;
}

.my-indent {
    margin-left: 10px;
}

#m-today,
#m-author,
#m-issue {
    display: none;
}



.my-button {
    padding-left: 2px;
}

.temp-sign {
    font-variant-caps: small-caps;
}

.my-button:hover,
.my-button:focus {
    color: #000;
    text-decoration: none;
    outline: none;
    box-shadow: none;
}

abbr {
    text-decoration: none !important;
}

#accordion {
    width: 100%;
}

.ui-accordion .ui-accordion-content {
    /* padding: .5em 0.5em; */
    padding: .0em 0em;
}

.ui-accordion .ui-accordion-header {
    font-size: 105%;
    font-weight: 550;
}

.ui-state-active {
    border: 1px solid gainsboro;
    background-color: #c4c4c4;
    color: black;
}

.graph-link {
    background-color: #f3f3f3;
    margin: 5px 0 15px 0;
    padding-left: 15px;
}

button {
    background-color: Transparent;
    background-repeat: no-repeat;
    border: none;
    cursor: pointer;
    overflow: hidden;
    outline: none;
    padding: 0;
}

.custom-html-slide {
    font-size: 40px;
    line-height: 45px;
    max-width: 400px;
    width: 100%;
    padding: 0 20px;
    margin: 50px auto 0;
    color: #fff;
    text-align: center;
}

.custom-html-slide a {
    color: #fff;
    text-decoration: underline;
}

#weather-icon-left {
    width: 20px;
    height: 20px;
}

#float-cdown,
#next,
#count,
#tempf {
    display: none;
}

.cfs {
    background: #90ee90;
}

.water-temp {
    background: #78F0EF;
}

#weather-left {
    background: #FFC3AD;
}

#date {
    width: 120px;
}

#time {
    width: 55px;
}

#location {
    width: 250px;
}

.time-span,
#welcome .sunrise,
#welcome .sun,
#welcome .sunset,
#weather-left {
    /* min-width: 50px; */
    padding: 2px 4px 2px 4px;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

#before-sunrise,
#after-sunset,
#daylight {
    display: none;
}

.sunrise {
    background: #FFED9E;
}

.sunset {
    background: #D77E35;
}

.sun {
    background: #ffdc9c;
}

.transit {
    background: #FFFC9C;
}

.dark {
    background: #bfd5dd;
}

.twilight {
    background: #d0e5ff;
}

.dusk {
    background: #B8BDBD;
}

acronym {
    cursor: help;
    text-decoration: none;
}

#now-link {
    position: relative;
    top: 17px;
}

/* #legend {
                top: 14%;
                left: 10%;
            } */
#links {
    top: 110px;
    left: 80px;
}

acronym {
    text-decoration: none;
}

.map-content {
    position: absolute;
    z-index: 1000;
    padding: 4px 7px 5px;
    /* border-top: 1px solid #777; */
    /* border-left: 1px solid #777; */
    /* border-right: 2px solid #444; */
    /* border-bottom: 2px solid #444; */
    line-height: 1.6;
    font-size: 1.2em;
    /* background: white; */
    background-color: rgba(221, 205, 213, 0.41);
    /*semi-transparent gray */
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

.map-content2 {
    position: absolute;
    z-index: 1000;
    padding: 4px 7px 5px;
    border-top: 1px solid #777;
    border-left: 1px solid #777;
    border-right: 2px solid #444;
    border-bottom: 2px solid #444;
    line-height: 1.6;
    font-size: 1.2em;
    /* background: rgba(151, 149, 151, 0.32); */
    background: rgba(111, 110, 110, 0.8);
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}

/* buy me a coffee -------- */
.bmc-button img {
    height: 34px !important;
    width: 35px !important;
    margin-bottom: 1px !important;
    box-shadow: none !important;
    border: none !important;
    vertical-align: middle !important;
}

.bmc-button {
    padding: 7px 10px 7px 10px !important;
    line-height: 35px !important;
    height: 51px !important;
    min-width: 217px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    color: #ffffff !important;
    background-color: #ff813f !important;
    border-radius: 5px !important;
    border: 1px solid transparent !important;
    padding: 7px 10px 7px 10px !important;
    font-size: 22px !important;
    letter-spacing: 0.6px !important;
    box-shadow: 0px 1px 2px rgba(190, 190, 190, 0.5) !important;
    -webkit-box-shadow: 0px 1px 2px 2px rgba(190, 190, 190, 0.5) !important;
    margin: 0 auto !important;
    font-family: "Cookie", cursive !important;
    -webkit-box-sizing: border-box !important;
    box-sizing: border-box !important;
    -o-transition: 0.3s all linear !important;
    -webkit-transition: 0.3s all linear !important;
    -moz-transition: 0.3s all linear !important;
    -ms-transition: 0.3s all linear !important;
    transition: 0.3s all linear !important;
}

.bmc-button:hover,
.bmc-button:active,
.bmc-button:focus {
    -webkit-box-shadow: 0px 1px 2px 2px rgba(190, 190, 190, 0.5) !important;
    text-decoration: none !important;
    box-shadow: 0px 1px 2px 2px rgba(190, 190, 190, 0.5) !important;
    opacity: 0.85 !important;
    color: #ffffff !important;
}


.mt-3 {
    margin-top: 3px;
}

a {
    color: lightcoral;
}

.lightbox-color {
    color: lightcoral;
    margin-left: 4px;
}

.lightbox-color:hover {
    color: blue;
}


/* MODAL STYLES
            -------------------------------*/
.jw-modal {
    /* modals are hidden by default */
    display: none;

    /* modal container fixed across whole screen */
    position: fixed;
    inset: 0;

    /* z-index must be higher than everything else on the page */
    z-index: 10000;

    /* semi-transparent black background exposed by padding */
    background-color: rgba(0, 0, 0, .75);
    padding: 14px;

    /* enables scrolling for tall modals */
    overflow: auto;
}

.jw-modal.open {
    display: block;
}

.jw-modal-body {
    margin-top: 10vh;
    padding: 10px;
    background: #fff;
    max-width: 700px;
    margin: auto;
    border-radius: 5px;
}

body.jw-modal-open {
    /* body overflow is hidden to hide main scrollbar when modal window is open */
    overflow: hidden;
}

.row {
    display: flex;
    flex-wrap: wrap;
}

/*---------- calendar -----------*/
.calendar {
    display: grid;
    /* grid-template-columns: [time] auto [sun] minmax(65px, 1fr) [mon] minmax(65px, 1fr) [tue] minmax(65px, 1fr) [wed] minmax(65px, 1fr) [thu] minmax(65px, 1fr) [fri] minmax(65px, 1fr) [sat] minmax(65px, 1fr); */
    grid-template-columns: [time] auto [sun] minmax(60px, 1fr) [mon] minmax(60px, 1fr) [tue] minmax(60px, 1fr) [wed] minmax(60px, 1fr) [thu] minmax(60px, 1fr) [fri] minmax(60px, 1fr) [sat] minmax(60px, 1fr);
    grid-template-rows:
        [day] auto [h00] 1fr [h01] 1fr [h02] 1fr [h03] 1fr [h04] 1fr [h05] 1fr [h06] 1fr [h07] 1fr [h08] 1fr [h09] 1fr [h10] 1fr [h11] 1fr [h12] 1fr [h13] 1fr [h14] 1fr [h15] 1fr [h16] 1fr [h17] 1fr [h18] 1fr [h19] 1fr [h20] 1fr [h21] 1fr [h22] 1fr [h23] 1fr [h24] 1fr;
    gap: 1px;
    background-color: #eee;
    width: 100%;
    height: 100%;
    overflow: auto;
    padding: 0.3em;
    box-sizing: border-box;
    margin: 0.3em;
}

.calendar li {
    background-color: white;
    padding: 0.25em;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-sizing: border-box;
}

li.day,
li.time,
li.corner {
    background-color: #f5f5f5;
}

li.day {
    text-align: center;
}

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

li.event {
    background-color: #82caaf;
    z-index: 1;
}

li.event.kayak {
    background-color: #fecf6a;
}

li.event.surf {
    background-color: #82caaf;
}

li.event.active {
    /* background-color: #8fbc8f !important; */
    background-color: #3cb371 !important;
    /* opacity: 0.5; */
    border: red solid 1px;
    border-radius: 5px;
    font-size: larger;
}

.corner {
    grid-area: day / time;
}

/* DAY HEADINGS */
.sun {
    grid-column: sun;
    grid-row: day;
}

.mon {
    grid-column: mon;
    grid-row: day;
}

.tue {
    grid-column: tue;
    grid-row: day;
}

.wed {
    grid-column: wed;
    grid-row: day;
}

.thu {
    grid-column: thu;
    grid-row: day;
}

.fri {
    grid-column: fri;
    grid-row: day;
}

.sat {
    grid-column: sat;
    grid-row: day;
}

/* TIME HEADINGS */
.h00 {
    grid-row: h00;
    grid-column: time;
}

.h01 {
    grid-row: h01;
    grid-column: time;
}

.h02 {
    grid-row: h02;
    grid-column: time;
}

.h03 {
    grid-row: h03;
    grid-column: time;
}

.h04 {
    grid-row: h04;
    grid-column: time;
}

.h05 {
    grid-row: h05;
    grid-column: time;
}

.h06 {
    grid-row: h06;
    grid-column: time;
}

.h07 {
    grid-row: h07;
    grid-column: time;
}

.h08 {
    grid-row: h08;
    grid-column: time;
}

.h09 {
    grid-row: h09;
    grid-column: time;
}

.h10 {
    grid-row: h10;
    grid-column: time;
}

.h11 {
    grid-row: h11;
    grid-column: time;
}

.h12 {
    grid-row: h12;
    grid-column: time;
}

.h13 {
    grid-row: h13;
    grid-column: time;
}

.h14 {
    grid-row: h14;
    grid-column: time;
}

.h15 {
    grid-row: h15;
    grid-column: time;
}

.h16 {
    grid-row: h16;
    grid-column: time;
}

.h17 {
    grid-row: h17;
    grid-column: time;
}

.h18 {
    grid-row: h18;
    grid-column: time;
}

.h19 {
    grid-row: h19;
    grid-column: time;
}

.h20 {
    grid-row: h20;
    grid-column: time;
}

.h21 {
    grid-row: h21;
    grid-column: time;
}

.h22 {
    grid-row: h22;
    grid-column: time;
}

.h23 {
    grid-row: h23;
    grid-column: time;
}

.h24 {
    grid-row: h24;
    grid-column: time;
}

              
/* RESPONSIVENESS */
@media (max-width: 912px) {
    .my-container {
        font-size: 1em;
    }

    .calendar {
        grid-template-columns: [time] auto [sun] minmax(65px, 1fr) [mon] minmax(65px, 1fr) [tue] minmax(65px, 1fr) [wed] minmax(65px, 1fr) [thu] minmax(65px, 1fr) [fri] minmax(65px, 1fr) [sat] minmax(65px, 1fr);
        /* grid-template-rows: [day] auto [h08] minmax(60px, 1fr) [h09] minmax(60px, 1fr) [h10] minmax(60px, 1fr) [h11] minmax(60px, 1fr) [h12] minmax(60px, 1fr) [h13] minmax(60px, 1fr) [h14] minmax(60px, 1fr) [h15] minmax(60px, 1fr) [h16] minmax(60px, 1fr) [h17] minmax(60px, 1fr) [h18] minmax(60px, 1fr) [h19] minmax(60px, 1fr) [h20] minmax(60px, 1fr); */
        grid-template-rows:
            [day] auto [h00] 1fr [h01] 1fr [h02] 1fr [h03] 1fr [h04] 1fr [h05] 1fr [h06] 1fr [h07] 1fr [h08] 1fr [h09] 1fr [h10] 1fr [h11] 1fr [h12] 1fr [h13] 1fr [h14] 1fr [h15] 1fr [h16] 1fr [h17] 1fr [h18] 1fr [h19] 1fr [h20] 1fr [h21] 1fr [h22] 1fr [h23] 1fr [h24] 1fr;

    }

    .calendar li {
        padding: 0.2em;
    }

    .day,
    .surf,
    .time {
        font-size: 0.8em;
    }
}

@media (max-width: 768px) {
    /* .my-container {
        font-size: 0.8em;
    } */

    .calendar {
        grid-template-columns: [time] auto [sun] minmax(40px, 1fr) [mon] minmax(40px, 1fr) [tue] minmax(40px, 1fr) [wed] minmax(40px, 1fr) [thu] minmax(40px, 1fr) [fri] minmax(40px, 1fr) [sat] minmax(40px, 1fr);
        grid-template-rows:
            [day] auto [h00] 1fr [h01] 1fr [h02] 1fr [h03] 1fr [h04] 1fr [h05] 1fr [h06] 1fr [h07] 1fr [h08] 1fr [h09] 1fr [h10] 1fr [h11] 1fr [h12] 1fr [h13] 1fr [h14] 1fr [h15] 1fr [h16] 1fr [h17] 1fr [h18] 1fr [h19] 1fr [h20] 1fr [h21] 1fr [h22] 1fr [h23] 1fr [h24] 1fr;
    }

    .calendar li {
        padding: 0.2em;
    }

    .day,
    .surf,
    .time {
        font-size: 0.8em;
    }
}

@media (max-width: 480px) {

    .my-container {
            width: 94vw;
        }

    .day,
    .surf,
    .time {
        font-size: 0.7em;
    }

    .jw-modal-body {
        margin-top: 5vh;
    }

    .calendar {
        grid-template-columns: [time] auto [sun] minmax(30px, 1fr) [mon] minmax(30px, 1fr) [tue] minmax(30px, 1fr) [wed] minmax(30px, 1fr) [thu] minmax(30px, 1fr) [fri] minmax(30px, 1fr) [sat] minmax(30px, 1fr);
        grid-template-rows:
            [day] auto [h00] 1fr [h01] 1fr [h02] 1fr [h03] 1fr [h04] 1fr [h05] 1fr [h06] 1fr [h07] 1fr [h08] 1fr [h09] 1fr [h10] 1fr [h11] 1fr [h12] 1fr [h13] 1fr [h14] 1fr [h15] 1fr [h16] 1fr [h17] 1fr [h18] 1fr [h19] 1fr [h20] 1fr [h21] 1fr [h22] 1fr [h23] 1fr [h24] 1fr;
    }

    .calendar li {
        padding: 0.1em;
    }


}

/* ----------- responsive ----------- */
@media (min-width: 10em) {
    #legend {
        top: 12vh;
    }
}

/*  oneplus 8t v	*/
@media (min-width: 20em) {
    .ui-accordion .ui-accordion-header {
        font-size: 90% !important;
        font-weight: 600 !important;
    }

    #legend {
        top: 9vh;
    }
}

@media (min-width: 25em) {

    /* 25em */
    #legend {
        top: 8vh;
    }
}

/* phone portrait galaxy fold low v & h */
@media (min-width: 30em) {
    #legend {
        top: 18vh;
    }
}

/*  */
@media (min-width: 35em) {
    #legend {
        top: 8vh;
    }
}

/*  */
@media (min-width: 40em) {
    #legend {
        top: 18vh;
    }
}

/* oneplus 8t ipad mini v low*/
@media (min-width: 45em) and (orientation: portrait) {
    #legend {
        top: 8vh;
    }
}

/* oneplus 8t ipad mini v low*/
@media (min-width: 45em) and (orientation: landscape) {
    #legend {
        top: 18vh;
    }
}

/* ifon x hz */
@media (min-width: 50em) {
    #legend {
        top: 16vh;
    }
}

/* pixel 2x hz ifon 12 pro hz */
@media (min-width: 51em) {
    #legend {
        top: 16vh;
    }
}

/*  ipad air vh*/
@media (min-width: 51em) and (orientation: portrait) {
    #legend {
        top: 6vh;
    }
}

@media (min-width: 54em) {
    #legend {
        top: 6vh;
    }
}

/* galaxy a51 hz */
@media (min-width: 55em) {
    #legend {
        top: 16vh;
    }
}

/* surface pro vh  ifon xr hz  */
@media (min-width: 56em) {
    #legend {
        top: 6vh;
    }
}

/* pc a little low */
@media (min-width: 56em) and (orientation: landscape) {
    #legend {
        top: 16vh;
    }
}

@media (min-width: 60em) {
    #legend {
        top: 10vh;
    }
}

@media (min-width: 65em) {
    #legend {
        top: 9vh;
    }
}
