/* club overrides */

.landing-logo {
  max-width: 400px;
}


/* general overrides */
.homepage-header {
  background-image: url("/assets/images/chi_race_1k5x600x100pct.jpg");
  background-position: center;
  height: 600px;
}

.profile-header .container-inner {
  max-width: 400px;
}

.feature-container {
  box-sizing: border-box;
}

.feature-container .feature-image img {
  max-width: 300px;
}

.feature-container .feature-content {
  width: auto;
}

.highlight {
    background-color: #fff;
    border-color: #d3e0e9;
}

.list-group-item .glyphicon {
  line-height: 1.4;
}

/* Accept Cookies Banner */
.cookie-alert {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  margin: 0 !important;
  z-index: 999;
  opacity: 0;
  border-radius: 0;
  transform: translateY(100%);
  transition: all 500ms ease-out;
  color: #ecf0f1;
  background: #212327;
}

.cookie-alert.show {
  opacity: 1;
  transform: translateY(0%);
  transition-delay: 1000ms;
}

.cookie-alert a {
  text-decoration: underline
}

.cookie-alert .accept-cookies {
  margin-left: 10px;
  vertical-align: baseline;
}

/* navbar */
.app-navbar {
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  padding-top: 4px;
  padding-bottom: 4px;
}
.app-navbar .form-control {
  box-shadow: none;
}
.app-navbar .navbar-brand {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.app-navbar .navbar-brand img {
  height: 40px;
}
.app-navbar .navbar-collapse {
  max-height: inherit;
}
.app-navbar .navbar-collapse:after {
  height: 100vh;
}
.app-navbar .form-control {
  border-color: #1C73A5;
}
.app-navbar .app-notifications {
  margin-left: 1rem;
  padding-bottom: 4px !important;
  padding-top: 4px !important;
}
.app-notifications .icon:before {
  font-size: 20px;
}
.app-search {
  margin-top: -1px;
  padding-left: 15px;
  padding-right: 15px;
}

@media (min-width: 768px) {
  .app-navbar .navbar-collapse:after {
    height: auto;
  }
}
@media (max-width: 768px) {
  .app-search {
    margin-top: -1px;
  }
}

.search-clear {
  margin-left: -37px;
  z-index: 100;
}

/* misc */
.app-login-form {
  max-width: 350px;
}
.app-new-msg {
  margin-right: 10px;
}
.app-brand {
  width: 40%;
  display: inline-block;
}
.app-brand img {
  width: 100%;
}

.navbar-static-top {
  margin-bottom: 19px;
}

.content-middle {
  vertical-align: middle;
}

.weight-normal {
  font-weight: 300 !important;
}

.m-t-6 {
  margin-top: 6px !important;
}

.p-y-6 {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

/*
 * Authentication - Silhouette
 */
.social-providers,
.sign-in-now,
.already-member,
.not-a-member {
  text-align: center;
  margin-top: 20px;
}

.provider {
  display: inline-block;
  width: 64px;
  height: 64px;
  border-radius: 4px;
  outline: none;
}
.facebook { background: #3B5998; }
.google { background: #D14836; }
.twitter { background: #00ACED; }
.yahoo { background: #731A8B; }
.xing { background: #006567; }
.vk { background: #567ca4; }

/**
  * New Login / Registration Forms
 */
form .login-divider:before {
  content: "";
  border-bottom: 1px solid #666e76;
  height: 0;
  width: 44%;
  position: absolute;
  left: 0;
  top: 11px;
}
form .login-divider:after {
  content: "";
  border-bottom: 1px solid #666e76;
  height: 0;
  width: 44%;
  position: absolute;
  right: 0;
  top: 11px;
}

form .login-divider {
  float: left;
  display: block;
  width: 100%;
  text-align: center;
  color: #666e76;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 0 5px;
  margin: 10px 0;
  position: relative;
}
.button-google {
  border: 1px solid #d34836;
  color: #d34836;
  display: inline-block;
  background-color: transparent;
  text-decoration: none;
  text-shadow: none;
  background-clip: padding-box;
  text-align: center;
  outline: none;
  position: relative;
}
.button-facebook {
  border: 1px solid #3b5a9b;
  color: #3b5a9b;
  display: inline-block;
  background-color: transparent;
  text-decoration: none;
  text-shadow: none;
  background-clip: padding-box;
  text-align: center;
  outline: none;
  position: relative;
}
.button-facebook span, .button-google span {
  background-size: 15px;
  background-repeat: no-repeat;
  display: inline-block;
  height: 15px;
  margin: 0 0 0 .3em;
  vertical-align: sub;
  width: 15px;
}
.button-google:hover:not(:disabled) {
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  text-decoration: none;
  color: #d66a5c;
  border: 1px solid #d66a5c;
  background-color: transparent;
}
.button-facebook:hover:not(:disabled) {
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  text-decoration: none;
  color: #4b6db3;
  border: 1px solid #4b6db3;
  background-color: transparent;
}
.button-facebook:hover:not(:disabled), .button-google:hover:not(:disabled) {
  background-color: #fff;
}

.button-google span {
  background-image: url("/assets/images/providers/google_button_icon.png");
}
.button-facebook span {
  background-image: url("/assets/images/providers/facebook_button_icon.png");
}

meter {
  /* Reset the default appearance */
  -moz-appearance: none;
  appearance: none;

  margin: 0 auto 1em;
  width: 100%;
  height: .5em;

  /* Applicable only to Firefox */
  background: none;
  background-color: rgba(0,0,0,0.1);
}

meter::-webkit-meter-bar {
  background: none;
  background-color: rgba(0,0,0,0.1);
}

meter[value="0"]::-webkit-meter-optimum-value,
meter[value="1"]::-webkit-meter-optimum-value { background: red; }
meter[value="2"]::-webkit-meter-optimum-value { background: orange; }
meter[value="3"]::-webkit-meter-optimum-value { background: yellow; }
meter[value="4"]::-webkit-meter-optimum-value { background: green; }

meter::-webkit-meter-even-less-good-value { background: red; }
meter::-webkit-meter-suboptimum-value { background: orange; }
meter::-webkit-meter-optimum-value { background: green; }

meter[value="1"]::-moz-meter-bar,
meter[value="1"]::-moz-meter-bar { background: red; }
meter[value="2"]::-moz-meter-bar { background: orange; }
meter[value="3"]::-moz-meter-bar { background: yellow; }
meter[value="4"]::-moz-meter-bar { background: green; }

meter::-webkit-meter-optimum-value {
  transition: width .4s ease-out;
}

th.rotate {
  height: 120px;
  white-space: nowrap;
}
th.rotate > span > div {
  transform: rotate(270deg);
  width: 10px;
}
th.rotate > span > div > span {
  padding: 5px 5px;
}

.status > span {
  width: 30px;
  height: 30px;
}

.status > span > .info {
  background-color: #d9edf7;
}

.top-buffer { margin-top:20px; }

.table tbody > tr > td.vert-align{
  vertical-align: middle;
  width: 250px
}

.sfilter {
  float: left !important;
}

/*
 * Signup/confirmation buttons
 */
.opt-available, .btn-available {
  color: #31708f;
  opacity: 1;
}
.btn-available.active {
  background-color: #d9edf7 !important;
  border-color: #bce8f1 !important;
}
.opt-maybe, .btn-maybe {
  color: #8a6d3b;
}
.btn-maybe.active {
  background-color: #fcf8e3 !important;
  border-color: #faebcc !important;
}
.opt-unavailable, .btn-unavailable {
  color: #a94442;
}
.btn-unavailable.active {
  background-color: #f2dede !important;
  border-color: #ebccd1 !important;
}
.opt-confirmed, .btn-confirmed {
  color: #3c763d;
}
.btn-confirmed.active, .btn-confirmed.disabled.active
{
  background-color: #dff0d8 !important;
  border-color: #d6e9c6 !important;
}

.opt-standby, .btn-standby {
  color: #8a6d3b;
}
.btn-standby.active, .btn-standby.disabled.active {
  background-color: #fcf8e3 !important;
  border-color: #faebcc !important;
}
.opt-unknown, .btn-unknown {
  color: #333;
}
.btn-unknown.active {
  background-color: #eeeeee;
  border-color: #adadad;
}

/**
  * Icon ring
 */

.icon-ring {
  width: 30px;
  height: 30px;
  /*border-radius: 50%;
  border: 4px solid white;
  color: white;*/
  display: inline-table;
  text-align: center;
}
/**CSS FOR ICON WITH NO BACKGROUND COLOR**/

.icon-ring .icon-bordered {
  font-size: 14px;
  vertical-align: middle;
  display: table-cell;
}
/**WITH AN ADDED BACKGROUND COLOR**/

.icon-white {
  background: white;
  color: black;
  border: 4px solid black;
}
.icon-teal {
  background: teal;
  color: orange;
}
.icon-red {
  background: red;
}

/** Set all data table content to white background **/
table.dataTable thead tr th {
  background-color: #ffffff;
}

table.dataTable.link-rows tbody tr {
  cursor: pointer;
}

table.dataTable tbody tr:not(.selected):not(.info) td {
  background-color: #ffffff;
}

div.dt-container div.dt-length label {
  font-weight: 300 !important;
}

div.dropdown-menu.dt-button-collection {
  width: max-content !important;
}

/*table td, table th {*/
/*  font-size: 14px;*/
/*  font-weight: 300;*/
/*}*/

/** Multi-field boxes */
.input-multi-field {
  width: 100% !important;
}

.input-group-joiner {
  display: table-cell;
}

/** Phone field skinning  **/
.iti-flag {background-image: url("/assets/images/flags.png") !important;}

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
  .iti-flag {background-image: url("/assets/images/flags@2x.png") !important;}
}

.intl-tel-input .country-list {
  z-index: 99 !important;
}

.intl-tel-input {
  width: 100% !important;
}

.select-index {
  z-index: 2 !important;
}


/** Discover Boat/Crew: Boat Finder, Crew Finder **/
@media (min-width: 992px) {
  #filter-panel.collapse,
  #applied-filter-panel.collapse {
    display: block;
  }
}

.filters {
  list-style: none;
}

.filter-content a {
  color: #ffffff;
}

.filter-content a:hover {
  text-decoration: none;
}

/* */
.multi-checkbox-list.inline>div {
  display:inline-block;
  margin-right:20px
}

/* PDF Exports */
.body-report {
  background: #FFFFFF !important;
}
.container-report {
  width: 700px !important;
  max-width: 700px !important;
  background: #FFFFFF;
}

.table-report th {
  font-weight: bold;
}

.keep-together {
  page-break-inside: avoid;
}

.break-before {
  page-break-before: always;
}

.break-after {
  page-break-after: always;
}

.row-report {
  height: 80px;
}

.header-box {
  height: 105px;
}

.header-qrcode {
  position: absolute;
  top: 0;
  right: 0;
  height: 100px;
}


.notes-container {
  height: 300px;
}

/* PWA iOS Install Modal */
.pwa-logo {
  height: 80px;
}
.pwa-share-icon {
  height: 22px;
}

.pwa-footer {
  background: #f5f8fa;
}

/* Enabling collapse divs to work on iOS */
[data-toggle~="collapse"] {
  cursor: pointer;
}

/* Signup tables, hide active buttons and inputs under fixed left column */
.btn-group > .btn.active,
.btn-group-vertical > .btn.active,
.input-group .form-control {
  z-index: 0 !important;
}

/* Vertical button group on the md breakpoint (767px) */
@media only screen and (max-width: 767px) {
  .btn-group-md-vertical {
    display: block;
  }

  .btn-group-md-vertical .btn {
    display: block;
    float: none;
    width: 100%;
  }
}

.no-wrap {
  white-space: nowrap;
}

.pre-wrap {
  white-space: pre-wrap;
}

.ql-editor {
  min-height: 150px;
  font-size: 14px;
}

/* Tighten up the message list in the messages drop-down */
.media-body-text p {
  margin-bottom: 0;
}

.image-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(2.25rem + 2px);
  margin-bottom: 0;
}

.image-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(2.25rem + 2px);
  margin: 0;
  opacity: 0;
}

.image-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(2.25rem + 2px);
  padding: .375rem .75rem;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: .25rem;
}
.image-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(calc(2.25rem + 2px) - 1px * 2);
  padding: .375rem .75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: 1px solid #ced4da;
  border-radius: 0 .25rem .25rem 0;
}

.filter .badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #337ab7;
  border-radius: 10px;
  float: right;
}

.filter .node-selected .badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #34495e;
  border-radius: 10px;
  float: right;
}

.filter .node-selected{
  background-color: #ecf0f1 !important;
  color: #000!important;
}
.list-img{
  width: 100%;
  height: auto;
}

.img-bordered {
  border: 1px solid #ced4da;
}

.rm-icon::before {
  position: relative;
  top: 2px;
  display: inline-block;
  speak: none;
  font-size: 100%;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.rm-icon-summary {
  font-size: 1.5rem;
}

@font-face {
  font-family: 'rm-icons';
  src:  url('/assets/fonts/rm-icons.eot?o6yllk');
  src:  url('/assets/fonts/rm-icons.eot?o6yllk#iefix') format('embedded-opentype'),
  url('/assets/fonts/rm-icons.ttf?o6yllk') format('truetype'),
  url('/assets/fonts/rm-icons.woff?o6yllk') format('woff'),
  url('/assets/fonts/rm-icons.svg?o6yllk#rm-icons') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="rm-"], [class*=" rm-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'rm-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.rm-drinks-circle:before {
  content: "\e903";
}
.rm-confirmed-circle:before {
  content: "\e906";
}
.rm-confirmed:before {
  content: "\e906";
}
.rm-unknown-circle:before {
  content: "\e907";
}
.rm-guests-circle:before {
  content: "\e900";
}
.rm-guest:before {
  content: "\e901";
}
.rm-available-circle:before {
  content: "\e902";
}
.rm-available:before {
  content: "\e902";
}
.rm-confirmed-count:before {
  content: "\e904";
}
.rm-confirmed-weight:before {
  content: "\e905";
}
.rm-race-time:before {
  content: "\41";
}
.rm-leave-dock-time:before {
  content: "\42";
}
.rm-meet-time:before {
  content: "\43";
}
.rm-guests:before {
  content: "\45";
}
.rm-standby-circle:before {
  content: "\46";
}
.rm-standby:before {
  content: "\46";
}
.rm-location:before {
  content: "\47";
}
.rm-date:before {
  content: "\49";
}
.rm-drinks:before {
  content: "\4a";
}
.rm-food-circle:before {
  content: "\4b";
}
.rm-maybe-circle:before {
  content: "\4f";
}
.rm-maybe:before {
  content: "\4f";
}
.rm-standby:before {
  content: "\50";
}
.rm-unavailable-circle:before {
  content: "\51";
}
.rm-unavailable:before {
  content: "\51";
}
.rm-unknown:before {
  content: "\53";
}

/* Datatables sort arrows
 * We use the Bootstrap Application Theme, they replaced FontAwesome with Entypo
 * But the same approach to overriding the CSS applies here: https://datatables.net/blog/2014-06-06
 * Nov-2024: adding sorting icons for sorting generic divs - initially race result entry
 **/
table.dataTable thead th,
div.table-container div.table-head {
  position: relative;
  background-image: none !important;
}

table.dataTable thead th.sorting:after,
table.dataTable thead th.sorting_asc:after,
table.dataTable thead th.sorting_desc:after,
div.table-container .table-head .sorting:after,
div.table-container .table-head .sorting_asc:after,
div.table-container .table-head .sorting_desc:after {
  position: absolute;
  top: 12px;
  right: 8px;
  display: block;
  font-family: "toolkit-entypo";
}

table.dataTable thead th.sorting:after,
div.table-container .table-head .sorting:after{
  content: "\EB3E";
  /*color: #ddd;*/
  font-size: 0.8em;
  padding-top: 0.12em;
}
table.dataTable thead th.sorting_asc:after,
div.table-container .table-head .sorting_asc:after {
  content: "\EB77";
}
table.dataTable thead th.sorting_desc:after,
div.table-container .table-head .sorting_desc:after {
  content: "\EB74";
}
table.dataTable thead th.sorting:after,
table.dataTable thead th.sorting_asc:after,
table.dataTable thead th.sorting_desc:after,
div.table-container .table-head .sorting:after,
div.table-container .table-head .sorting_asc:after,
div.table-container .table-head .sorting_desc:after {
  position: inherit;
  display: inline;
}
table.dataTable thead th.sorting:after,
table.dataTable thead th.sorting_asc:after,
table.dataTable thead th.sorting_desc:after {
  right: -.5em;
}

table.table thead th.sorting_asc:after,
table.table thead th.sorting_desc:after {
  top: 0;
}

div.table-container .table-head .sorting:after {
  font-size: 1.0em;
  position: absolute;
  top: 0.5rem;
  bottom: 0;
  width: 12px;
  opacity: .6;
  line-height: 9px;
}

.table-body .result-entry { border-bottom: 1px solid #e7ebee; }
.table-body .result-entry:last-child{ border-bottom: none; } /* padding: 0 0 10px 46px; */


table.dataTable td > i {
  margin-left: 0.5em;
  opacity: 0.3;
  float: right;
  cursor: pointer;
}

/** JQuery Table Sort - sort arrows
 */
th.sorted.ascending:after {
  content: " \2191";
}

th.sorted.descending:after {
  content: " \2193";
}

/* Crew and Boat Finder summary background */
.bg-lightblue{
  background-color: #ebf6fc;
}

/* General helper to place things in the top right corner*/
.top-right {
  position: absolute;
  right: 0;
  top: 0
}

.profile-img {
  max-width: 100px;
  border-radius: 100%;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
}

/* generic helper to render newlines in messages */
.nl2br {
  white-space: pre-line;
}

.recipient:first-child:not(:last-child) {
  padding-right: 0;
}
.recipient:not(:first-child):not(:last-child) {
  padding-left: 0;
  padding-right: 0;
}
.recipient:last-child:not(:first-child) {
  padding-left: 0;
}

/* Bootstrap collapse - support state labels */
[aria-expanded="false"] > .expanded,
[aria-expanded="true"] > .collapsed {
  display: none;
}
/* BS Collapse, allow for default open state - MD breakpoint
   Breakpoints: https://getbootstrap.com/docs/4.6/layout/overview/#containers */
@media (min-width: 768px) {
  .collapse.collapse-reverse.show {display:none!important}
  .collapse.collapse-reverse:not(.show) {display:block!important}
}

/* Bootstrap 4.2 backport */
.mt-n1 {
  margin-top: -0.25rem !important;
}
.mt-n2 {
  margin-top: -0.5rem !important;
}
.mt-n3 {
  margin-top: -1rem !important;
}
.mt-n4 {
  margin-top: -1.5rem !important;
}
.mt-n5 {
  margin-top: -3.75rem !important;
}
.mt-n6 {
  margin-top: -4rem !important;
}
.mt-n7 {
  margin-top: -6rem !important;
}

/* Charts */
.h-200 {
  height: 200px !important;
}

.race-col-header .race-link {
    text-decoration: underline;
    font-weight: 600;
}
.race-col-header .race-link:hover {
    text-decoration: underline;
}