:root {
    /*==========  PB colours ===========*/

    /*  --sector   			sector background
	--transit  			transit icon and font colour
	--layover  			layover background
	--transitbgrd 		background for transit, Whole PB background
*/

    --sector: #6495ed;
    --hovericon_SEC: #ffffff;
    --expandtxtbgrd_SEC: #6495ed;
    --leftborder_SEC: #0066A4;

    --transit: #000000;
    --transitbgrd: #e0ffff;
    --Leftborder_TR: #f9ca06;

    --layover: #c1ffc1;
    --icon_LO: #15931C;
    --hovericon_LO: #15931C;
    --expandtxtbgrd_LO: #15931C;
    --leftborder_LO: #15931C;

    --headfootbdr: #000000;
    --headfootbgrd: #e0ffff;

    --mainmenu: #0066A4;
    --calfreedays: green;
    --caldow: #0066A4;
    --calpairing: #15931C;

    --cw_teal: #14789A;

    /*=========== eLog Colours ===========*/
    --monthheadbgrd: #0066A4;
    /*====================================*/
    --crt_bkbrgd: #0066A4;
    --crt_bktext: gold;
    --crt_srvbrgd: white;
    --crt_srvext: black;
}

BODY {
    font-size: 12px;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    padding: 0px;
    margin: 0px;
    box-sizing: border-box;
}

.overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    filter: alpha(opacity=50);
}

.hand {
    cursor: pointer;
    cursor: hand;
}

#cw_logo {
    background-image: url(/assets/crewsware_logo_white.svg);
    background-repeat: no-repeat;
    background-size: contain;
}

#cw_wm {
    display: inline-block;
    cursor: pointer;
    cursor: hand;
    height: 16px;
    width: 120px;
    top: -1px;
    left: 30px;
    position: relative;
    background-image: url(/assets/cwlogo_white.svg);
    background-repeat: no-repeat;
    background-size: auto 16px;
}

#cw_datasource {
}

#adminID, #adminPWD, #adminUserID, #setUserid, #ap_equip, #iosKey, #userID, #userPWD {
    padding: 2px 5px;
    background: whitesmoke;
    border: 1px solid white;
    width: 150px;
    font-size: 16px;
    display: none;
    border-radius: 10px;
    color: var(--cw_teal);
    margin: 5px;
}

#userID, #userPWD {
    display: inline-block;
}

#iosKey {
    display: inline-block;
}

.elogtbl {
    display: inline-block;
    background: white;
    color: black;
    font-size: 13px;
}

.tquad {
    background: white;
}

#quad_0:not([data-scroll='0']),
#quad_1[data-scroll='1'], #quad_1[data-scroll='3'],
#quad_2[data-scroll='2'], #quad_2[data-scroll='3'] {
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
}

#data_state {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    font-size: 18px;
    color: white;
    display: inline-block;
    top: 7px;
    left: 35px;
    position: absolute;
    white-space: nowrap;
    height: 20px;
}

#data_state::before {
    position: absolute;
    content: "\f0c7";
}

#data_state[data-online='1']::before {
    position: absolute;
    content: "\f0ed";
}

.ith {
    font-weight: bold;
    border-bottom: 1px solid black;
    background: whitesmoke;
    color: var(--monthheadbgrd);
}

.itr {
    border: 1px solid silver;
    border-bottom: none;
    white-space: nowrap;
    cursor: pointer;
    cursor: hand;
    background: white;
}

.itr[data-open='1'] {
    cursor: default;
}

.itr:first-child {
    border-top: none;
}

.itd {
    border-top: 1px solid silver;
    display: inline-block;
    padding: 2px 8px;
    border-left: 1px solid silver;
    text-align: center;
    box-sizing: border-box;
    vertical-align: bottom;
}

.itd:first-child {
    border-left: none;
}

.ittd {
    height: 20px;
}

.elog_edit {
    border: 1px solid silver;
    background: white;
}

.elog_edit[data-changed='1'] {
    background: whitesmoke;
}

#supportClose {
    position: absolute;
    display: inline-block;
    top: 5px;
    right: 5px;
    font-size: 20px;
    color: silver;
    cursor: pointer;
    cursor: hand;
}

#supportButton {
    position: absolute;
    cursor: pointer;
    cursor: hand;
    top: 5px;
    right: 20px;
    font-size: 18px;
    width: 20px;
    height: 20px;
}

#supportPanel {
    background: white;
    border-radius: 10px;
    padding: 10px;
    margin-top: 20px;
    min-height: 200px;
    position: relative;
    color: var(--cw_teal);
}

.elog_panel {
    width: 100%;
    min-height: 100vh;
    height: 100%;
    box-sizing: border-box;
    padding: 10px;
    background: var(--cw_teal);
    color: white;
}

/* ----------------- Button Designs  ------------------------------------*/

.elog_btn, .utc_hour_btn, .cr_genbtn, .mc_ebtn, .mc_gbtn, .pd_gbtn, .ic_btn {
    display: inline-block;
    cursor: pointer;
    cursor: hand;
    padding: 2px 10px;
    border-radius: 10px;
    font-size: 14px;
    position: relative;
    line-height: 14px;
}

.pd_gbtn {
    margin-right: 5px;
    line-height: 18px;
}

.order_place[data-confirm='1'] {
    border: 2px solid crimson;
    color: crimson;
}

.order_place[data-confirm='2'] {
    border: 2px solid silver;
    color: silver;
}

.order_place[data-confirm='1'] .order_place_pc {
    display: none;
}

.order_place[data-confirm='2'] .order_place_pc {
    display: none;
}

.order_place[data-confirm='0'] .order_place_conf {
    display: none;
}

.order_place[data-confirm='2'] .order_place_conf {
    display: none;
}

.order_place[data-confirm='0'] .order_place_run {
    display: none;
}

.order_place[data-confirm='1'] .order_place_run {
    display: none;
}

.utc_hour_btn, .cr_genbtn {
    background: white;
    color: black;
    font-weight: bold;
}

.cr_genbtn[data-action].disabled {
    border: 2px solid lightgray;
    color: lightgray;
}

.cr_genbtn[data-on='1'], .pd_gbtn[data-on='1'] {
    font-weight: bold;
    color: white;
    background: black;
}

.cr_genbtn[data-action='ok'],
.cr_genbtn[data-action='save'] {
    border: 2px solid green;
    color: green;
}

.cr_genbtn[data-action='cancel'] {
    border: 2px solid blue;
    color: blue;
}

.cr_genbtn[data-action='delete'],
.cr_genbtn[data-action='undo'] {
    border: 2px solid red;
    color: red;
}

.cr_genbtn[data-action='choose'] {
    border: 2px solid black;
    color: black;
}

.cc_btn, .mc_ebtn, .mc_gbtn, .pd_gbtn {
    border: 2px solid var(--cw_teal);
    color: var(--cw_teal);
}

/* whatever uses this should point to delete / undo above*/
.ic_btn[data-ok="0"] {
    border: 2px solid red;
    color: red;
}

.ic-delete-calendar {
    color: white;
    background-color: red;
    margin: 0;
    padding: .25rem .5rem;
    border: none;
    font-size: .7rem;
}

input[type=file]::file-selector-button {
    cursor: pointer;
    border: 2px solid black;
    color: black;
    background-color: white;
    font-size: .9rem;
    font-weight: bold;
    border-radius: 10px;
    padding: .125rem .625rem;
}

/* -----------------------------------------------------*/

.cc_cdiv[data-isfav='1'] {
    display: none;
}

.mc_gbtn[data-on='1'] {
    background: var(--cw_teal);
    color: white !important;
}

.mc_gbtn[data-expand='1'] {
    display: block;
    margin-top: 5px;
    margin-bottom: 5px;
    background: white;
}

.mc_ebtn {
    width: 30px;
    margin-right: 5px;
    text-align: center;
}

#utc_hour_cancel {
    color: red;
}

#utc_hour_ok {
    color: green;
}

#elogSearch, #elogResults {
    width: 290px;
    border-radius: 10px;
    font-size: 14px;
    padding: 3px 10px;
    border: none;
    background: white;
    color: var(--cw_teal);
}

#elogResults {
    padding-top: 10px;
}

#elogResults div {
    padding: 3px;
    border-bottom: 1px dotted var(--cw_teal);
    cursor: pointer;
    cursor: hand;
    position: relative;
}

#elogResults div:last-child {
    border-bottom: none;
}

#splash_state, .notice_bar {
    max-width: 300px;
    font-size: 16px;
    border: 2px solid white;
    padding: 4px 10px;
    border-radius: 18px;
    color: white;
    background: #424242; /* #424242; #0066A4; near black  <<<<<<<<<<<<<<<<<<<<*/
    position: relative;
    top: 25vh;
    display: inline-block;
}

#splash_state_message {
    font-size: 11px;
    text-align: center;
    color: silver;
    width: 100%;
    position: absolute;
    bottom: -24px;
}

.splash_screen, .help_screen {
    font-size: 14px;
    margin: auto;
    width: 95%;
    color: black;
    padding: 20px;
    margin-top: 30px;
    border-radius: 10px;
    border: 2px solid white;
    background: white;
    z-index: 61;
}

.help_screen {
    position: fixed;
    max-height: 80%;
    width: 90%;
    left: 5%;
    box-sizing: border-box;
    overflow-y: auto;
}

.login_btn {
    display: inline-block;
    padding: 4px 14px;
    border-radius: 14px;
    border: 1px solid white;
    background: DarkSlateGray; /*<<<<<<<<<<<<<<<<< */
    font-weight: bold;
    cursor: pointer;
    cursor: hand;
}

.login_btn:hover {
    background: white;
    color: DarkSlateGray; /*<<<<<<<<<<<<<<<<< */
}

#expired_btn {
    display: inline-block;
    padding: 4px 14px;
    border-radius: 14px;
    border: 2px solid DarkSlateGray;
    color: DarkSlateGray;
    background: white;
    font-weight: bold;
    cursor: pointer;
    cursor: hand;
}

#ostatus {
    display: inline-block;
    background: green;
    color: white;
    cursor: pointer;
    cursor: hand;
}

#ostatus[data-online='0'] {
    background: red;
}

#enableNotification {
    display: inline-block;
    border: 1px solid blue;
    padding: 1px 4px;
    border-radius: 10px;
    color: blue;
    background: white;
    cursor: pointer;
    cursor: hand;
}

#enableNotification:hover {
    background: whitesmoke;
}

#top_bar {
    height: 29px;
    width: 100vw;
    position: fixed;
    z-index: 10;
    top: 0;
    left: 0;
    background: var(--cw_teal);
    border-bottom: 1px solid black;
    padding-bottom: 5px;
}

#top_bar[data-scroll='1'] {
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
}

#menu_btn {
    font-size: 25px;
    cursor: pointer;
    cursor: hand;
    padding: 4px;
}

#menu_close {
    position: absolute;
    font-size: 18px;
    width: 12px;
    height: 12px;
    background: white;
    border-radius: 12px;
    top: -6px;
    right: -6px;
    cursor: pointer;
    cursor: hand;
    z-index: +1;
    color: red;
}

#menu_close i {
    position: relative;
    top: -6px;
    left: -2px;
}

#menu_close:hover {
    color: black;
}

#menu { /* main menu */
    background: var(--mainmenu);
    opacity: .9;
    position: fixed;
    display: inline-block;
    top: 35px;
    left: 0px;
    color: white;
    z-index: 10;
}

.menu_item {
    padding: 5px;
    padding-right: 20px;
    padding-left: 25px;
    font-size: 16px;
    border-top: 1px solid white;
    opacity: 1;
    cursor: pointer;
    cursor: hand;
    position: relative;
}

.menu_item:hover {
    background: white;
    color: black;
}

.menu_item:first-child {
    border-top: none;
}

.menu_item[data-on='1']::before { /* main menu item currently on */
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f0a9";
    font-size: 15px;
    color: gold;
    width: 20px;
    display: inline-block;
    position: absolute;
    left: 4px;
    top: 4px;
}

/*-------------------------------- ???? */
.ypanel {
    border: 1px solid silver;
    padding: 5px;
    padding-top: 25px;
    border-radius: 10px;
    display: inline-block;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
    background: whitesmoke;
    color: black;
}

.ypanel[data-src='DB'] {
    background: white;
}

.ypanel .yhead {
    padding: 2px;
    font-weight: bold;
    background: var(--monthheadbgrd); /* month header background*/
    color: white;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    text-align: center;
    display: flex;
    justify-content: space-around;
}

.ypanel .th {
    font-weight: bold;
    color: var(--monthheadbgrd);
    border-bottom: 1px dotted var(--monthheadbgrd);
}

.ypanel .tf {
    font-weight: bold;
    color: var(--monthheadbgrd);
    border-top: 1px dotted var(--monthheadbgrd);
}

.ypanel .td {
    display: inline-block;
    padding: 2px 5px;
    text-align: right;
}

.ypanel .yp_menu, .elog_btn {
    display: inline-block;
    padding: 2px 5px;
    text-align: right;
    cursor: pointer;
    cursor: hand;
    border-radius: 12px;
    border: 1px solid var(--monthheadbgrd);
    margin: 2px;
}

.elog_btn {
    background: white;
    color: var(--monthheadbgrd);
}

.elog_input {
    padding: 2px 5px;
    background: white;
    color: var(--monthheadbgrd);
    border: 1px solid var(--monthheadbgrd);
    text-align: left;
    border-radius: 4px;
    margin: 2px;
}

.elog_btn {
    text-align: center;
}

.elog_editrow {
    height: 24px;
}

.ypanel .yp_menu[data-on='1'], .elog_btn[data-on='1'] {
    background: var(--monthheadbgrd);
    color: white;
    font-weight: bold;
}

.ypanel .plink,
.ypanel .toggle-year-ypanel,
.ypanel .showGlobeBtn {
    cursor: pointer;
    cursor: hand;
    border-radius: 10px;
}

.ypanel .plink:hover,
.ypanel .toggle-year-ypanel:hover,
.ypanel .showGlobeBtn:hover {
    background: whitesmoke;
    color: black;
}

.ypanel.hide-ypanel {
    width: 286px;
    background: var(--monthheadbgrd);
    padding: 10px;
}

.ypanel.hide-ypanel .yhead {
    padding: 3px;
}

.show-icon-ypanel {
    display: none;
}

.hide-ypanel .ypanel-content {
    display: none;
}

.hide-ypanel .show-icon-ypanel {
    display: inline-block;
}

.hide-ypanel .hide-icon-ypanel {
    display: none;
}

/*-------------------------------- Pairing Brief */
#pb_source {
    text-align: center;
    margin-top: 10px;
    margin-bottom: 30px;
    font-size: 12px;
    color: white;
}

.pb_pairing {
    background: var(--headfootbgrd);
    /*color:red;*/
    border: 1px solid black;
    border-radius: 10px;
    margin-bottom: 30px;
    position: relative;

    text-align: center;
}

.pb_pairing:first-child {
    margin-top: 30px;
}

.pb_header, .pb_footer { /* Start of pairing header */
    padding: 4px 10px;
    position: relative;
    margin: auto;
    text-align: center;
    display: inline-block;
    background: green;
    border: 1px solid var(--headfootbdr);
    color: white;
    border-radius: 10px;
    z-index: 2;
}

.pb_header {
    top: -9px;
}

.pb_footer { /* end of pairing footer */
    background: crimson;
    bottom: -12px;
}

.pb_dd {
    padding-left: 8px;
    border-left: 5px solid var(--leftborder_SEC);
    z-index: 2;
}

.pb_lo {
    padding-left: 8px;
    border-left: 5px solid var(--leftborder_LO);
    z-index: 2;
}

.pb_icon {
    margin-right: 5px;
    cursor: pointer;
    cursor: hand;
    padding: 3px;
    font-size: 34px;
    border-radius: 5px;
}

.pb_icon:last-child {
    margin-right: 0px;
}

.pb_icon[data-on='1'] {
    background: var(--hovericon_SEC);
    color: var(--sector);
}

.pb_icon.icon_lo[data-on='1'] {
    background: var(--hovericon_LO);
    color: white; /* undefined colour  */
}

.pb_icon[data-on='1'] {
    border-radius: 5px 5px 0px 0px;
}

.pb_hassub {
    cursor: pointer;
    cursor: hand;
}

.pb_sub {
    padding-left: 5px;
    display: none;
}

.pb_item {
    padding: 8px;
    color: blue; /* undefined colour  */
    text-align: center;
    font-size: 15px;
}

.pb_item:last-child {
    margin: 0px;
}

.pb_item[data-type='flight'] {
    /*background:#8590a7;*/
    background: var(--sector);
    color: white;
    padding-left: 15px;
    margin-left: -8px;
    z-index: 1;
}

.pb_item[data-type='transit'] {
    background: var(--transitbgrd);
    color: var(--transit);
    /* Get rid of this or get rid of all the left borders otherwise it's pointless
	border-left:5px solid var(--Leftborder_TR);
	margin-left:-13px;
	*/
    z-index: 2;
}

.pb_item[data-type='layover'] {
    background: var(--layover);
    color: var(--icon_LO);
    padding-left: 15px;
    margin-left: -8px;
}

.pb_details { /* expanded text section */
    color: var(--sector);
    background: white;
    padding: 2px;
    display: none;
    border-radius: 10px;
    overflow: hidden;
    cursor: pointer;
    cursor: hand;
    margin-left: -8px;
}

.pb_details[data-flag='1'] {
    margin-left: 8px;
    margin-right: 8px;
    color: black;
}

.pb_details[data-head='1'] {
    margin-bottom: 8px;
    border: 1px solid green;
}

.pb_details[data-foot='1'] {
    margin-top: 8px;
    border: 1px solid red;
}

.pb_tag {
    cursor: pointer;
    cursor: hand;
}

.pb_details.pb_details_lo { /* layover expanded text section */
    color: white;
    background: var(--hovericon_LO);
}

.subline {
    margin-right: 4px;
}

.subline:not(:first-child) {
    padding-top: 1px;
    margin-top: 1px;
    border-top: 1px dotted var(--sector);
}

.pb_details.pb_details_lo .subline:not(:first-child) { /* layover detail lines */
    border-top: 1px dotted white;
}

.pb_map {
    position: absolute;
    width: 60px;
    font-size: 11px;
    right: 0px;
    background: white;
    color: black;
    border-radius: 20px;
    opacity: .8;
}

.pb_map[data-on='1'] {
    background: var(--mainmenu);
    color: white;
}

.pb_map[data-on='2'] {
    background: black;
    color: white;
}

.subline:last-child {
    margin-right: 0px;
}

/*-------------------------------- Calendar table */
.ctable {
    border: 2px solid white;
    border-radius: 10px;
    text-align: center;
    border-spacing: 0px;
    overflow: hidden;
    display: inline-block;
    vertical-align: top;
    margin-left: 10px;
    background: var(--headfootbgrd);
}

.ctable:first-child {
    margin-left: 0px;
}

.ctable .chead { /* Month Name */
    background: white;
    color: black;
    font-weight: bold;
}

.ctable td {
    padding: 3px;
}

.ctable td[data-active='0'] { /* free day but no pairings */
    color: silver;
}

.ctable td[data-active='1'] { /* cal free days */
    background: var(--calfreedays);
    color: white;
    cursor: pointer;
    cursor: hand;
}

.ctable td[data-on='1'] {
    background: black !important; /* selected day */
    color: white !important;
    font-weight: bold;
}

.ctable td[data-work='1'] { /* working days */
    color: tomato;
    font-weight: bold;
}

/*-------------------------------- Add Pairing */

.ap_pairing {
    border: 1px solid white;
    border-radius: 10px;
    padding: 2px 10px;
    margin: 5px;
    font-size: 16px;
    cursor: pointer;
    cursor: hand;
    display: inline-block;
}

.ap_pairing[data-confirm='1'] {
    background: white;
    color: black;
}

.ap_pairing[data-confirm='1'] .ap_confirm {
    display: block;
}

.ap_confirm {
    font-size: 14px;
    color: green;
    font-weight: bold;
    display: none;
}

.ap_route {
    font-size: 14px;
    font-weight: bold;
    background: white;
    padding: 2px 5px;
    border-radius: 10px;
    color: black;
    border: 1px solid var(--cw_teal);
}

/*-------------------------------- Duty Day Calc */

#ddcalc {
    color: black;
}

.ddoption {
    background: white;
    border-radius: 10px;
    padding: 5px;
    padding-left: 10px;
    margin-top: 5px;
    position: relative;
    color: var(--cw_teal);
}

.ddbutton, .ddbuttonx, #dddhxbutton {
    cursor: pointer;
    cursor: hand;
    font-size: 30px;
    color: var(--mainmenu);
}

#dddhxbutton[data-on='0'] {
    color: var(--mainmenu);
}

#dddhxbutton[data-on='1'] {
    color: green;
}

#ddstart, #utcopts, .mba_opt, #retmonths {
    display: inline-block;
    font-size: 18px;
    width: 55px;
    text-align: center;
    border: 1px solid var(--cw_teal);
    color: var(--cw_teal);
}

#utcopts, #mba_utc {
    width: 85px;
}

.ddlegbtn {
    font-size: 18px;
    display: inline-block;
    padding: 4px;
    border: 2px solid silver;
    border-radius: 5px;
    cursor: pointer;
    cursor: hand;
    background: white;
    color: var(--mainmenu);
    margin-left: 5px;
}

.ddlegbtn[data-on='1'] {
    background: green;
    color: white;
}

.ddoptheader {
    color: white;
    font-weight: bold;
    text-align: center;
    font-size: 16px;
    margin-top: 15px;
}

.ddlimit {
    padding: 2px 0px;
    border-top: 1px dotted var(--mainmenu);
}

.ddmax_header, .ddoption_header, .support_header {
    font-size: 14px;
    font-weight: bold;
    padding: 4px 10px;
    position: relative;
    margin: auto;
    text-align: center;
    display: inline-block;
    border: 2px solid var(--cw_teal);
    background: white;
    color: var(--cw_teal);
    border-radius: 10px;
    z-index: 2;
    top: -17px;
}

.support_header {
    top: -23px;
}

.ddmultibtn {
    display: inline-block;
    border: 1px solid var(--cw_teal);
    padding: 2px 10px;
    font-size: 11px;
    margin-right: 4px;
    border-radius: 5px;
    cursor: pointer;
    cursor: hand;
}

.ddmultibtn[data-on='1'] {
    background: var(--cw_teal);
    color: white;
}

.emergPhone {
    color: white;
    text-decoration: none;
    border: 1px solid white;
    padding: 3px 10px;
    border-radius: 12px;
}

.mcal {
    width: auto;
    background: white;
    color: var(--cw_teal);
    white-space: nowrap;
    display: block;
    border-bottom: 4px solid var(--cw_teal);
    text-align: center;
}

.mcal:last-child {
    border-bottom: none;
    margin-bottom: 100px;
}

.mcal .mcal_sep {
    display: block;
}

.mcal .mhead {
    font-weight: bold;
    font-size: 16px;
    margin: 5px;
    text-align: left;
}

.mcal .tr {
    border-bottom: 1px solid silver;
    display: inline-block;
    position: relative;
    color: var(--cw_teal);
    background: white;
}

.mcal .tr:last-child {
    border-bottom: none;
}

.mcal .td {
    display: inline-block;
    width: 42px;
    height: 40px;
    border-left: 1px solid silver;
    position: relative;
    box-sizing: border-box;
}

.mcal .tdh {
    height: 15px;
    font-weight: normal;
    position: relative;
}

.mcal .td:first-child {
    border-left: none;
}

.mcal .tdhc {
    cursor: pointer;
    cursor: hand;
    z-index: 2;
    position: absolute;
    width: 100%;
    height: 100%;
}

.mcal .tdhc[data-on='1'] {
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.5);
}

.mcal .event {
    position: absolute;
    top: 15px;
    background: silver;
    height: 10px;
    text-align: center;
    overflow: hidden;
}

.mcal .event_lo {
    position: absolute;
    font-size: 10px;
    top: 2px;
    height: 12px;
    color: var(--calpairing);
    background: white;
    overflow: hidden;
}

.mcal .event_text {
    position: absolute;
    top: 25px;
    transform: translateX(-50%);
    font-size: 10px;
}

.mcal .cevent {
    position: absolute;
    /*top:15px;*/
    bottom: 0px;
    background: silver;
    text-align: center;
    height: 12px;
    height: fit-content;
    padding: 1px;
    font-size: 10px;
    overflow: hidden;
    white-space: nowrap;
    margin-bottom: 1px;
}

.mcal .event[data-siw='1'] {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.mcal .event[data-eiw='1'] {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.mcal .cal_week {
    box-sizing: border-box;
    border: 1px solid var(--monthheadbgrd);
    padding: 2px;
    padding-bottom: 10px;
    padding-top: 10px;
    border-radius: 8px;
    margin: 5px;
    position: absolute;
    display: none;
    cursor: pointer;
    cursor: hand;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.4);
}

.mcal .cal_week_arrow {
    width: 0px;
    height: 0px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid var(--monthheadbgrd);
    position: absolute;

}

.mcal .event_div {
    text-align: left;
    padding: 2px;
    padding-left: 5px;
}

.mcal .event_div_date {
    font-size: 10px;
    color: DarkSlateGray;
}

.mcal .cwd {
    text-align: center;
    border-radius: 13px;
    color: white;
    margin: auto;
    width: 90%;
    background: red;
}

.mcal .editevent {
    text-align: left;
    padding-top:7px;
    padding-bottom:7px;
    border-bottom: 1px solid silver;
    font-size: 14px;
}

.mc_inscbtn[data-confirm='1']::before {
    content: "Confirm ";
}

#mc_fxheader {
    z-index: 3;
    border: none;
    position: fixed;
    top: 30px;
    left: 0px;
    height: 44px;
    overflow: hidden;
    border-bottom: 1px solid silver;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
}

#mc_cpicker {
    width: 20px;
    height: 20px;
    font-size: 18px;
    border-radius: 10px;
    padding: 2px;
    display: inline-block;
    margin-right: 5px;
    text-align: center;
    position: relative;
    cursor: pointer;
    cursor: hand;
    vertical-align: top;
}

#mc_cpicker[data-on='1'] {
    width: 300px;
    height: 200px;
    display: block;
    border-radius: 0px;
    border: none;
}

.mc_cpicker_c {
    width: 20px;
    height: 20px;
    border: 1px solid white;
    box-sizing: border-box;
    position: absolute;
    cursor: pointer;
    cursor: hand;
    text-align: center;
}

.mc_cpicker_c[data-current='1'] {
    border: 4px solid black;
}

.mc_calbtn {
    width: 30px;
    height: 30px;
    font-size: 18px;
    line-height: 30px;
    border-radius: 5px;
    border: 1px solid silver;
    background: white;
    color: var(--cw_teal);
    margin: 2px;
    cursor: pointer;
    cursor: hand;
    text-align: center;
    display: inline-block;
    box-sizing: border-box;
}

.mc_calbtn[data-state='on'] {
    color: white;
    background: black;
    font-weight: bold;
}

.mc_calbtn[data-state='disabled'] {
    background: whitesmoke;
}

.mc_calbtn[data-state='leadin'] {
    color: white;
    background: silver;
}

.mc_calbtn[data-state='leadout'] {
    color: white;
    background: var(--cw_teal);
    opacity: .5;
}

.mc_calbtnh {
    font-weight: bold;
    background: var(--cw_teal);
    color: white;
    height: 20px;
    line-height: 20px;
    font-size: 12px;
}

.mc_datebtn {
    display: inline-block;
    border: 1px solid var(--cw_teal);
    border-radius: 5px;
    padding: 2px 10px;
    background: whitesmoke;
    color: var(--cw_teal);
    cursor: pointer;
    cursor: hand;
}

.mc_cust_label {
    display: inline-block;
    width: 60px;
    font-weight: normal;
    font-size: 11px;
    vertical-align: top;
}

.mc_inscbtn[data-type="pairing"][data-confirm="1"] {
    border: 2px solid green;
    color: green;
}

.route_lo_short {
    display: inline-block;
    border: 1px solid red;
    padding: 0px 2px;
}

.route_lo_long {
    display: inline-block;
    border: 1px solid green;
    padding: 0px 2px;
}

.route_dh {
    display: inline-block;
    color: blue;
}

#numkp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    filter: alpha(opacity=50);
    z-index: 60;
}

.keypad {
    display: inline-block;
    background: white;
    border-radius: 10px;
    padding: 10px;
    z-index: 90;
    position: absolute;
    text-align: center;
    webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.keypad .numkey, .keypad .numbox {
    width: 40px;
    height: 40px;
    border-radius: 5px;
    font-weight: bold;
    font-size: 18px;
    line-height: 40px;
    margin-right: 10px;
    background: green;
    color: white;
    margin-top: 10px;
    display: inline-block;
}

.keypad .numkey, .keypad .unitbtn, .keypad .cust_alert {
    cursor: pointer;
    cursor: hand;
}

.keypad .unitbtn, .keypad .cust_alert {
    background: var(--cw_teal);
    color: white;
    height: 20px;
    width: auto;
    font-size: 14px;
    display: inline-block;
    border-radius: 5px;
    padding: 5px;
}

.keypad .cust_alert {
    border: 2px solid var(--cw_teal);
    height: auto;
    line-height: 14px;
}

.keypad .cust_alert[data-on='0'] {
    color: var(--cw_teal);
    background: white;
}

.keypad .cust_alert[data-on='1'] {
    background: var(--cw_teal);
    color: white;
}

.keypad .numbox {
    background: white;
    border: 2px solid grey;
    width: 100%;
    color: var(--cw_teal);
}

.keypad .numbox[data-ok='0'] {
    color: red;
}

.keypad .numbox_range {
    color: grey;
    font-size: 11px;
    position: absolute;
    display: inline-block;
}

.keypad .numbox_title {
    font-size: 12px;
    font-weight: bold;
    color: var(--cw_teal);
}

.keypad .numkey:last-child {
    margin-right: 0px;
}

.keypad .timebox {
    line-height: 22px;
    height: auto;
    display: inline-block;
    background: white;
    border-bottom: 2px solid white;
}

.keypad .timebox[data-cursor='1'] {
    background: var(--cw_teal);
    color: white;
    border-bottom: 2px solid black;
}

@media screen and (min-width: 608px) {
    .xmcal {
        display: inline-block;
        vertical-align: top;
        border-right: 4px solid whitesmoke;
        margin-bottom: 5px;
        border-bottom: none;
    }

    .xmcal:last-child {
        border-right: none;
    }
}

/*-------------------------------- Crew Rest Calc */
.crpanel {
    border: 1px solid white;
    padding: 3px;
    border-radius: 10px;
    display: inline-block;
    margin-bottom: 10px;
    position: relative;
    overflow: hidden;
    color: white;
    width: 320px;
}

.cr_time {
    border-radius: 10px;
    width: 75px;
    font-size: 14px;
    text-align: center;
    background: white;
    color: black;
    font-weight: bold;
    display: inline-block;
    padding: 5px;
    border: 1px solid black;
}

.cr_timebtn {
    font-size: 15px;
    width: 30px;
    height: 30px;
    border-radius: 15px;
    text-align: center;
    background: white;
    color: black;
    font-weight: bold;
    display: inline-block;
    margin: 2px;
    cursor: pointer;
    cursor: hand;
}

.cr_timebtn[data-on='1'] {
    color: white;
    background: black;
}

.cr_hind {
    position: absolute;
    font-size: 10px;
    display: inline-block;
    z-index: 0;
}

.cr_bp {
    font-size: 22px;
}

.cr_ibls, .cr_bpls {
    font-size: 18px;
}

.cr_ibls, .cr_bpls {
    font-size: 18px;
}

.cr_ibls span {
    font-size: 12px;
    font-weight: normal;
}

.cr_bp {
    background: var(--cw_teal);
    color: white;
}

.cr_bpi {
    margin: 6px;
}

.cr_ibls[data-length='s']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f0f4";
    width: 24px;
}

.cr_ibls[data-length='l']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f236";
    width: 24px;
}

.cr_bplsl {
    font-weight: bold;
    margin: 5px;
    display: inline-block;
}

.cr_blsb[data-team='1'], .cr_table tr[data-team='1'] td {
    color: red;
}

.cr_blsb[data-team='2'], .cr_table tr[data-team='2'] td {
    color: green;
}

.cr_blsb[data-team='3'], .cr_table tr[data-team='3'] td {
    color: blue;
}

.cr_table {
    border-collapse: collapse;
    font-size: 16px;
}

.cr_table td {
    background: white;
    color: black;
    border: 1px solid black;
    padding: 5px 8px;
    font-weight: bold;
}

.cr_table tr[data-type='b'] td {
    background: #0066A4;
    color: white;
}

.cr_table tr[data-type='x'] td {
    color: var(--crt_srvtext);
    background: var(--crt_srvbrgd);
}

.cr_table td[data-type='p'] {
    background: #e0ffff;
}

#cr_table_progress {
    background: black;
    opacity: .2;
    position: absolute;
    height: 0px;
}

.cr_pbp {
}

#pb_view_btn, #pd_top_btn, #mc_calcfg_btn, .mc_calmod_btn {
    z-index: 9;
    text-align: center;
    position: fixed;
    border-radius: 20px;
    background: white;
    width: 32px;
    height: 32px;
    color: var(--cw_teal);
    font-size: 20px;
    cursor: pointer;
    cursor: hand;
    opacity: .8;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
}

#pb_view_btn {
    top: 42px;
    left: 5px;
}

#mc_calcfg_btn {
    bottom: 12px;
    right: 5px;
}

#pd_top_btn {
    bottom: 12px;
    right: 5px;
}

.mc_calmod_btn {
    width: 20px;
    height: 20px;
    font-size: 14px;
    position: absolute;
}

#vinfo {
    padding-top: 20px;
    font-size: 11px;
    text-align: center;
    color: whitesmoke;
}

#dataAlert {
    font-size: 14px;
    border: 2px solid white;
    border-radius: 10px;
    padding: 12px;
    text-align: center;
    margin: auto;
    margin-top: 35px;
    margin-bottom: 15px;
    display: inline-block;
}

/*  Pairing Display */
pre {
    font-size: 11px;
}

.hltext {
    color: #14789A;
    font-style: italic;
    font-weight: bold;
    font-size: 30px;
}

.einput {
    border: 1px solid silver;
    background: white;
}

.einputcw {
    border: 1px solid var(--cw_teal);
    background: white;
    color: var(--cw_teal);
    padding: 1px;
}

.ohead {
    text-align: right;
    color: white;
    font-size: 13px;
}

.abtn {
    background: white;
    color: #14789A;;
    font-size: 11px;
    font-weight: bold;
    border-radius: 5px;
    padding-left: 10px;
    padding-right: 10px;
    display: inline-block;
    cursor: pointer;
    border: 1px solid white;
    cursor: hand;
}

.abtn[data-count='0'] {
    cursor: default;
    cursor: default;
    background: whitesmoke;
}

.ibtn {
    display: inline-block;
    border-radius: 10px;
    cursor: pointer;
    border: 1px solid white;
    cursor: hand;
    font-size: 12px;
    padding: 1px;
    padding-bottom: 2px;
    width: 14px;
    height: 14px;
    text-align: center;
    color: #14789A;
    background: white;
}

.navbtn {
    display: inline-block;
    height: 25px;
    padding-top: 5px;
    padding-left: 10px;
    padding-right: 10px;
    border-right: 1px solid silver;
    cursor: pointer;
    cursor: hand;
}

.rpdf {
    color: white;
    font-size: 12px;
    padding: 2px;
}

.rpdf:not(:first-child) {
    border-top: 1px solid silver;
}

.rpdf[data-clear='1'] {
    cursor: pointer;
    cursor: hand;
}

.bb_btn {
    padding-left: 10px;
    padding-right: 10px;
    border: 1px solid black;
    border-radius: 5px;
    color: white;
    background: black;
    display: inline-block;
    cursor: pointer;
    cursor: hand;
}

.overlay, #numkp {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
    filter: alpha(opacity=50);
    z-index: 60;
}

#loading {
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
    position: fixed;
    display: block;
    opacity: 0.7;
    background-color: #fff;
    z-index: 9;
    text-align: center;
}

#loading_icon {
    color: royalblue;
}

#loading-image {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 300px;
}

#plookup {
    width: 100px;
    border: 1px solid white;
    background: whitesmoke;
    padding: 1px;
}

#plookupvals {
    width: 100px;
    max-height: 300px;
    overflow-y: auto;
    overflow-x: hidden;
    display: inline-block;
    position: absolute;
    border: 1px solid #14789A;
    background: white;
    left: 0px;
    top: 21px;
}

.plookup_res {
    cursor: pointer;
    cursor: hand;
    background: white;
    padding: 2px;
}

.plookup_res:not(:first-child) {
    border-top: 1px solid silver;
}

.j_feature {
    font-weight: bold;
    color: steelblue;
}

.oselect {
    border: none;
}

.sbtn {
    display: inline-block;
    border: 1px solid white;
    border-radius: 5px;
    color: white;
    font-weight: bold;
    padding: 2px 4px;
    margin-right: 4px;
    cursor: pointer;
    cursor: hand;
}

.sbtn[data-on='1'] {
    background: white;
    color: #14789A;
}

.calhbtn {
    display: inline-block;
    width: 100%;
    padding: 1px;
    border: 1px solid white;
    color: white;
    background: #14789A;;
    text-align: center;
    cursor: pointer;
    cursor: hand;
    font-size: 10px;
}

.clearbtn {
    display: inline-block;
    /*	font-size:11px;*/
    padding: 1px 4px;
    border: 1px solid white;
    font-weight: bold;
    background: white;
    color: #14789A;
    border-radius: 4px;
    cursor: pointer;
    cursor: hand;
    font-size: 10px;
}

.calbtn {
    display: inline-block;
    font-size: 11px;
    width: 22px;
    height: 15px;
    padding: 1px;
    border: 1px solid white;
    border-radius: 4px;
}

.calbtn[data-span='0'] {
    cursor: pointer;
    cursor: hand;
}

.calbtn[data-on='1'], .calhbtn[data-on='1'] {
    background: white;
    font-weight: bold;
    color: #14789A;
}

.calbtn[data-span='1'] {
    background: #8ABFEC;
    font-weight: bold;
}

.caltable {
    text-align: center;
    color: white;
    margin: auto;
}

.caltable td {
    color: white;
}

.calrbtn {
    font-size: 18px;
    display: inline-block;
    cursor: pointer;
    cursor: hand;
}

.calrbtn::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    content: "\f111";
    width: 24px;
}

.calrbtn[data-on='1']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f058";
    width: 24px;
}

.checkboxtext {
    margin-top: 2px;
    color: white;
    font-size: 11px;
}

.checkbox {
    cursor: pointer;
    cursor: hand;
}

#phtml {
    text-align: center;
}

#pairingDisplay {
}

.pd_pairing {
    margin: auto;
    text-align: left;
    font-size: 8px;
    padding: 2px;
    background: white;
    color: black;
    margin-bottom: 5px;
    display: inline-block;
    border-radius: 5px;
    position: relative;
}

.pd_pairing pre {
    font-size: 8px;
}

.pd_pairing[data-onlist='1'] {
    padding-top: 18px;
}

.pd_pairing[data-onlist='1']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f005";
    font-size: 18px;
    color: gold;
    display: inline-block;
    position: absolute;
    left: 2px;
    top: 2px;
}

.pd_container {
    max-width: 100%;
    height: 100%;
    overflow-x: auto;
    padding: 0;
    padding-bottom: 20px;
}

#cconv {
    user-select: none; /* supported by Chrome and Opera */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    font-family: Inter, sans-serif;
}

.cc_row {
    vertical-align: top;
    background: white;
    padding: 16px 12px;
    border-radius: 6px;
    margin: 8px 0px;
    cursor: pointer;
    border: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    display: flex;
    align-items: flex-start;
    color: black;
}

.cc_row[data-dconf='1'], .cc_row[data-dconf='2'] {
    background: red;
    color: white;
    padding-left: 35px;
}

.cc_row[data-dconf='2'] {
    background: green;
}

.cc_row[data-dconf='1']::before, .cc_row[data-dconf='2']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f2ed";
    font-size: 25px;
    display: inline-block;
    position: absolute;
    left: 5px;
    top: 10px;
}

.cc_row[data-dconf='2']::before {
    content: "\f055";
}

.cc_rowf {
    box-sizing: border-box;
}

.cc_head {
    z-index: 2;
    position: sticky;
    top: 35px;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    padding: 2px 6px 4px 6px;
    background: var(--cw_teal);
    filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.5));
}

.currency_list {
    padding: 0px 2px 200px 2px;
}

/* flag styling */
.flags {
    background-image: url('/assets/flags_sprite.png');
    background-size: 876px;
    width: 39px;
    height: 39px;
    display: inline-block;
    flex-shrink: 0;
    margin-right: 14px;
}

.cc_clabel {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-left: 0 !important;
    height: auto !important;
    line-height: 1.2em;
}

.cc_clabel .country {
    font-size: 14px !important;
    font-weight: 500 !important;
    margin-bottom: 4px;

}

.cc_clabel .currency {
    color: #0000008a;
    letter-spacing: .03333em;
    line-height: 1.2em !important;
    font-size: 12px !important;
}

.cc_input {
    padding: 8px 12px;
    font-size: 16px;
    font-weight: 500;
    background: white;
    border: 1px solid #e3e3e3;
    border-radius: 4px;
    width: 100px;
    text-align: right;
    position: static !important;
    right: auto !important;
    top: auto !important;
}

/* Currency symbol styling */
.cc_currency_symbol {
    font-size: 18px;
    color: rgba(0, 0, 0, 0.54);
    margin-left: 8px;
    min-width: 25px;
    text-align: left;
}

/* Hamburger/BMI styling */
.cc_bmi_container {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    flex-wrap: wrap;
    color: #757575;
}

.cc_hamburger {
    display: flex;
    align-items: center;
    gap: 5px;
    height: 22px;
    padding: 0 8px 0 0;
    background-color: white;
    border-radius: 50px;
    border: 1px solid #e3e3e3;
    font-size: 14px;
}

.cc_hamburger_icon {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 22px;
    width: 22px;
    border: 1px solid #e3e3e3;
    border-radius: 50px;
    background-color: white;
}

.cc_hamburger_icon img {
    width: 15px;
    height: 15px;
}

.cc_hamburger.success {
    background-color: rgba(175, 231, 149, 0.66);
}

.cc_hamburger.success .cc_hamburger_icon {
    border: 1px solid rgba(175, 231, 149, 0.66);
}

.cc_hamburger.warning {
    background-color: rgba(231, 164, 149, 0.66);
}

.cc_hamburger.warning .cc_hamburger_icon {
    border: 1px solid rgba(231, 164, 149, 0.66);
}

.cc_input_container {
    display: flex;
    align-items: center;
    margin-left: auto;
    flex-shrink: 0;
}

#cc_add {
    margin: 8px 5px;
    border-radius: 6px;
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.cc_add_left {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}

.cc_add_left span {
    font-weight: bold;
    font-size: 14px;
    word-wrap: break-word;
}

.cc_add_right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

.cc_add_info {
    text-align: right;
    line-height: 14px;
}

.cc_add_info div {
    margin-bottom: 2px;
}

.cc_add_info div:last-child {
    margin-bottom: 0;
}

@media all and (max-width: 380px) {
    .cc_input {
        width: 90px;
    }

    .cc_bmi_container {
        gap: 6px;
    }
}

/* Help Button Styling */
#cc_help_btn_container {
    position: fixed;
    top: 9px;
    right: 12px;
    z-index: 10;
    cursor: pointer;
}

#cc_help_btn_container .fa-question-circle {
    font-size: 24px;
    cursor: pointer;
}

/* General Styling for Action Bars (both default and add views) */
.cc_action_bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2px 12px 4px 12px;
    gap: 20px;
}

.cc_rates_info {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    white-space: nowrap;
}

.cc_button {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    color: #FFFACD;
    border: none;
    background: none;
    font-weight: 500;
    font-family: Inter, sans-serif;
    font-size: 14px;
    padding: 5px;
    flex-shrink: 0;
}

.cc_button span {
    text-transform: none;
}

.cc_slider_wrapper {
    flex-grow: 1;
}

#cc_slider_container {
    width: 100%;
    height: 28px;
    position: relative;
    display: flex;
    align-items: center;
}

#cc_track {
    width: 100%;
    height: 5px;
    background-color: rgba(255, 255, 255, 0.3);
    border-radius: 3px;
    position: absolute;
}

#cc_tail {
    height: 5px;
    background-color: #FFFACD;
    border-radius: 3px;
    position: absolute;
    left: 0;
}

#cc_slider {
    font-size: 18px;
    color: #FFFACD;
    position: absolute;
    top: 5px;
    left: 0;
    z-index: 2;
    background-color: transparent;
    border-radius: 0;
}

.cc_slider_label {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.85);
    line-height: 14px;
    padding: 0 12px;
    margin-bottom: 10px;
}

#cc_slider_tooltip {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);

    background-color: #2F2F2F;
    color: #FFFFFF;
    padding: 6px 12px;
    border-radius: 6px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);

    font-size: 14px;
    font-weight: 500;
    font-family: Inter, sans-serif;
    white-space: nowrap;
}

/* The triangle pointer */
#cc_slider_tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: #2F2F2F transparent transparent transparent;
}

#numberpad {
    font-size: 16px;
    width: 100%;
    z-index: 5;
    background: var(--cw_teal);
    color: black;
    position: fixed;
    padding: 3px;
    -webkit-box-shadow: 0px -2px 10px 0px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0px -2px 10px 0px rgba(0, 0, 0, 0.5);
    box-shadow: 0px -2px 10px 0px rgba(0, 0, 0, 0.5);
    user-select: none; /* supported by Chrome and Opera */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
}

#npad_calcdisplay {
    box-sizing: border-box;
    display: inline-block;
    padding: 0px 4px;
    width: 246px;
    margin-right: 2px;
    height: 25px;
    line-height: 25px;
    text-align: left;
    font-size: 18px;
    background: white;
    color: var(--cw_teal);
}

.npad_row {
    display: inline-block;
}

.npad_rowc {
    text-align: center;
}

.npad_rowc:not(:first-child) {
    margin-top: 2px;
}

.npad_btn {
    background: white;
    display: inline-block;
    margin-right: 2px;
    width: 60px;
    height: 35px;
    line-height: 35px;
    color: var(--cw_teal);
    cursor: pointer;
    cursor: hand;
}

.npad_btn:last-child {
    margin-right: none;
}

.npad_num {
    cursor: pointer;
    cursor: hand;
}

.npad_num[data-io='1'] {
    border-right: 2px solid black;
}

.npad_num[data-io='sel'] {
    background: var(--cw_teal);
    color: white;
}

.npad_num[data-io='ans'] {
    background: whitesmoke;
    color: firebrick;
}

.npad_num[data-op='1'] {
    font-weight: bold;
    color: firebrick;
    margin-left: 2px;
    margin-right: 2px;
}

.npad_target {
    background: yellow;
}

.npad_c {
    z-index: 2;
}

.gen_cbox {
    display: inline-block;
    cursor: pointer;
    cursor: hand;
}

.gen_cbox::before {
    font-family: "Font Awesome 5 Pro";
    content: "\f057";
    font-size: 15px;
    color: silver;
    width: 16px;
    height: 15px;
    display: inline-block;
}

.gen_cbox[data-on='1']::before {
    content: "\f058";
    color: green;
}

.gen_btn {
    cursor: pointer;
    cursor: hand;
    margin-left: 9px;
    font-weight: bold;
    color: var(--mainmenu);
    font-size: 14px;
    border: 2px solid var(--mainmenu);
    border-radius: 5px;
    display: inline-block;
    padding: 3px;
}

.order_head {
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    margin-top: 15px;
    margin-bottom: 15px;
    color: green;
}

.order_head[data-cat='promo'] {
    font-size: 18px;
    margin-bottom: 5px;
    color: red;
}

.order_head[data-cat='promo']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 900;
    content: "\f2f3";
    font-size: 20px;
    width: 28px;
    display: inline-block;
    position: relative;
}

#order_timer {
    font-size: 14px;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 15px;
    color: red;
}

.order_opt {
    position: relative;
    vertical-align: top;
    padding: 8px;
    border: 1px solid var(--mainmenu);
    border-radius: 10px;
    margin-top: 10px;
    font-size: 15px;
}

.order_opt .order_subopt {
    display: none;
    margin-top: 10px;
}

.order_cc {
    height: 30px;
    line-height: 46px;
}

.order_opt[data-selected='1'] {
    border: 2px solid green;
    background: lightyellow;
    padding: 7px;
}

.order_opt[data-selected='1'] .order_subopt {
    display: block;
}

.order_opt[data-selected='1']::before, .order_opt[data-delete='1']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    content: "\f058";
    font-size: 30px;
    width: 20px;
    display: inline-block;
    position: absolute;
    right: 15px;
    top: 0px;
    color: green;
}

.order_opt[data-delete='1']::before {
    content: "\f2ed";
    color: red;
}

.order_opt[data-delete='2']::before {
    font-size: 14px;
    font-weight: bold;
    background: red;
    color: white;
    padding: 2px 5px;
    border-radius: 5px;
    display: inline-block;
    content: "Click to Delete";
    position: absolute;
    text-align: right;
    right: 15px;
    top: 12px;
    height: 18px;
    line-height: 18px;
    z-index: 1;
}

.order_opt[data-primary='1'] {
    border: 2px solid var(--mainmenu);
    margin-top: 20px;
}

#order_primarycc {
    line-height: 14px;
    font-size: 12px;
    display: inline-block;
    position: absolute;
    top: -10px;
    right: 10px;
    background: var(--mainmenu);
    color: white;
    padding: 3px;
    border-radius: 5px;
}

#cc_manage_confirm[data-confirm='0']::before {
    content: "Delete Selected";
}

#cc_manage_confirm[data-confirm='1']::before {
    content: "Click to Confirm";
}

#cc_message {
    display: none;
    background: red;
    border: none;
    color: white;
    margin-top: 15px;
}

#cc_message[data-ok='1'] {
    background: green;
}

#cc_message[data-ok='0'] {
    background: red;
}

.cci_label {
    display: inline-block;
    font-weight: bold;
    width: 110px;
}

.cci_input {
    border: 1px solid silver;
    border-radius: 8px;
    padding: 2px 8px;
    padding-right: 16px;
    font-size: 15px;
    color: var(--mainmenu);
}

.cci_inputc, .cci_inputcs {
    display: inline-block;
    position: relative;
}

.cci_inputc[data-ok='0']::before, .cci_inputcs[data-ok='X']::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    color: red;
    content: "\f071";
    font-size: 13px;
    width: 15px;
    display: inline-block;
    position: absolute;
    right: 4px;
    top: 4px;
}

.cci_inputcs[data-ok='0']::before {
    right: 14px;
}

.redmessage {
    font-weight: bold;
    font-size: 14px;
    color: red;
}

.redmessage_small {
    font-weight: bold;
    font-size: 9px;
    color: red;
}

.greenmessage {
    font-weight: bold;
    font-size: 14px;
    color: green;
}

.greenmessage_small {
    font-weight: bold;
    font-size: 9px;
    color: green;
}

/*  GLobe CSS  */
.globe-wrapper {
    width: 100%;
    height: 100%;
    background-color: black;
}

.globe-contianer {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 10; /* Sit on top */
    left: 0;
    top: 0;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0, 0, 0); /* Fallback color */
    background-color: rgba(0, 0, 0, 0.4); /* Black w/ opacity */
}

.mapboxgl-ctrl button.mapboxgl-ctrl-close:not(:disabled):hover {
    background-color: #C42B1C;
}

.mapboxgl-popup-content {
    background-color: #bdf3cb;
}

.mapboxgl-popup-tip {
    border-top-color: #3adcb7 !important;
}

.mapboxgl-popup-content h3 {
    font-weight: bolder;
    font-size: .8rem;
}

.mapboxgl-popup-content th,
.mapboxgl-popup-content td {
    border-bottom: 1px solid var(--cw_teal);
    font-size: .7rem;
    max-width: 10rem;
    min-width: 4rem;
    text-align: center;
}

.mapboxgl-popup-content .popupPageNavRow td {
    border-bottom: none;
}

.popupPageNav {
    cursor: pointer;
}

.showGlobeBtn {
    margin-left: 1.5rem;
}

#globeSettingBtn {
    position: fixed;
    bottom: 10px;
    right: 10px;
    text-align: center;
    border-radius: 20px;
    background: white;
    width: 30px;
    height: 30px;
    color: var(--cw_teal);
    font-size: 24px;
    cursor: pointer;
}

#globeControllers {
    position: fixed;
    bottom: 1rem;
    right: 10px;
    width: 300px;
    max-height: 360px;
    z-index: 12;
    padding: 1rem 1rem .5rem 1rem;
    border-radius: 10px;
    background: white;
    color: var(--cw_teal);
    white-space: nowrap;
    border-bottom: 4px solid var(--cw_teal);
}

.globe-controller {
    display: flex;
    flex-flow: wrap row;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.globe-controller label {
    font-weight: bold;
}

.globe-controller-actions {
    border-top: 1px solid silver;
    display: flex;
    flex-flow: wrap row;
    justify-content: space-between;
    padding: 0.5rem;
}

#globeTitle {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 20;
    color: lightgray;
    mix-blend-mode: difference;
}

.globe-wrapper a.mapboxgl-ctrl-logo {
    background-image: url("data:image/svg+xml;charset=utf-8,<svg width='8' height='3' viewBox='0 0 88 23' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' fill-rule='evenodd'> <defs> <path id='logo' d='M11.5 2.25c5.105 0 9.25 4.145 9.25 9.25s-4.145 9.25-9.25 9.25-9.25-4.145-9.25-9.25 4.145-9.25 9.25-9.25zM6.997 15.983c-.051-.338-.828-5.802 2.233-8.873a4.395 4.395 0 013.13-1.28c1.27 0 2.49.51 3.39 1.42.91.9 1.42 2.12 1.42 3.39 0 1.18-.449 2.301-1.28 3.13C12.72 16.93 7 16 7 16l-.003-.017zM15.3 10.5l-2 .8-.8 2-.8-2-2-.8 2-.8.8-2 .8 2 2 .8z'/> <path id='text' d='M50.63 8c.13 0 .23.1.23.23V9c.7-.76 1.7-1.18 2.73-1.18 2.17 0 3.95 1.85 3.95 4.17s-1.77 4.19-3.94 4.19c-1.04 0-2.03-.43-2.74-1.18v3.77c0 .13-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V8.23c0-.12.1-.23.23-.23h1.4zm-3.86.01c.01 0 .01 0 .01-.01.13 0 .22.1.22.22v7.55c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V15c-.7.76-1.69 1.19-2.73 1.19-2.17 0-3.94-1.87-3.94-4.19 0-2.32 1.77-4.19 3.94-4.19 1.03 0 2.02.43 2.73 1.18v-.75c0-.12.1-.23.23-.23h1.4zm26.375-.19a4.24 4.24 0 00-4.16 3.29c-.13.59-.13 1.19 0 1.77a4.233 4.233 0 004.17 3.3c2.35 0 4.26-1.87 4.26-4.19 0-2.32-1.9-4.17-4.27-4.17zM60.63 5c.13 0 .23.1.23.23v3.76c.7-.76 1.7-1.18 2.73-1.18 1.88 0 3.45 1.4 3.84 3.28.13.59.13 1.2 0 1.8-.39 1.88-1.96 3.29-3.84 3.29-1.03 0-2.02-.43-2.73-1.18v.77c0 .12-.1.23-.23.23h-1.4c-.13 0-.23-.1-.23-.23V5.23c0-.12.1-.23.23-.23h1.4zm-34 11h-1.4c-.13 0-.23-.11-.23-.23V8.22c.01-.13.1-.22.23-.22h1.4c.13 0 .22.11.23.22v.68c.5-.68 1.3-1.09 2.16-1.1h.03c1.09 0 2.09.6 2.6 1.55.45-.95 1.4-1.55 2.44-1.56 1.62 0 2.93 1.25 2.9 2.78l.03 5.2c0 .13-.1.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.8 0-1.46.7-1.59 1.62l.01 4.68c0 .13-.11.23-.23.23h-1.41c-.13 0-.23-.11-.23-.23v-4.59c0-.98-.74-1.71-1.62-1.71-.85 0-1.54.79-1.6 1.8v4.5c0 .13-.1.23-.23.23zm53.615 0h-1.61c-.04 0-.08-.01-.12-.03-.09-.06-.13-.19-.06-.28l2.43-3.71-2.39-3.65a.213.213 0 01-.03-.12c0-.12.09-.21.21-.21h1.61c.13 0 .24.06.3.17l1.41 2.37 1.4-2.37a.34.34 0 01.3-.17h1.6c.04 0 .08.01.12.03.09.06.13.19.06.28l-2.37 3.65 2.43 3.7c0 .05.01.09.01.13 0 .12-.09.21-.21.21h-1.61c-.13 0-.24-.06-.3-.17l-1.44-2.42-1.44 2.42a.34.34 0 01-.3.17zm-7.12-1.49c-1.33 0-2.42-1.12-2.42-2.51 0-1.39 1.08-2.52 2.42-2.52 1.33 0 2.42 1.12 2.42 2.51 0 1.39-1.08 2.51-2.42 2.52zm-19.865 0c-1.32 0-2.39-1.11-2.42-2.48v-.07c.02-1.38 1.09-2.49 2.4-2.49 1.32 0 2.41 1.12 2.41 2.51 0 1.39-1.07 2.52-2.39 2.53zm-8.11-2.48c-.01 1.37-1.09 2.47-2.41 2.47s-2.42-1.12-2.42-2.51c0-1.39 1.08-2.52 2.4-2.52 1.33 0 2.39 1.11 2.41 2.48l.02.08zm18.12 2.47c-1.32 0-2.39-1.11-2.41-2.48v-.06c.02-1.38 1.09-2.48 2.41-2.48s2.42 1.12 2.42 2.51c0 1.39-1.09 2.51-2.42 2.51z'/> </defs> <mask id='clip'> <rect x='0' y='0' width='100%25' height='100%25' fill='black'/> <use xlink:href='%23logo'/> <use xlink:href='%23text'/> </mask> <g id='outline' opacity='0.3' stroke='%23fff' stroke-width='3'> <circle mask='url(%23clip)' cx='11.5' cy='11.5' r='9.25'/> <use xlink:href='%23text' mask='url(%23clip)'/> </g> <g id='fill' opacity='0.9' fill='%23000'> <use xlink:href='%23logo'/> <use xlink:href='%23text'/> </g> </svg>");
}

.show-in-mobile {
    display: none;
}

@media only screen and (max-width: 620px) {
    .hide-in-mobile {
        display: none;
    }

    .show-in-mobile {
        display: inline-block;
    }
}

@media only screen and (max-width: 460px) {
    .quad_topbar_title_text {
        font-size: 14px !important;
        margin-left: 1rem !important;
    }

    .showGlobeBtn {
        margin-left: 1rem;
    }
}

.mapboxgl-popup-close-button {
    font-size: 1rem;
    font-weight: bold;
}

.mapboxgl-popup-content {
    padding: 0.5rem !important;
}

.mapboxgl-popup-content h3 {
    margin: 0 !important;
}

.popupRow.is-dh {
    color: var(--caldow);
}

/* Enviroment Type */
#cwEnvType {
    display: inline-block;
    font-size: .65rem;
    font-weight: bold;
    position: relative;
    left: 20px;
    top: -2px;
    padding: 0.15rem 0.25rem;
    border: 1px solid white;
    background-color: red;
    border-radius: 10px;
}

/* Calendar Import window*/

#mc_mcal_import_btn {
    z-index: 19;
    text-align: center;
    position: fixed;
    border-radius: 10px;
    background: white;
    color: var(--monthheadbgrd);
    font-size: 12px;
    cursor: pointer;
    padding: 0.2rem 0.5rem;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.8);
}

#mc_mcal_import_btn span.open-import-cal {
    display: inline-flex;
}

#mc_mcal_import_btn span.close-import-cal {
    display: none;
}

#mc_mcal_import_btn.opened span.open-import-cal {
    display: none;
}

#mc_mcal_import_btn.opened span.close-import-cal {
    display: inline-flex;
}

#mc_mcal_import_btn .fas {
    margin-right: .5rem;
}

.mc-import-fields,
.mc-import-fields label {
    display: block;
    width: 100%;
    margin-bottom: .5rem;
}

.mc-import-fields-flex label,
.mc-import-fields label {
    font-weight: bold;
}

.mc-import-fields input {
    width: 98%;
    padding: 0.25rem;
    border: 1px solid var(--cw_teal);
}

.mc-import-fields input[type=file] {
    text-transform: capitalize;
}

.mc-import-fields input.has-error {
    border-color: red;
}


.mc_mcal_import_actions,
.mc-import-fields-flex {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: .5rem;
}

.mc_mcal_import_table table {
    width: 100%;
}

.mc_mcal_import_table th {
    background-color: var(--cw_teal);
    color: white;
    padding: .5rem;
}

.mc_mcal_import_table td {
    padding: .25rem;
}

table.rounded-corners {
    /* Change these properties */
    --border: 1px solid var(--cw_teal);
    border-radius: 10px;

    /* Don't change these properties */
    border-spacing: 0;
    border-collapse: separate;
    border: var(--border);
    overflow: hidden;
}

/* Apply a border to the right of all but the last column */
/*table.rounded-corners th:not(:last-child),*/
/*table.rounded-corners td:not(:last-child) {*/
/*	border-right: var(--border);*/
/*}*/

/* Apply a border to the bottom of all but the last row */
table.rounded-corners > thead > tr:not(:last-child) > th,
table.rounded-corners > thead > tr:not(:last-child) > td,
table.rounded-corners > tbody > tr:not(:last-child) > th,
table.rounded-corners > tbody > tr:not(:last-child) > td,
table.rounded-corners > tfoot > tr:not(:last-child) > th,
table.rounded-corners > tfoot > tr:not(:last-child) > td,
table.rounded-corners > tr:not(:last-child) > td,
table.rounded-corners > tr:not(:last-child) > th,
table.rounded-corners > thead:not(:last-child),
table.rounded-corners > tbody:not(:last-child),
table.rounded-corners > tfoot:not(:last-child) {
    /*border-bottom: var(--border);*/
}

.event_div div {
    white-space: normal;
}

.mc_error_msg {
    position: fixed;
    top: 10px;
    left: 50%;
    border: 1px solid red;
    padding: 0.5rem;
    border-radius: 5px;
    background-color: white;
    color: red;
    z-index: 9999;
    transform: translate(-50%, 0);
    opacity: 0.9;
}

#confirmationCalMsg {
    position: fixed;
    max-height: 80%;
    width: 90%;
    left: 5%;
    box-sizing: border-box;
    overflow-y: auto;
    color: black;
    padding: 20px;
    margin-top: 30px;
    border-radius: 10px;
    border: 2px solid white;
    background: white;
    z-index: 99;
    font-size: 1.1rem;
}

#confirmationCalMsg .btn {
    background-color: red;
    color: white;
    transition: background .2s;
    text-shadow: none;
    padding: 4px 10px 4px 6px;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    border: 1px solid red;
    background-image: none;
    float: right;
    font-size: 1.3rem;
}

#confirmationCalMsg .btn.yesConfirmedCalMsg {
    background-color: green;
    border-color: green;
    float: left;
}