﻿/* 
	Custom Variables
*/
/*----Primary Colors----*/
/*----Default Colors----*/
/*Focus Ring Colors*/
/*----Selection Colors----*/
/*----Success Colors----*/
/*----Warning Colors----*/
/*----Danger Colors----*/
/*----Info Colors----*/
/*
	@media: Small-devices
*/
@media (max-width: 767px) {
  #page-body {
    padding: 5px 0; }
  .filter-title {
    padding: 10px;
    cursor: pointer;
    color: #fff;
    font-size: 16px; }
  .filter-category {
    padding: 10px 10px 0 10px; }
  .filter-toggle {
    display: none; }
  .filter-xs-container {
    margin-bottom: 5px;
    background-color: #986291; }
  .container {
    padding-left: 7px;
    padding-right: 7px; }
  #page-content {
    padding: 5px 0; }
  #mainnav-container {
    width: 260px;
    left: -260px; }
  #container.mainnav-in #navbar {
    left: 260px; }
  #container.mainnav-in .navbar-header {
    left: -260px; }
  #container.mainnav-in .tgl-menu-btn {
    right: 0; }
  #content-container {
    padding-top: 50px; }
  .panel-body {
    padding: 25px 10px; }
  .panel-group {
    margin-bottom: 5px; }
  .list-group {
    margin-bottom: 0px; }
  .menu-title {
    font-size: 16px; }
  #mainnav-menu ul a, .menu-popover .sub-menu ul a {
    padding: 10px 20px 12px 45px;
    font-size: 14px; }
  #mainnav-menu ul a:hover, .menu-popover .sub-menu ul a:hover {
    padding-left: 45px; }
  .form-control.form-control-search {
    font-size: 16px;
    border: 1px solid #87BD4B; }
  .loading {
    padding-bottom: 0px; }
  #footer {
    height: 36px;
    padding-top: 10px; }
  /* Used to change the width of table columns according to device */
  .rd-column-width {
    width: 50% !important; }
  /* Doesn't display row borders on mobile devices */
  .rd-table-responsive tr td {
    border-top: none !important;
    padding: 0px; }
  .rd-table-responsive tr.rd-table-last-row td {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
  .font-xs-12 {
    font-size: 12px; }
  /* reduce container bottom padding set by nifty template */
  #content-container {
    padding-bottom: 36px; }
  .panel {
    margin-bottom: 0; }
  .cls-content-sm {
    min-width: 320px !important;
    max-width: 360px; }
  .loading {
    padding-bottom: 0 !important; }
  .rd-menu-shopping {
    position: absolute !important;
    top: 0;
    right: 40px; }
  .rd-menu-shopping a:hover .fa {
    color: #2b2b2b !important; }
  .rd-menu-profile {
    position: absolute !important;
    top: 0;
    right: 89px; }
  .rd-menu-profile a:hover .fa {
    color: #2b2b2b !important; } }

/* 
	Custom Variables
*/
/*----Primary Colors----*/
/*----Default Colors----*/
/*Focus Ring Colors*/
/*----Selection Colors----*/
/*----Success Colors----*/
/*----Warning Colors----*/
/*----Danger Colors----*/
/*----Info Colors----*/
/*
	@media: Medium and Large devices
*/
@media (min-width: 768px) {
  .filter-category {
    margin-bottom: 20px; }
  #container.mainnav-out .brand-title {
    padding: 0;
    background-color: transparent;
    color: #515151; }
  #container.mainnav-out .brand-title {
    color: #fff; }
  .navbar-header {
    background-color: #32404e;
    float: none; }
  .navbar-top-links .tgl-menu-btn > a, .navbar-top-links .tgl-menu-btn > a:hover {
    color: white; }
  .navbar-top-links .tgl-menu-btn {
    position: absolute;
    right: 0; }
  .rd-menu-shopping {
    position: absolute !important;
    top: 0;
    right: 40px; }
  .rd-menu-shopping a:hover .fa {
    color: #2b2b2b !important; }
  .rd-menu-profile {
    position: absolute !important;
    top: 0;
    right: 89px; }
  .rd-menu-profile a:hover .fa {
    color: #2b2b2b !important; } }

/* 
	Custom Variables
*/
/*----Primary Colors----*/
/*----Default Colors----*/
/*Focus Ring Colors*/
/*----Selection Colors----*/
/*----Success Colors----*/
/*----Warning Colors----*/
/*----Danger Colors----*/
/*----Info Colors----*/
/*
	@media: Medium and Large devices
*/
@media (min-width: 992px) {
  /* Sub Navigation */
  #sub-navbar {
    font-size: 12px;
    margin-top: 50px; }
    #sub-navbar #sub-navbar-container {
      background: #efefef; }
    #sub-navbar .navbar-content {
      margin-left: 0; }
      #sub-navbar .navbar-content ul.nav li a {
        height: 40px; }
  #page-body {
    padding: 20px 25px 0; }
  .filter-category {
    margin-bottom: 20px; }
  #container.mainnav-out .brand-title {
    padding: 0;
    background-color: transparent;
    color: #515151; }
  #container.mainnav-out .brand-title {
    /*color: #fff;*/ }
  .navbar-header {
    background-color: transparent;
    float: left; }
  .navbar-top-links .tgl-menu-btn > a, .navbar-top-links .tgl-menu-btn > a:hover {
    color: white; }
  .navbar-top-links .tgl-menu-btn {
    position: absolute;
    right: 0; }
  .rd-menu-shopping {
    position: absolute !important;
    top: 0;
    right: 40px; }
  .rd-menu-shopping a:hover .fa {
    color: #2b2b2b !important; }
  .rd-menu-profile {
    position: absolute !important;
    top: 0;
    right: 89px; }
  .rd-menu-profile a:hover .fa {
    color: #2b2b2b !important; } }

/* 
	Custom Variables
*/
/*----Primary Colors----*/
/*----Default Colors----*/
/*Focus Ring Colors*/
/*----Selection Colors----*/
/*----Success Colors----*/
/*----Warning Colors----*/
/*----Danger Colors----*/
/*----Info Colors----*/
.navbar-top-links {
  padding-top: 5px !important;
  overflow: visible !important; }
  .navbar-top-links li {
    overflow: visible !important; }

.navbar-top-links a:focus {
  outline: none !important;
  box-shadow: none !important; }

.navbar-top-links a:focus-visible {
  outline: 3px solid #FFCC00 !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
  position: relative;
  z-index: 9999; }

.nav > li:not(.active) > a:focus, .nav > li:not(.active) > a:hover {
  text-decoration: none;
  background: none !important; }

.nav.nav-tabs > li > a {
  background-color: #FFFFFF !important;
  color: #000000 !important;
  border: 1px solid #2F4F4F;
  border-bottom-color: transparent;
  margin-right: 2px; }

.nav.nav-tabs > li:not(.active) > a:focus, .nav.nav-tabs > li:not(.active) > a:hover {
  background-color: #DDD !important;
  color: #000000 !important;
  border-color: #2F4F4F;
  border-bottom-color: transparent; }

.nav.nav-tabs > li.active > a, .nav.nav-tabs > li.active > a:focus, .nav.nav-tabs > li.active > a:hover {
  background-color: #FFFFFF !important;
  color: #000000 !important;
  border: 1px solid #2F4F4F;
  border-bottom-color: #FFFFFF !important;
  font-weight: bold; }

a:has(img):not(nav a):not(.list-group a) {
  display: inline-block !important;
  line-height: 0;
  text-decoration: none; }
  a:has(img):not(nav a):not(.list-group a):focus {
    outline: none !important;
    box-shadow: none !important; }
  a:has(img):not(nav a):not(.list-group a):focus-visible {
    outline: 3px solid #FFCC00 !important;
    outline-offset: 2px;
    box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
    position: relative;
    z-index: 9999; }

a img {
  display: block;
  max-width: 100%;
  height: auto; }

a:focus-visible:not(.input-group *):focus, button:focus-visible:not(.input-group *):focus, input:focus-visible:not(.input-group *):focus, select:focus-visible:not(.input-group *):focus, textarea:focus-visible:not(.input-group *):focus, [tabindex="0"]:focus-visible:not(.input-group *):focus {
  outline: none !important;
  box-shadow: none !important; }

a:focus-visible:not(.input-group *):focus-visible, button:focus-visible:not(.input-group *):focus-visible, input:focus-visible:not(.input-group *):focus-visible, select:focus-visible:not(.input-group *):focus-visible, textarea:focus-visible:not(.input-group *):focus-visible, [tabindex="0"]:focus-visible:not(.input-group *):focus-visible {
  outline: 3px solid #FFCC00 !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
  position: relative;
  z-index: 9999; }

a:focus:not(:focus-visible):not(.input-group *), button:focus:not(:focus-visible):not(.input-group *), input:focus:not(:focus-visible):not(.input-group *), select:focus:not(:focus-visible):not(.input-group *), textarea:focus:not(:focus-visible):not(.input-group *), [tabindex="0"]:focus:not(:focus-visible):not(.input-group *) {
  outline: none !important;
  box-shadow: none !important; }

table.no-border th, table.no-border td,
tr.no-border th,
tr.no-border td {
  border-top: none !important;
  border-bottom: none !important; }

table.no-border thead > tr > th, table.no-border thead > tr > td, table.no-border tbody > tr > th, table.no-border tbody > tr > td, table.no-border tfoot > tr > th, table.no-border tfoot > tr > td,
tr.no-border thead > tr > th,
tr.no-border thead > tr > td,
tr.no-border tbody > tr > th,
tr.no-border tbody > tr > td,
tr.no-border tfoot > tr > th,
tr.no-border tfoot > tr > td {
  border-top: none !important;
  border-bottom: none !important; }

.border-top-thin th, .border-top-thin td {
  border-top: 1px solid rgba(0, 0, 0, 0.05) !important;
  border-bottom: none !important; }

body {
  font-size: 14px;
  background-color: #E7EBEE; }

.panel-rd-main {
  margin-bottom: 0px; }
  .panel-rd-main .panel-heading {
    background-color: #2D70AF;
    border-color: #2D70AF;
    color: #FFFFFF; }
  .panel-rd-main-dark .panel-heading {
    background-color: #1C5486;
    border-color: #1C5486;
    color: #FFFFFF; }

.panel-rd-filter .panel-heading {
  background-color: #F5F5F5;
  border-color: #262626;
  color: #262626;
  padding: 0; }
  .panel-rd-filter .panel-heading .rd-filter-header {
    display: block;
    padding: 10px 15px;
    text-decoration: none !important;
    color: #2F4F4F;
    position: relative;
    border: 1px solid #DDD;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    transition: box-shadow 0.2s ease-in-out; }
    .panel-rd-filter .panel-heading .rd-filter-header:focus {
      outline: none !important;
      box-shadow: none !important;
      border-color: transparent !important; }
    .panel-rd-filter .panel-heading .rd-filter-header:focus-visible {
      outline: 3px solid #FFCC00 !important;
      outline-offset: -3px;
      box-shadow: inset 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
      position: relative;
      z-index: 9999; }
    .panel-rd-filter .panel-heading .rd-filter-header .fa-chevron-down {
      transition: transform 0.2s ease-in-out;
      transform: rotate(0deg); }
    .panel-rd-filter .panel-heading .rd-filter-header.collapsed .fa-chevron-down {
      transform: rotate(-90deg); }

.badge-rd-main {
  background-color: #2D70AF; }

#container .table .category-header {
  background-color: #DAE5F3;
  border-top: 1px solid #2D70AF;
  border-bottom: 1px solid #2D70AF;
  font-size: 14px;
  color: #2F4F4F !important; }

#container .table .sub-category-header {
  background-color: #F9F9F9;
  border-bottom: 1px solid #DDD; }

.filter-category-title {
  border-bottom: 1px solid #F0F0F0;
  padding: 10px;
  cursor: pointer; }

.pagination > li > a {
  padding: 2px 6px;
  background: #FFF;
  border: 1px solid #515151; }
  .pagination > li > a:hover, .pagination > li > a:focus {
    border-color: #0B61BC !important;
    box-shadow: 0 0 0 0.2rem rgba(11, 97, 188, 0.25) !important; }

.pagination > .active > a {
  background-color: #0B61BC !important;
  border-color: #0B61BC !important;
  color: #FFFFFF !important; }

.field-validation-error {
  padding: 8px 10px;
  font-size: 90%;
  color: #c7254e;
  border-top: 2px solid #D45F7D;
  background-color: #f9f2f4;
  border-radius: 0px;
  display: block;
  margin-top: 2px; }

.validation-summary-errors {
  color: #c7254e; }

.req {
  color: #D93025; }

.overlay-close {
  color: #FFFFFF !important; }

.loading {
  z-index: 9999;
  padding-right: 24px;
  padding-bottom: 54px;
  width: 100%;
  height: 100%;
  position: absolute;
  display: none; }
  .loading .loading-bg {
    background-color: rgba(240, 240, 240, 0.4);
    width: 100%;
    height: 100%;
    font-size: 14px;
    color: #666;
    padding-top: 10px; }
    .loading .loading-bg span {
      font-weight: bold;
      font-size: 13px; }

.household-card {
  box-shadow: 1px 0px 1px #ccc;
  padding: 10px 10px 10px 20px;
  border-bottom: 1px solid #ccc; }

.household-card:hover {
  background: #F9F9F9;
  cursor: pointer; }

/* --- Alert Themeing --- */
.alert-default, .alert-primary, .alert-success, .alert-warning, .alert-danger, .alert-info {
  border-radius: 8px !important; }

.alert-default {
  color: #505258;
  background-color: #F3F3F4; }

.alert-primary {
  color: #0B61BC;
  background-color: #E9F2FE; }

.alert-success {
  color: #008000;
  background-color: #DCFFF1; }

.alert-warning {
  color: #292A2E;
  background-color: #FEF7C8; }

.alert-danger {
  color: #C9372C;
  background-color: #FFECEB; }

.alert-info {
  color: #292A2E;
  background-color: #E7F9FF; }

.text-field-label {
  display: block !important;
  text-align: left !important;
  width: 100% !important;
  margin-bottom: 5px;
  padding-left: 0 !important; }

.required-instruction {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: 0px auto 20px;
  font-size: 14px; }

.form-control, .input-group .input-group-addon {
  border: 1px solid #505258;
  color: #505258;
  background-color: #FFFFFF;
  font-size: 14px !important;
  min-height: 24px;
  padding: 4px 8px;
  box-sizing: border-box !important; }

.form-control {
  border-radius: 4px !important;
  height: auto;
  box-shadow: none; }
  .form-control:focus:not(:focus-within) {
    border-color: #0056B3 !important;
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25) !important;
    outline: 0; }

.input-group {
  display: flex;
  align-items: stretch;
  border-radius: 6px; }
  .input-group .input-group-addon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px 0 0 6px !important;
    border-right: none !important;
    transition: border-color 0.15s ease-in-out; }
  .input-group .form-control[name="Username"], .input-group .form-control[name="Password"], .input-group .form-control[name="Email"], .input-group .form-control[name="EmailAddress"], .input-group .form-control[name="DateRangeFrom"], .input-group .form-control[name="DateRangeTo"] {
    border-radius: 0 6px 6px 0 !important;
    border-left: none !important;
    margin-left: 0 !important; }
  .input-group:focus-within:not(:has(:focus-visible)) {
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25) !important; }
    .input-group:focus-within:not(:has(:focus-visible)) .input-group-addon, .input-group:focus-within:not(:has(:focus-visible)) .form-control {
      border-color: #0056B3 !important;
      outline: none !important;
      z-index: 2; }
  .input-group:has(:focus-visible) {
    outline: 3px solid #FFCC00 !important;
    outline-offset: 3px;
    box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important; }
    .input-group:has(:focus-visible) .input-group-addon, .input-group:has(:focus-visible) .form-control {
      border-color: #0056B3 !important;
      box-shadow: none !important; }

/* Base structure for all buttons */
.btn {
  font-size: 14px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: filter 0.2s ease;
  /*--- Button Sizes ---*/
  /* --- Button Theme Variations ---*/ }
  .btn:hover, .btn:active, .btn:focus {
    filter: brightness(0.95) !important; }
  .btn.btn-xs, .btn.btn-xs:hover, .btn.btn-xs:active, .btn.btn-xs:focus {
    border-radius: 2px !important; }
  .btn.btn-sm, .btn.btn-sm:hover, .btn.btn-sm:active, .btn.btn-sm:focus {
    border-radius: 4px !important; }
  .btn.btn-md, .btn.btn-md.btn-block, .btn.btn-md:hover, .btn.btn-md:active, .btn.btn-md:focus, .btn.btn-md.btn-block:hover, .btn.btn-md.btn-block:active, .btn.btn-md.btn-block:focus {
    border-radius: 6px !important; }
  .btn.btn-lg, .btn.btn-lg:hover, .btn.btn-lg:active, .btn.btn-lg:focus {
    border-radius: 8px !important;
    font-size: 16px !important; }
  .btn.btn-default {
    color: #505258;
    background-color: #FFFFFF;
    border: 1px solid #505258;
    font-weight: bold; }
  .btn.btn-primary {
    color: #FFFFFF;
    background-color: #0B61BC;
    border-color: #0B61BC;
    font-weight: bold; }
  .btn.btn-success {
    color: #FFFFFF !important;
    background-color: #008000;
    border-color: #008000;
    font-weight: bold; }
  .btn.btn-info {
    color: #292A2E;
    background-color: #2CBBC9;
    border-color: #2CBBC9;
    font-weight: bold; }
  .btn.btn-warning {
    color: #292A2E;
    background-color: #FBC827;
    border-color: #FBC827;
    font-weight: bold; }
  .btn.btn-danger {
    color: #FFFFFF;
    background-color: #C9372C;
    border-color: #C9372C;
    font-weight: bold; }

.btn-circle {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 14px;
  transition: all 0.2s ease-in-out;
  border: 1px solid transparent; }
  .btn-circle.btn-acc-orange {
    background-color: #EBAA4B;
    border-color: #8A5300;
    color: #FFFFFF; }
    .btn-circle.btn-acc-orange:hover, .btn-circle.btn-acc-orange:focus {
      background-color: #A36200;
      color: #FFFFFF;
      outline: 2px solid #000;
      outline-offset: 2px; }
  .btn-circle.btn-acc-green {
    background-color: #FFFFFF;
    border-color: #2E7D32;
    color: #2E7D32 !important; }
    .btn-circle.btn-acc-green:hover, .btn-circle.btn-acc-green:focus {
      background-color: #E1EEDF;
      border-color: #1B5E20;
      color: #1B5E20 !important;
      outline: 2px solid #000;
      outline-offset: 2px; }
  .btn-circle .fa {
    line-height: 1; }

/* Base structure for all label themes */
.label {
  border-radius: 999px !important;
  padding: 0.35em 0.8em !important;
  margin-left: 0.3em !important; }
  .label.label-default {
    border: 1px solid #505258;
    background-color: #F0F2F1;
    color: #505258; }
  .label.label-primary {
    border: 1px solid #0B61BC;
    background-color: #E9F2FE;
    color: #0B61BC; }
  .label.label-success {
    border: 1px solid #008000;
    background-color: #DCFFF1;
    color: #008000; }
  .label.label-info {
    border: 1px solid #2CBBC9;
    background-color: #E7F9FF;
    color: #292A2E; }
  .label.label-warning {
    border: 1px solid #FBC827;
    background-color: #FEF7C8;
    color: #292A2E; }
  .label.label-danger {
    border: 1px solid #C9372C;
    background-color: #FFECEB;
    color: #C9372C; }

/* Base structure for all badges */
.badge {
  display: inline-block !important;
  line-height: 1 !important;
  vertical-align: middle !important;
  font-size: 12px !important;
  font-weight: bold !important;
  text-align: center !important;
  white-space: nowrap !important;
  border-radius: 999px !important; }
  .badge.badge-default {
    border: 1px solid #F3F3F4 !important;
    background-color: #F3F3F4 !important;
    color: #505258 !important; }
  .badge.badge-primary {
    border: 1px solid #0B61BC !important;
    background-color: #0B61BC !important;
    color: #FFFFFF !important; }
  .badge.badge-success {
    border: 1px solid #008000 !important;
    background-color: #008000 !important;
    color: #FFFFFF !important; }
  .badge.badge-info {
    border: 1px solid #2CBBC9 !important;
    background-color: #2CBBC9 !important;
    color: #292A2E !important; }
  .badge.badge-warning {
    border: 1px solid #FBC827 !important;
    background-color: #FBC827 !important;
    color: #292A2E !important; }
  .badge.badge-danger {
    border: 1px solid #C9372C !important;
    background-color: #C9372C !important;
    color: #FFFFFF !important; }
  .badge-header {
    position: absolute;
    padding: 3px 5px !important; }

.panel {
  border-radius: 12px !important; }
  .panel > .panel-heading {
    border-top-left-radius: 11px !important;
    border-top-right-radius: 11px !important; }
  .panel > .panel-footer {
    border-bottom-left-radius: 11px !important;
    border-bottom-right-radius: 11px !important; }
  .panel > .panel-body:last-child {
    border-bottom-left-radius: 11px !important;
    border-bottom-right-radius: 11px !important; }
  .panel.panel-no-top-rounding {
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important; }
    .panel.panel-no-top-rounding > .panel-heading {
      border-top-left-radius: 0 !important;
      border-top-right-radius: 0 !important; }

.panel-rounded {
  border-radius: 12px !important;
  overflow: hidden; }
  .panel-rounded .panel-title {
    display: flex;
    align-items: center;
    gap: 10px; }

/* Force the input-group to behave like a standard block to control width */
.input-daterange.input-group {
  display: flex !important;
  align-items: center;
  width: 130%; }
  .input-daterange.input-group select.form-control {
    flex: 1;
    width: 100% !important;
    border-radius: 6px !important; }
  .input-daterange.input-group .input-group-addon {
    width: auto;
    padding: 0 15px;
    background: none;
    border: none;
    font-size: 18px; }

.well {
  background: #edf0f2;
  border-radius: 6px !important;
  /* default md*/
  border: none; }

.well.well-sm {
  border-radius: 4px !important; }

.well.well-md {
  border-radius: 6px !important; }

.well.well-lg {
  border-radius: 8px !important; }

.phone-link {
  text-decoration: underline;
  color: #0056B3; }
  .phone-link:hover {
    color: #003D80; }

/* Base styles (Large Screen) */
.section-header td {
  padding: 8px;
  /* Default Bootstrap padding */ }

.section-header .fa {
  margin-right: 0.3em; }

/* Small Screen Styles (Bootstrap 3 xs breakpoint) */
@media (max-width: 767px) {
  .section-header td {
    font-size: 16px;
    padding-bottom: 20px !important; } }

.warning-row {
  background-color: #FBC827;
  color: #292A2E; }

.rd-btn {
  background-color: #008000;
  color: #FFFFFF;
  border-radius: 7px; }

.rd-btn:hover {
  background-color: #004b00;
  color: #FFFFFF; }

.btn-block.rd-btn.rd-btn-large {
  font-size: 16px; }

.rd-btn-info {
  background-color: #2CBBC9;
  border-color: #2CBBC9;
  color: #292A2E;
  border-radius: 7px; }

.rd-btn-default {
  background-color: #FFFFFF;
  border-color: #505258;
  color: #505258;
  border-radius: 7px; }

.rd-btn-info:hover {
  background-color: #1d949f;
  border-color: #27a8b4;
  color: #292A2E; }

.info-header {
  vertical-align: middle;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  padding: 8px;
  background-color: #f3f5f8;
  color: #515151;
  margin-bottom: 20px; }

/* Used to change the width of table columns according to device */
.rd-column-width {
  width: 30%; }

.datepicker {
  padding: 5px 10px;
  border-radius: 0;
  direction: inherit; }

.datepicker.datepicker-dropdown {
  padding: 0; }

.rd-btn-back {
  background-color: #284E6F;
  border-color: #1F4362;
  color: #fff;
  font-size: 11px;
  margin-left: -10px; }

.rd-btn-back:hover {
  color: #F9F9F9 !important; }

.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

.panel-title-gray {
  margin-bottom: 20px;
  background: #F9F9F9;
  font-weight: bold;
  color: #666;
  padding: 15px 20px;
  text-shadow: 1px 1px #fff;
  font-size: 15px;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,f3f3f3+50,ededed+51,ffffff+100;White+Gloss+%232 */
  background: #ffffff;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffffff 0%, #f3f3f3 50%, #ededed 51%, #ffffff 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #ffffff 0%, #f3f3f3 50%, #ededed 51%, #ffffff 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #ffffff 0%, #f3f3f3 50%, #ededed 51%, #ffffff 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 );
  /* IE6-9 */
  border-bottom: 1px solid #eee !important; }

.panel-heading-no-border:after {
  border-bottom: none !important; }

.nav-title {
  margin-bottom: 20px;
  background: #F9F9F9;
  font-weight: bold;
  color: #666;
  padding: 10px 20px;
  text-shadow: 1px 1px #fff;
  font-size: 14px; }

#editor, .tab_editor {
  margin: 0;
  position: absolute !important;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.navbar-content {
  box-shadow: none; }

.rd-row-selectable:hover {
  background: #ffffdb; }

/* Admin - File Explorer Classes */
.folder:hover, .file:hover, .move-up:hover {
  color: #337ab7;
  text-decoration: underline; }

.window {
  background: #ffffff;
  background: -moz-linear-gradient(top, #ffffff 0%, #f3f3f3 50%, #ededed 51%, #ffffff 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #f3f3f3 50%, #ededed 51%, #ffffff 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #f3f3f3 50%, #ededed 51%, #ffffff 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffffff',GradientType=0 );
  border-top: none !important;
  border-bottom: 1px solid #DDD !important; }

.file-tabs {
  background: #F9F9F9;
  border-bottom: 1px solid #DDD !important;
  font-size: 12px !important;
  font-weight: normal !important;
  padding: 0 !important; }

.file-tabs ul {
  margin: 10px 0 -1px 0;
  padding: 0; }

.file-tabs ul li {
  color: #888;
  list-style-type: none;
  line-height: 24px;
  padding: 0 10px;
  border: 1px solid #ccc;
  border-left: none;
  margin-left: 0px;
  display: inline-block;
  cursor: default;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fefefe+0,eaeaea+49,e8e8e8+50,f9f9f9+100 */
  background: #fefefe;
  /* Old browsers */
  background: -moz-linear-gradient(top, #fefefe 0%, #eaeaea 49%, #e8e8e8 50%, #f9f9f9 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #fefefe 0%, #eaeaea 49%, #e8e8e8 50%, #f9f9f9 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #fefefe 0%, #eaeaea 49%, #e8e8e8 50%, #f9f9f9 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fefefe', endColorstr='$rd-off-white',GradientType=0 );
  /* IE6-9 */ }

.file-tabs ul li.active {
  color: #666;
  background: #F9F9F9;
  border-bottom: 1px solid #F9F9F9; }

.file-tabs ul li:hover {
  color: #666; }

.file-tabs ul li .file-close {
  cursor: pointer; }

.file-tabs ul li .file-close:hover {
  color: red; }

#explorer {
  border: 1px solid #DDD;
  position: relative;
  background: white; }

.toolbar {
  background: #F9F9F9;
  border-bottom: 1px solid #DDD !important;
  font-size: 12px !important;
  font-weight: normal !important;
  padding: 0 !important;
  border-top: none !important; }

.toolbar .menu-item {
  display: inline-block;
  padding: 8px 10px;
  font-size: 11px; }

.toolbar .menu-item:hover {
  background: #F0F0F0; }

.toolbar button.menu-item {
  border: none;
  background: #F9F9F9; }

.toolbar button.menu-item:hover {
  background: #F0F0F0; }

.window-container {
  border: 1px solid #DDD; }

.window-container, table,
.file-explorer table {
  margin-bottom: 0; }

.file-explorer-footer {
  border-top: 1px solid #DDD;
  background: #F9F9F9;
  padding: 10px;
  font-size: 11px;
  vertical-align: bottom; }

#file-explorer-content .tab-content {
  display: none; }

#file-explorer-content .tab-content.active {
  display: block; }

.menu-item-dropdown.open .menu-item {
  box-shadow: none;
  background: #F0F0F0; }

.new-row {
  display: block; }

.new-row th {
  background: #eff7ff;
  position: absolute;
  width: 100%;
  box-shadow: 1px 1px 4px #eee;
  border-bottom: 1px solid rgba(0, 0, 0, 0.14); }

/* Pre Cart Classes (Bottom Bar) */
#rd-pre-cart {
  background: #3a4a54;
  position: fixed;
  width: 100%;
  left: 0;
  bottom: 0;
  padding: 10px 20px;
  border-top: 4px solid #ebaa4b;
  z-index: 1040; }
  #rd-pre-cart-items {
    color: white;
    font-weight: 600;
    font-size: 16px;
    line-height: 30px; }

.rd-item-selected td, .rd-item-selected th[scope="row"] {
  background: #87BD4B !important;
  color: #212529 !important; }
  .rd-item-selected td a, .rd-item-selected th[scope="row"] a {
    color: #212529 !important; }

.rd-item-selected-info {
  background: #e8e8e8; }

/* IE 10+ CSS */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .badge-header {
    margin-top: 0; } }

.btn-link-no-underline:focus, .btn-link-no-underline:hover {
  text-decoration: none; }

/*
 * Button on side navigation 
*/
.rd-side-btn {
  background-color: #2872bf;
  font-size: 10pt;
  color: white;
  border: none;
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
  border-radius: 4px;
  font-weight: bold;
  padding: 10px 5px;
  text-shadow: none;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 54px;
  margin-bottom: 13px; }
  .rd-side-btn, .rd-side-btn:hover, .rd-side-btn:focus {
    color: white !important; }

.rd-side-btn.rd-side-btn-hover-dark:hover,
.rd-side-btn.rd-side-btn-hover-dark:focus {
  color: #000000 !important; }

.skip-link {
  position: absolute;
  top: -100px;
  left: 0;
  width: 1px;
  height: 1px;
  overflow: hidden;
  background: #0056B3;
  color: #FFFFFF;
  z-index: 1000;
  transition: top 0.2s ease-in-out;
  white-space: nowrap; }
  .skip-link:focus {
    top: 16px;
    left: 6px;
    width: auto;
    height: auto;
    padding: 10px 20px;
    overflow: visible;
    clip: auto;
    text-decoration: none !important;
    font-weight: bold;
    background: #0056B3;
    color: #FFFFFF;
    outline: 3px solid #FF9900 !important; }

.e-hidden {
  display: none; }

.e-visible {
  display: block !important; }

a.collapse-section {
  text-decoration: none; }

.rd-filter-header {
  display: block;
  width: 100%;
  position: relative;
  text-decoration: none; }
  .rd-filter-header:focus {
    outline: 0 !important;
    outline: none !important;
    box-shadow: none !important; }
  .rd-filter-header .fa-chevron-down {
    transition: transform 0.2s ease-in-out;
    transform: rotate(0deg); }
  .rd-filter-header.collapsed .fa-chevron-down {
    transform: rotate(-90deg); }

.rd-filter-content {
  border: 1px solid #E9E9E9;
  border-bottom-width: 2px; }
  .rd-filter-content:focus {
    outline: none !important;
    box-shadow: none !important; }
  .rd-filter-content:focus-visible {
    border-color: #0056B3 !important;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25) !important; }
  .rd-filter-content .list-group-item {
    padding: 5px 10px 5px 7px;
    border: none;
    transition: box-shadow 0.2s ease-in-out, background 0.2s ease-in-out; }
    .rd-filter-content .list-group-item:focus-within {
      box-shadow: inset 0 0 0 3px #FFCC00, inset 0 0 0 6px rgba(0, 0, 0, 0.8) !important;
      background-color: rgba(0, 0, 0, 0.05);
      z-index: 5; }
    .rd-filter-content .list-group-item .form-checkbox {
      width: 80%;
      cursor: pointer;
      margin: 0; }
      .rd-filter-content .list-group-item .form-checkbox input[type="checkbox"] {
        position: absolute;
        opacity: 0;
        z-index: -1; }
      .rd-filter-content .list-group-item .form-checkbox:focus-within {
        box-shadow: none !important;
        background: none !important; }
  .rd-filter-content .textbox {
    padding: 5px 10px 5px 7px;
    border: none; }
    .rd-filter-content .textbox:focus {
      outline: none !important;
      box-shadow: none !important; }
    .rd-filter-content .textbox:focus-visible {
      border-color: #0056B3 !important;
      outline: 0;
      box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25) !important; }
  .rd-filter-content .list-group-item .form-checkbox {
    font-size: 13px; }

.list-group .list-group-item.active, .list-group .list-group-item.active:hover, .list-group .list-group-item.active:focus {
  background-color: #2D70AF;
  border-color: #2D70AF;
  color: #FFF; }

.bg-primary {
  background: #2D70AF; }

.rd-filter-sub-items {
  border-bottom: 1px solid #E9E9E9;
  border-top: 2px solid #E9E9E9; }

.icon-circle-sm {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 14px; }
  .icon-circle-sm.fa {
    line-height: 1; }

.fb-share-button.fb_iframe_widget {
  display: inline-block !important;
  min-width: 67px !important;
  min-height: 20px !important;
  overflow: hidden;
  vertical-align: top; }
  .fb-share-button.fb_iframe_widget span {
    width: 67px !important;
    height: 20px !important;
    border-radius: 9999px !important; }
  .fb-share-button.fb_iframe_widget iframe {
    width: 67px !important;
    height: 20px !important; }

.fb-share-wrapper {
  display: inline-flex; }
  .fb-share-wrapper .fb-custom-share-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background-color: #1877F2;
    color: white;
    padding: 4px 10px;
    border-radius: 4px;
    font-family: Helvetica, Arial, sans-serif;
    font-weight: bold;
    font-size: 12px;
    text-decoration: none;
    transition: all 0.2s ease; }
    .fb-share-wrapper .fb-custom-share-btn:focus {
      outline: 3px solid #FFCC00 !important;
      outline-offset: 2px !important;
      box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
      position: relative;
      z-index: 10; }
    .fb-share-wrapper .fb-custom-share-btn:hover {
      background-color: #0d6ae4; }
    .fb-share-wrapper .fb-custom-share-btn svg {
      display: block; }

/*.fb-share-wrapper {
	display: inline-flex;
	padding: 0;
	border: 1px solid transparent;
	border-radius: 9999px;
	transition: all 0.2s ease;
	// Ensure the wrapper itself is NOT a tab stop
	outline: none !important;
	// Apply the TWO-TONE styles via the JS-triggered class
	&.is-focused {
		border-color: transparent !important;
		outline: 3px solid $focus-ring-inner !important;
		outline-offset: 2px !important;
		box-shadow: 0 0 0 5px $focus-ring-outer !important;
		position: relative;
		z-index: 9999;
	}
}
*/
.twitter-share-wrapper {
  display: inline-flex;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 9999px;
  transition: all 0.2s ease; }
  .twitter-share-wrapper:focus {
    outline: 0 !important;
    box-shadow: none !important; }
  .twitter-share-wrapper.is-focused {
    border-color: transparent !important;
    outline: 3px solid #FFCC00 !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
    position: relative;
    z-index: 9999; }

.col-xs-6 > a {
  display: block;
  text-decoration: none;
  border-radius: 11px;
  transition: all 0.2s ease; }
  .col-xs-6 > a:focus-visible {
    border-color: #0056B3 !important;
    outline: 0;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.25) !important;
    filter: brightness(0.85); }
  .col-xs-6 > a .panel {
    border-color: #0056B3 !important; }

.table-reflow {
  width: 100%; }
  @media (max-width: 767px) {
    .table-reflow .sub-category-header {
      display: none; }
    .table-reflow .section-header th {
      display: block;
      width: 100%;
      border: none; }
    .table-reflow tr {
      display: block;
      border: 1px solid #DDD;
      margin-bottom: 10px;
      padding: 5px;
      border-radius: 4px; }
      .table-reflow tr th[scope="row"], .table-reflow tr td {
        display: flex !important;
        justify-content: space-between;
        align-items: flex-start;
        gap: 15px;
        padding: 8px 5px !important;
        text-align: right;
        position: relative;
        border: none !important; }
        .table-reflow tr th[scope="row"]:before, .table-reflow tr td:before {
          content: attr(data-label);
          position: static !important;
          flex-shrink: 0;
          width: auto !important;
          max-width: 55% !important;
          text-align: left;
          font-weight: bold;
          color: #2F4F4F; }
    .table-reflow td {
      display: flex !important;
      justify-content: space-between;
      align-items: flex-start;
      gap: 15px;
      padding: 8px 10px !important;
      text-align: right;
      position: relative;
      border: none !important; }
      .table-reflow td:before {
        content: attr(data-label);
        position: static !important;
        flex-shrink: 0;
        width: auto !important;
        max-width: 55% !important;
        left: 10px;
        text-align: left;
        font-weight: bold;
        color: #FF000; }
    .table-reflow td[data-label="Membership Restriction"] {
      display: flex !important;
      flex-direction: column;
      align-items: flex-start !important;
      text-align: left !important; }
      .table-reflow td[data-label="Membership Restriction"] .membership-list {
        display: block;
        padding-left: 1.2em;
        margin-top: 5px; }
        .table-reflow td[data-label="Membership Restriction"] .membership-list a {
          display: list-item;
          list-style-type: disc;
          list-style-position: outside;
          margin-bottom: 5px; }
      .table-reflow td[data-label="Membership Restriction"] br {
        display: none; }
    .table-reflow tr.info-row {
      display: flex;
      justify-content: space-between;
      border-bottom: 1px solid #eee;
      border-radius: 0;
      margin-bottom: 0; }
      .table-reflow tr.info-row th, .table-reflow tr.info-row td {
        display: block;
        padding: 8px 5px !important;
        padding-left: 0 !important; }
        .table-reflow tr.info-row th:before, .table-reflow tr.info-row td:before {
          display: none; }
      .table-reflow tr.info-row th {
        border: none !important;
        color: #555; }
      .table-reflow tr.info-row td {
        text-align: right; }
    .table-reflow .status-detail-wrapper {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 2px; }
      .table-reflow .status-detail-wrapper .detail-name:first-child {
        margin-left: 0; } }
  @media (min-width: 768px) {
    .table-reflow {
      display: table; }
      .table-reflow thead {
        display: table-header-group; }
      .table-reflow tr {
        display: table-row; }
      .table-reflow th[scope="row"] {
        display: table-cell;
        text-align: left;
        border-bottom: none !important;
        border-top: 1px solid rgba(0, 0, 0, 0.05); }
      .table-reflow td {
        display: table-cell;
        text-align: left; }
        .table-reflow td:before {
          display: none; }
      .table-reflow tr.info-row th, .table-reflow tr.info-row td {
        color: #555;
        border-top: 1px solid rgba(0, 0, 0, 0.05);
        border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important; } }
  .table-reflow tr.empty-table-row {
    display: block !important;
    width: 100%; }
    @media (min-width: 768px) {
      .table-reflow tr.empty-table-row {
        display: table-row !important; } }
    .table-reflow tr.empty-table-row td {
      display: block !important;
      width: 100% !important;
      text-align: center !important;
      padding: 40px 10px !important; }
      @media (min-width: 768px) {
        .table-reflow tr.empty-table-row td {
          display: table-cell !important; } }
      .table-reflow tr.empty-table-row td:before {
        display: none !important; }
      .table-reflow tr.empty-table-row td h3 {
        margin: 0; }

.table-schedule-boxed {
  width: 100%;
  border-collapse: collapse; }
  @media (max-width: 767px) {
    .table-schedule-boxed {
      display: block !important; }
      .table-schedule-boxed thead {
        display: none !important; }
      .table-schedule-boxed tbody {
        display: block !important;
        width: 100% !important;
        border: 1px solid #DDD;
        border-radius: 8px;
        background: #fff;
        overflow: hidden;
        box-sizing: border-box; }
      .table-schedule-boxed tr {
        display: flex !important;
        width: 100% !important;
        justify-content: space-between;
        align-items: center;
        padding: 10px 15px;
        box-sizing: border-box; }
        .table-schedule-boxed tr:not(:last-child) {
          border-bottom: 1px solid #eee !important; }
      .table-schedule-boxed th[scope="row"], .table-schedule-boxed td {
        display: block !important;
        padding: 0 !important;
        border: none !important;
        background: none !important;
        width: auto !important; }
        .table-schedule-boxed th[scope="row"]:before, .table-schedule-boxed td:before {
          content: none !important; }
      .table-schedule-boxed th[scope="row"] {
        text-align: left;
        font-weight: bold;
        color: #2F4F4F; }
      .table-schedule-boxed td {
        text-align: right;
        color: #555; } }
  @media (min-width: 768px) {
    .table-schedule-boxed {
      display: table; }
      .table-schedule-boxed thead {
        display: table-header-group; }
      .table-schedule-boxed tbody {
        display: table-row-group; }
      .table-schedule-boxed tr {
        display: table-row; }
      .table-schedule-boxed th[scope="row"] {
        display: table-cell;
        text-align: left;
        padding: 12px !important;
        border-top: 1px solid rgba(0, 0, 0, 0.05);
        border-bottom: none !important; }
      .table-schedule-boxed td {
        display: table-cell;
        text-align: left;
        padding: 12px !important;
        border-top: 1px solid rgba(0, 0, 0, 0.05);
        border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
        .table-schedule-boxed td:before {
          content: none !important; } }

.text-wrap-constrained {
  max-width: 100px;
  white-space: normal;
  word-wrap: break-word;
  overflow-wrap: break-word; }

.status-detail-wrapper {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 85%; }
  .status-detail-wrapper .label {
    display: inline-block;
    min-width: 65px;
    text-align: center; }
  .status-detail-wrapper .detail-name:first-child {
    margin-left: 75px; }

/*
// NOTE: Odd behavior with tabbing through the filter checkboxes
// This was my custom fix for it, in case it happens again
.checkbox-wrapper-row {
	position: relative; // Ensures z-index and absolute children behave
	transition: background-color 0.2s ease;
	// The "Hidden" Input (must remain focusable)
	.sr-only-focusable {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		border: 0;
		visibility: visible !important; // Keeps it in the tab order
	}
	// The Focus State (Triggered when the input inside is tabbed to)
	&:has(.sr-only-focusable:focus-visible) {
		outline: 2px solid $control-selected-color;
		outline-offset: -2px;
		border-color: $control-selected-color;
		z-index: 10;
	}
}
*/
tr.detail-time:focus-visible {
  outline-offset: -2px; }
  tr.detail-time:focus-visible:focus {
    outline: none !important;
    box-shadow: none !important; }
  tr.detail-time:focus-visible:focus-visible {
    outline: 3px solid #FFCC00 !important;
    outline-offset: 2px;
    box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.8) !important;
    position: relative;
    z-index: 9999; }

caption.sr-only {
  color: #000 !important;
  background: #FFF !important;
  display: block; }

@media (min-width: 992px) {
  #page-title {
    padding: 10px 20px 0 25px !important; } }

@media (max-width: 991px) {
  #page-title {
    padding: 0 !important; } }

@media (max-width: 991px) {
  .panel-group {
    margin-bottom: 0px !important; } }

.radio-group-flex {
  display: flex;
  flex-direction: column;
  gap: 10px; }
  @media (min-width: 992px) {
    .radio-group-flex {
      flex-direction: row;
      align-items: center;
      gap: 20px; } }
