/**
 * @file: CiviCRM Stylesheet
 *
 * NOTE: The main civicrm container has both class and id of crm-container
 * Other civi blocks outside the main container also have the class crm-container (but not the id)
 * All styles should start with .crm-container unless they are specific to the main div only
 */

/**
 * CiviCRM themes do not generally have dark mode, so this declares we expect light mode
 * for system components (and our responsive svg logo).
 * In Riverlea, this is overridden depending on the dark mode setting.
 */
.crm-container {
  color-scheme: only light;
}

/* Use this class to hide text that should only be there for screen readers */
.sr-only {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  width: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
}

.crm-container .crm-flex-box {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
}
.crm-flex-box > * {
  flex: 1;
  box-sizing: border-box;
  min-width: 0; /* prevents getting squashed by whitespace:nowrap content */
}
.crm-container .crm-flex-1 {
  flex: 1;
}
.crm-container .crm-flex-2 {
  flex: 2;
}
.crm-container .crm-flex-3 {
  flex: 3;
}
.crm-container .crm-flex-4 {
  flex: 4;
}
.crm-container .crm-flex-5 {
  flex: 5;
}

.crm-container .crm-draggable {
  cursor: move;
}

.crm-container input {
  box-sizing: content-box;
}

.crm-container .crm-inline-block {
  display: inline-block;
}

div.crm-container label {
  font-weight: normal;
  display: inline;
}

div.crm-container fieldset label {
  float: none;
}

input.crm-form-radio + label,
input.crm-form-checkbox + label {
  margin-left: 7px;
}

.crm-container .crm-quickSearchField {
  font-weight: normal;
}

#crm-container .hiddenElement,
.crm-container .hiddenElement {
  display: none;
}

#crm-container .clear,
.crm-container .clear {
  clear: both;
}

.crm-container a,
.crm-container a:link,
.crm-container a:visited {
  color: #2786c2;
  text-decoration: none;
}

#crm-container .crm-content-block {
  padding: 0;
}

/* TABLE STYLING */

.crm-container table {
  margin: 0 0 1em;
  border-collapse: collapse;
  width: 100%;
  font-size: 13px;
}

.crm-container tr {
  background: none transparent;
}

.crm-container th,
.crm-container table.display thead th,
.crm-container table thead.sticky th,
.crm-container table.caseSelector tr.columnheader th {
  background-color: #ffffff;
  border-color: #ffffff #ffffff #cfcec3;
  border-style: solid;
  border-width: 1px 1px 2px;
  color: #a7a7a7;
  font-size: 13px;
  font-weight: bold;
  padding: 4px;
  text-align: left;
  vertical-align: top;
}
/* Styles for Sticky Header */
.crm-sticky thead > tr > th,
.crm-container table thead.sticky {
  background-color: #fff;
}

.crm-container thead div.sticky-header {
  height: 15px;
}

.crm-sticky thead,
.crm-container thead div.sticky-header {
  border-bottom: 2px solid #cfcec3;
  background-color: #fff;
  z-index: 10;
}

.crm-sticky thead {
  position: sticky;
  top: var(--crm-menubar-bottom);
  box-shadow: 0 2px 2px -1px #cfcec3;
}

@media (max-width: 782px) {
  /** WP **/
  .wp-admin .crm-sticky thead {
    top: 48px;
  }
  /** Drupal **/
  .path-civicrm.crm-menu-visible {
    top: 39px;
  }
}

/* Styles for Sorting Header */
.crm-container table thead th.sorting_asc,
.crm-container table thead th.sorting_desc,
.crm-container table .sticky th a.sort-ascending,
.crm-container table .sticky th a.sort-descending,
.crm-container table.caseSelector tr.columnheader th a.sort-ascending,
.crm-container table.caseSelector tr.columnheader th a.sort-descending {
  color: #3e3e3e;
  background-color: #fff;
}

/* Set background back to normal gray for form labels which use <th>. Temporary fix until we standardize form layout markup. */
.crm-container table.form-layout-compressed tbody th.label {
  background-color: #f7f7f7;
}

.crm-container tbody {
  border-top: none;
}

.crm-container td {
  padding: 4px;
  vertical-align: top;
}

.crm-container .crm-row-child {
  margin: 0;
  padding: 3px 0 3px 0;
  clear: none;
  background-color: #f1f8eb;
}

/*
** Size input fields in crm-container by class. Classes are assigned by the
** module in relation to the data object max size.
*/
.crm-container .crm-select2 {
  width: 15em;
}
.crm-container .two {
  width: 2em;
}
.crm-container .four {
  width: 4em;
}
.crm-container .six {
  width: 6em;
}
.crm-container .eight {
  width: 8em;
}
.crm-container .twelve {
  width: 12em;
}
.crm-container .twenty {
  width: 20em;
}
.crm-container .medium {
  width: 12em;
}
.crm-container .big {
  width: 15em;
}
.crm-container .huge,
input.crm-form-autocomplete,
input.crm-form-entityref {
  width: 25em;
}
.crm-container .huge40 {
  width: 40em;
}
.crm-container textarea.big {
  width: 35em;
  height: 4em;
}
.crm-container textarea.huge {
  width: 45em;
  height: 16em;
}
.crm-container textarea.huge12 {
  width: 40em;
  height: 12em;
}
.crm-container textarea.huge40 {
  width: 40em;
  height: 16em;
}
.crm-container textarea.nowrap {
  width: 45em;
  height: 4.5em;
  white-space: nowrap;
  overflow: auto;
}
.crm-container .bigSelect {
  width: 15em;
  height: 12em;
}

/* Override line-height from style.css */
#crm-container,
.crm-container {
  line-height: 135%;
}

/* Base crm-container styles */
.crm-container hr {
  background-color: #b0b0b0;
}

.crm-container .crm-form-block {
  padding: 4px;
  margin-bottom: 4px;
  font-size: 13px;
  background-color: #efefe5;
  color: #3e3e3e;
}

.crm-container .no-border {
  border-style: none;
}

/*
** Class for giving solid line at the bottom of the <div>(block level element)
** Currently it is used on the dashboard pages - CiviContribute, CiviMember...
*/
.crm-container div.solid-border-bottom {
  border-bottom: 2px solid #777;
}

.crm-container .solid-border-top {
  margin-top: 15px;
  border-top: 1px solid #696969;
}

/* Size the vertical heights in crm-containers by class. */
.crm-container .ht-one {
  height: 1em;
}

.crm-container .add-remove-link {
  font-size: .9em;
}

/* Ensures max-width is reset to css default for the images in the maps */
#Map img {
  max-width: none;
}

.crm-container .required {
  color: inherit;
}

/* CRM form layout classes (from www.realworldstyle.com) */
.crm-container .spacer {
  clear: left;
  height: 5px;
}

.crm-container td.compressed select,
.crm-container td.compressed input {
  font-size: 0.90em;
  font-weight: bold;
}

.crm-container td.Int input {
  width: 6em;
}

.crm-container input.crm-form-text.ng-invalid.ng-dirty {
  border: 1px solid #ff0000;
}
.crm-container input.crm-form-text,
.crm-container .crm-icon-picker-button,
.crm-container input.dateplugin,
.crm-container input.crm-form-password {
  border: 1px solid #999;
  vertical-align: middle;
  padding: 1px 2px;
  height: 1.8em;
  background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #eee), color-stop(15%, #fff));
  background-image: -webkit-linear-gradient(top, #eee 1%, #fff 15%);
  background-image: -moz-linear-gradient(top, #eee 1%, #fff 15%);
  background-image: linear-gradient(top, #eee 1%, #fff 15%);
}

.crm-container input.crm-form-text[disabled],
.crm-container input.dateplugin[disabled],
.crm-container select.crm-form-select[disabled],
.crm-container input.crm-form-text[readonly],
.crm-container input.crm-form-password[disabled],
.crm-container input.crm-form-password[readonly] {
  background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(1%, #ddd), color-stop(15%, #f2f2f2));
  background-image: -webkit-linear-gradient(top, #ddd 1%, #f2f2f2 15%);
  background-image: -moz-linear-gradient(top, #ddd 1%, #f2f2f2 15%);
  background-image: linear-gradient(top, #ddd 1%, #f2f2f2 15%);
}

.crm-container input.crm-form-text[disabled],
.crm-container input.dateplugin[disabled],
.crm-container select.crm-form-select[disabled],
.crm-container input.crm-form-password[disabled] {
  color: #a9a9a9;
}

.crm-container .crm-form-time {
  width: 5em;
  margin-left: 1em;
}

.crm-container .crm-form-submit {
  margin: .25em 0.5em 0.25em 0;
}

.crm-container div.crm-inline-button {
  padding-left: 6px;
  padding-top: 6px;
  margin-bottom: 28px;
}

.crm-container fieldset {
  background: none;
  padding: 4px 0;
  margin: 10px 0;
  border: none;
  border-top: 1px solid #cfcec3;
}

.crm-container fieldset.no-border {
  border-top: none;
}

.crm-container fieldset legend {
  display: block;
  font-size: 14px;
  font-weight: bold;
  padding: 4px;
  background: none;
  border: medium none;
  background-color: transparent;
  color: #3e3e3e;
  position: relative;
  text-indent: 0;
  width: auto;
}

.crm-container fieldset.form-layout {
  margin: .25em 0 .5em 0;
  padding: 1px 10px 1px 10px;
}

.crm-container fieldset.collapsible {
  border: 0;
}

.crm-container div.form-item {
  border-top-style: none;
  margin: 0;
  padding: 3px 0 5px 0;
  clear: none;
  height: 100%;
}

.crm-container div.form-item dl,
.crm-container .section-hidden dl,
.crm-container .crm-form-block dl {
  margin: 0;
}

/* contribution page styles */
.crm-container #Main fieldset table td {
  background-color: transparent;
  border: none;
}

.crm-container .crm-section,
.crm-container div.crm-field-wrapper {
  margin-bottom: 1em;
}

@media (min-width:1079px) {
  .wp-toolbar {
    --crm-sticky-top: 80px;
  }
  .wp-toolbar .crm-menubar-above-cms-menu,
  .wp-toolbar .crm-menubar-below-cms-menu {
    --crm-sticky-top: 112px;
  }

}

/* todo: See PR#19968 to move towards configurable breakpoints */
@media (min-width: 480px) {
  .crm-container .crm-section .label {
    float: left;
    width: 17%;
    text-align: right;
  }
}

.crm-container .crm-section .label label {
  white-space: normal;
}

.crm-container .label-left .label {
  text-align: left;
}

@media (min-width: 480px) {
  .crm-container .crm-section .content {
    margin-left: 19%;
  }
}

.crm-container .no-label .content {
  margin-left: 0;
}

#crm-container #cvv2 {
  vertical-align: top;
}

/* Use definition lists for simple 2 col forms - <dt> for labels, <dd> for fields */
.crm-container div.form-item dt,
.crm-container .crm-form-block dt {
  float: left;
  clear: left;
  width: 150px;
  text-align: right;
  vertical-align: top;
  padding: 5px 15px 5px 0;
  font-size: .95em;
  white-space: normal;
}

.crm-container .section-hidden dt {
  float: left;
  clear: left;
  width: 150px;
  text-align: left;
  font-weight: bold;
  white-space: nowrap;
  padding: 5px 15px 5px 0;
}

.crm-container div.form-item dd,
.crm-container .crm-form-block dd,
.crm-container .section-hidden dd {
  padding: 3px;
  margin-left: 160px;
}

.crm-container div.form-item dd.html-adjust,
.crm-container div.form-item dl.html-adjust dd,
.crm-container div.crm-form-block dl.html-adjust dd,
.crm-container div.crm-form-block dd.html-adjust {
  width: 57%;
}

.crm-container div.form-item dd.description,
.crm-container div.crm-form-block dd.description {
  padding: 0 0 5px;
  white-space: normal;
}

.crm-container div.form-item span.labels,
.crm-container div.crm-form-block span.labels {
  float: left;
  width: 15%;
  text-align: right;
}

.crm-container div.form-item span.fields,
.crm-container div.crm-form-block span.fields {
  width: 84%;
  text-align: left;
  margin-left: 16%;
  display: block;
}

.crm-container table.form-layout,
.crm-container table.no-border {
  margin: 0;
  border-collapse: collapse;
  border: 0 none;
}

.crm-container table.form-layout-compressed {
  margin: 0 0 .5em;
  width: auto;
  border-collapse: collapse;
  border: 1px none;
}

.crm-container table.crm-profile-tagsandgroups>tbody>tr>td {
  padding: 0;
}

.crm-container table.crm-profile-tagsandgroups,
.crm-container table.crm-profile-tagsandgroups table {
  margin: 0;
}

.crm-container table.advmultiselect {
  margin: 0;
  width: auto;
  border-collapse: collapse;
  border: 1px solid #696969;
}

.crm-container table.advmultiselect td {
  padding: 10px;
}

.crm-container table.advmultiselect td select {
  width: 150px;
}

.crm-container .form-layout td {
  vertical-align: top;
  padding: 5px;
  white-space: normal;
  border: none;
}

.crm-container .form-layout td.report,
.crm-container .form-layout td.description,
.crm-container .form-layout-compressed td.description {
  white-space: normal;
}

.crm-container .form-layout-compressed td,
.crm-container .form-layout-compressed th {
  vertical-align: text-top;
  padding: 2px 5px;
  border: none;
}

.crm-container .form-layout td.label,
.crm-container .form-layout-compressed td.label,
.crm-container .selector td.label,
.crm-container .form-layout-compressed th.label {
  text-align: right;
  padding: 4px 4px 4px 6px;
  border: 0 none;
  vertical-align: top;
}

.crm-container .form-layout td.label-left,
.crm-container .form-layout-compressed td.label-left {
  text-align: left;
  padding: 4px 4px 4px 6px;
  border: 0 none;
  vertical-align: top;
}

.crm-container .form-layout td.view-value,
.crm-container .form-layout-compressed td.view-value {
  text-align: left;
  padding: 4px;
  border: 0 none;
  vertical-align: top;
}

#crm-submit-buttons {
  width: 100%;
  /* fix ie7/ie8 bug where page goes bananas */
}

.crm-container .form-layout .buttons,
.crm-container .form-layout-compressed .buttons {
  padding-top: 10px;
}

.crm-container .form-layout-compressed td.describe-image {
  vertical-align: top;
  padding: 0.5em 0 0 0;
  font-size: .9em;
}

.crm-container .right {
  text-align: right;
}

.crm-container .form-layout-compressed td.option-label {
  vertical-align: top;
  text-align: right;
  padding: 0.75em 0.5em 0 0.75em;
  color: #7a7a60;
}

.crm-container td.price_set_option-label {
  padding-left: 3em;
}

/* messages and status */
.crm-container .messages {
  margin: 1em 0 1em;
  border: none;
  font-weight: normal;
}

.crm-container .messages .msg-title {
  font-weight: bold;
}

.crm-container .messages table {
  width: auto;
}

.crm-container .messages table td {
  background-color: #f7f7f7;
  border-bottom: 1px solid #dddddd;
}

.crm-container .status {
  background-color: #ffffcc;
  background-image: none;
  border: 1px solid #ffff66;
  margin: 0.5em 0;
  padding: 0.25em 0.5em;
  color: #3e3e3e;
  font-weight: normal;
}

.crm-container .status dl {
  margin: 2px 5px;
}

.crm-container div.status dt {
  clear: none;
  float: left;
  width: 20px;
}

.crm-container div.status dd {
  margin-left: 0;
}

.crm-container div.status ul {
  margin: 0 0 1em 16px;
}

.crm-container .status-pending {
  color: green;
}

.crm-container .status-completed {
  color: #000080;
}

.crm-container .crm-marker {
  color: #8a1f11;
  font-weight: bold;
  margin-right: 5px;
}

.crm-container .crm-error,
.crm-container .crm-inline-error {
  background: #fbe3e4 none repeat scroll 0 0;
  border: none;
  color: #8a1f11;
}
.crm-container .crm-error {
  padding: 4px;
}

.crm-container .status.crm-ok {
  border-color: #b0d730;
  background-color: #f1f8eb;
  color: #3e3e3e;
}

.crm-container .status.crm-status-none {
  background-color: inherit;
}

.crm-container .crm-footer {
  font-size: 0.8em;
}

.crm-footer .status {
  padding: 4px;
  border: 0px;
}

#civicrm-footer {
  margin-top: 2em;
  border-top: 1px solid #ddd;
  padding: 0.8em;
  text-align: center;
}

.crm-container #civicrm-footer.crm-public-footer {
  vertical-align: middle;
  text-align: right;
  font-size: 16px;
  padding: 0.8em 0;
}

.crm-container a.empowered-by-link {
  display: inline-block;
  height: 34px;
  position: relative;
  width: 99px;
}

.crm-container div.empowered-by-logo {
  background: url('../i/civi99.png') no-repeat;
  background-image: url('../i/civi99.svg'), none;
  display: block;
  line-height: 34px;
  position: absolute;
  top: 9px;
  width: 99px;
}

.crm-container div.empowered-by-logo span {
  visibility: hidden;
}

.crm-container #access {
  padding: 0.8em 0.8em 0 0;
  text-align: right;
}

.crm-container .header-dark {
  margin: 0.5em 0 0.5em;
  padding: 0.5em;
  background-color: #999999;
  font-weight: bold;
  color: #fafafa;
  border-radius: 2px;
}

.crm-container div.display-block {
  font-weight: normal;
  margin: 1em 2em 1em 2em;
}

/* Data display layouts */
.crm-container h3 {
  /* h3 used as table header for civicrm */
  background-color: #cde8fe;
  font-size: 15px;
  font-weight: bold;
  color: #121a2d;
  padding: 4px 6px;
  margin: 0 0 0.3em;
}

.crm-container h3.nobackground,
.crm-container .crm-form-block h3 {
  background-color: transparent;
}

#crm-container .col1 {
  float: left;
  vertical-align: top;
  width: 40%;
  text-align: left;
  margin: 0 25px 0 25px;
}

#crm-container .col2 {
  float: right;
  vertical-align: top;
  width: 50%;
  text-align: left;
  margin: 0;
}

#crm-container ul.indented {
  padding-left: 3em;
}

#crm-container tr.subevent td.event-title,
#crm-container tr.subevent td.event-info {
  padding-left: 3em;
}

#crm-container span.child-indent {
  padding-left: 1em;
}

/* Remove any weird list styles from the cms */
.crm-container ul li {
  background-image: none;
}

.crm-container .crm-form-block .crm-loading-element {
  background-image: url("../i/loading-E6E6DC.gif");
}

.crm-container .crm-loading-element {
  padding-left: 30px;
  height: 30px;
  background: transparent url("../i/loading.gif") no-repeat 0 0;
}

.crm-container div div.crm-msg-loading div.icon {
  background: transparent url("../i/loading-2f2f2e.gif") no-repeat 0 0;
}

/*
 * Styles for formatting text
 */

/* Inline form field 'post-help' and radio-button unselect */
.crm-container .description {
  font-size: 0.9em;
  font-weight: normal;
  white-space: normal;
  width: auto;
  color: #696969;
  line-height: inherit;
  padding: 0;
  margin: 0;
}

.crm-container .price-set-option-content .description {
  font-size: 1em;
}

.crm-container .form-layout-compressed td.description,
.crm-container .form-layout td.description {
  padding: 0 5px 5px 5px;
  font-size: 1em;
}

/* Page and form-level 'help' */
.crm-container .help,
.crm-container #help {
  background-color: #f1f8eb;
  border: 1px solid #b0d730;
  color: #3e3e3e;
  font-size: 13px;
  margin: 0 0 8px;
  padding: 4px;
}

.crm-container .help p {
  margin: 4px;
}

.crm-container .font-light {
  font-weight: lighter;
}

.crm-container .bold {
  font-weight: bold;
}

.crm-container .font-bold {
  font-weight: bold !important;
}

.crm-container .font-italic {
  font-style: italic;
}

.crm-container .qill {
  font-weight: normal;
  line-height: 1.1em;
}

/* Styles for record browser and report tables, and pager bar */
#crm-container #map-field table,
#crm-container table.report,
#crm-container table.chart {
  width: auto;
}

#crm-container .crm-flashchart {
  overflow: auto;
}

#crm-container td.enclosingNested {
  padding: 0;
}

#crm-container .nowrap {
  white-space: nowrap;
}

#crm-container tr.columnheader {
  background-color: #e6e6e6;
  color: #000000;
  border: 1px solid #ddd;
}

#crm-container tr.columnheader a {
  color: #000;
  text-decoration: none;
  vertical-align: top;
}

#crm-container tr.columnheader-dark th {
  background-color: #999999;
  color: #fafafa;
  border: 1px solid #696969;
}

#crm-container tr.columnheader-dark td,
#crm-container tr.columnheader-dark th,
#crm-container tr.columnheader td,
#crm-container tr.columnfooter td {
  font-size: 1.1em;
  font-weight: bold;
}

/* dev/core#1039 Make contact details in popup on merge screen non bold */
#crm-container tr.columnheader td [class*="crm-summary-col-"] {
  font-size: 13px;
  font-weight: normal;
}

#crm-container tr.columnheader-dark th span.extra {
  font-size: .95em;
  font-weight: normal;
}

#crm-container tr.columnfooter {
  border-top: 2px solid #999999;
  font-size: 1.1em;
}

#crm-container #map-field th {
  border-right: 1px solid #999999;
}

#crm-container #map-field td,
#crm-container .report td,
#crm-container .chart td {
  padding: 10px 10px 4px 10px;
}

#crm-container .report td {
  border: 1px solid #999999;
  background-color: #f6f6f6;
}

/* double line right border for last cell in a horizontal grouping */
#crm-container table.report td.splitter {
  border-right: 5px double #999999;
}

#crm-container .report td.separator {
  padding-top: 1em;
  background-color: #ffffff;
  border-left-color: #ffffff;
  border-right-color: #ffffff;
}

#crm-container .chart td {
  border: 2px solid #999999;
}

.crm-container .float-left {
  float: left;
  padding: 4px 0;
  clear: none;
}

.crm-container .float-left + .float-left {
  margin-left: 1em;
}

.crm-container .float-right {
  float: right;
  width: auto;
  padding: 4px 0;
  clear: none;
}

.crm-container .align-right {
  display: block;
  margin-right: 20px;
  text-align: right;
}

.crm-container .element-right {
  float: right;
  margin-right: 35px;
}

/* search page styles */
.crm-container .crm-search-tasks,
.crm-container .crm-tasks {
  margin-bottom: 4px;
  padding: 4px;
}

.crm-container .crm-search-results {
  margin-bottom: 4px;
  padding: 0;
}

.crm-container #search-status {
  border: none;
  font-size: 13px;
  font-weight: normal;
}

.crm-container .crm-pager {
  border: none;
  background-color: #f5f6f1;
  position: relative;
  height: 35px;
  padding-top: 5px;
  margin-bottom: 4px;
}

.crm-container #search-status ul {
  margin: 0;
}

.crm-container #search-status ul li,
#crm-container ul.left-alignment li {
  display: list-item;
  margin-left: 2em;
  list-style-position: inside;
}

.crm-container .crm-pager input {
  text-align: center;
}

.crm-container .crm-pager-nav {
  display: block;
  margin-top: 7px;
  padding-left: 5px;
}

#crm-container .section-hidden {
  display: block;
  margin: 0;
  padding: 5px;
  font-size: 0.95em;
}
#crm-container form .section-hidden-border {
  background-color: #5c5c59;
  border: medium none;
  color: #ffffff;
  margin-left: 5px;
  font-size: 13px;
  font-family: Verdana;
  padding: 2px 0 0 0;
}

#crm-container .section-shown {
  padding: 0 5px;
}
#crm-container .data-group-first {
  margin: 10px 5px 5px 5px;
  padding: 5px;
  border-top: 2px solid #999999;
  clear: none;
}

/* Styles for Wizard Progress Bars */
#crm-container ul.wizard-bar {
  border-collapse: collapse;
  padding: 0 0 0 1em;
  white-space: nowrap;
  list-style: none;
  margin: 10px 0 20px;
  height: auto;
  width: auto;
  line-height: normal;
  border-top: 3px solid #bbb;
  text-align: center;
}

#crm-container ul.wizard-bar li {
  display: inline;
  background-color: #fafafa;
  border: 1px solid #999999;
  height: auto;
  margin: -2px;
  padding: .5em 1em .5em;
  text-decoration: none;
  font-size: .95em;
  background-image: none;
}

#crm-container ul.wizard-bar li.current-step {
  background-color: #4a89dc;
  border-color: #4a89dc;
  color: #ffffff;
  font-weight: bold;
}

#crm-container ul.wizard-bar li.past-step {
  background-color: #f5f5f5;
  color: #666;
}

#crm-container ul.wizard-bar li:first-child {
  border-radius: 8px 0 0 8px;
}

#crm-container ul.wizard-bar li:last-child {
  border-radius: 0 8px 8px 0;
}

/* Recently Viewed bar */
#crm-recently-viewed ul {
  list-style-image: none;
  font-size: .9em;
  padding: 0;
}

#crm-recently-viewed li.crm-recently-viewed {
  margin: 1px;
  padding: 1px 1px 4px 3px;
  border: 1px solid #d7d7d0;
  background-color: #fff;
  white-space: nowrap;
  list-style-type: none;
  position: relative;
  border-radius: 4px;
}

#crm-recently-viewed ul li.crm-recently-viewed:hover,
#crm-recently-viewed .crm-recentview-wrapper {
  background-color: #ffffcc;
  border: 1px solid #ffff66;
  border-radius: 4px;
}

#crm-recently-viewed a {
  font-weight: normal;
  color: #4a88df;
  text-decoration: none;
  font-size: .95em;
}

#crm-recently-viewed .crm-recentview-wrapper {
  display: none;
  position: absolute;
  z-index: 99;
  width: 10em;
  overflow: hidden;
  top: 0;
  text-align: center;
  padding-top: 1em;
}

#crm-recently-viewed.left .crm-recentview-wrapper {
  border-left: none;
  right: -10em;
}

#crm-recently-viewed.right .crm-recentview-wrapper {
  border-right: none;
  left: -10em;
}

#crm-recently-viewed li.crm-recently-viewed:hover .crm-recentview-wrapper {
  display: block;
}

.crm-recentview-item {
  overflow: hidden;
  text-overflow: ellipsis;
}

#crm-recently-viewed .crm-recentview-wrapper a:hover {
  color: #494949;
}

/* Boxes of checkbox elements (e.g. Advanced Search page) */
.crm-container .listing-box,
.crm-container .listing-box-tall {
  width: auto;
  max-width: 30em;
  height: 7.25em;
  overflow: auto;
  border: 1px solid #999999;
}

.crm-container .listing-box div {
  color: black;
}

/* To allow for taller boxes of groups/tags. */
.crm-container .listing-box-tall {
  margin: .25em 2em .5em 0;
  height: 15em;
}

/* Image Styles */
.crm-container .action-icon {
  vertical-align: middle;
  padding: 2px 2px 2px 3px;
  margin: 2px 2px 3px 2px;
  cursor: pointer;
}

#crm-container button.submit-link {
  color: #285286;
  background: none transparent;
  border: none;
  cursor: pointer;
  margin: 0 -0.5em 0 -0.5em;
  text-shadow: none;
}

.crm-container .underline-effect {
  color: #285286;
}

.crm-container .underline-effect:hover {
  text-decoration: underline;
}

.crm-container .underline-effect:before {
  content: "\00BB";
}

#crm-container.clear,
.crm-container .crm-group-summary .clear {
  /* generic container (i.e. div) for floating buttons */
  overflow: hidden;
  width: 100%;
}

#location .form-layout table,
#location .form-layout td,
#crm-container div#location table.form-layout table.inner-table td {
  border: 0;
  vertical-align: top;
  margin-bottom: -5px;
  width: auto;
}

/* class for personal campaign info page */
#crm-container table.campaign th,
.crm-container table.campaign td,
#crm-container table.campaign,
#crm-container table.campaign table.form-layout td {
  font-size: 9pt;
  border: 0;
  width: auto;
  vertical-align: top;
}

#crm-container table.campaign table {
  background: #f7f7f7;
}

#crm-container div.remaining {
  background: url("../i/contribute/pcp_remain.gif");
}

#crm-container div.achieved {
  background: url("../i/contribute/pcp_achieve.gif");
}

#crm-container .honor_roll {
  margin: 1em 20px 0 0;
  padding: 10px;
  width: 120px;
  background-color: #fafafa;
  border: 1px solid #9d9fca;
  height: 220px;
  overflow: hidden;
}

#crm-container .thermometer-wrapper,
#crm-container .honor-roll-wrapper {
  float: left;
  width: 150px;
  margin-left: 1em;
}

#crm-container .thermometer-fill-wrapper {
  background: transparent url("../i/contribute/pcp_remain.gif") repeat-y scroll left bottom;
  height: 220px;
  position: relative;
  margin: 1em 0 1.5em 0;
}

#crm-container .thermometer-fill {
  background: transparent url(../i/contribute/pcp_achieve.gif) repeat-y scroll 0 bottom;
  bottom: 0;
  left: 0;
  position: absolute;
  width: 130px;
}

#crm-container .thermometer-pointer {
  padding-left: 45px;
  /* width of thermometer + a little actual padding */
  position: absolute;
  top: -10px;
  /* vertically center text on percentage raised */
  line-height: 1em;
}

#crm-container .pcp-intro-text {
  padding-bottom: 1em;
}

#crm-container .pcp-image {
  float: left;
  margin: 0 1em 1em 0;
}

#crm-container .pcp-image img {
  max-width: 360px;
}

#crm-container .pcp-widgets {
  border: 1px solid #cccccc;
  float: right;
  margin: 0 0 1em 1em;
  padding: 0.5em;
}

#crm-container .pcp_honor_roll_entry {
  margin-bottom: 1em;
}

#crm-container .pcp-honor_roll-nickname {
  font-weight: bold;
}

#crm-container .pcp-donate {
  height: 24px;
}
#crm-container a.pcp-contribute-button {
  font-weight: bold;
}

#crm-container .pcp-create-your-own {
  clear: left;
  margin: 1em 0;
}

#crm-container .pcp-page-text {
  margin-bottom: 1em;
}

#crm-container table.nestedSelector {
  margin: 0;
  width: 100%;
  border-bottom: 0;
}

#crm-container table.nestedSelector tr.columnheader th {
  border: 0;
}

#crm-container table.caseSelector {
  vertical-align: top;
  border: 0;
  margin: 0.5em 0.1em;
}

#crm-container table.caseSelector tr {
  border-bottom: 1px solid #999999;
}

#crm-container table.caseSelector td {
  border-right: 0;
  padding: 4px;
}

#crm-container table.nestedActivitySelector {
  margin: 0;
  width: 100%;
  border: 0;
  color: #333333;
}

#crm-container table.nestedActivitySelector tr.columnheader th {
  color: #000000;
  background-color: #cfcec3;
  border-top-color: #fff;
  border-left-color: #ffffff;
  border-right-color: #ffffff;
  border-bottom-color: #999999;
}

#crm-container table#activities-selector.nestedActivitySelector,
#crm-container table#activities-selector.nestedActivitySelector td {
  border: 0;
}

#crm-container table.nestedActivitySelector td {
  border-right: 0;
}

#crm-container table.nestedActivitySelector tr.priority-urgent,
#crm-container table.nestedActivitySelector tr a.priority-urgent {
  background-color: #ffdddd;
}

#crm-container table.nestedActivitySelector tr.priority-low,
#crm-container table.nestedActivitySelector tr a.priority-low {
  background-color: #ddffdd;
}

#crm-container table.nestedActivitySelector tr.status-scheduled,
#crm-container table.nestedActivitySelector tr a.status-scheduled {
  color: #006633;
}

#crm-container table.nestedActivitySelector tr.status-completed,
#crm-container table.nestedActivitySelector tr a.status-completed {
  color: #333333;
}

#crm-container table.nestedActivitySelector tr.status-overdue,
#crm-container table.nestedActivitySelector tr a.status-overdue {
  color: #ff0000;
}

#crm-container table.nestedActivitySelector tr a.crm-activity-status {
  cursor: pointer;
}

#crm-container #activities-selector tr:hover td,
#crm-container #activities-selector tr:hover td.sorted,
#crm-container #activities-selector tr.trOver td.sorted,
#crm-container #activities-selector tr.trOver td {
  background: transparent;
}

/* Styles for Actions Ribbon */
#crm-container .crm-actions-ribbon {
  margin: 0 0 8px 0;
}

#crm-container .crm-actions-ribbon ul {
  margin: 0;
  padding: 0;
}

#crm-container .crm-actions-ribbon li {
  float: left;
  margin: 0 8px 0 0;
  padding: 0;
  list-style: none;
}

#crm-container .crm-actions-ribbon li.crm-previous-action,
#crm-container .crm-actions-ribbon li.crm-next-action {
  float: right;
  margin: 0 0 0 8px;
}

#crm-container .ac_results li {
  float: none;
  padding: 4px;
  margin: 0;
  line-height: 15px;
  white-space: initial;
}

.crm-container .action-item-wrap {
  padding: 0 5px;
  border-left: 1px solid #ccc;
  white-space: normal;
}

/* Hover-buttons */
.crm-container span.crm-hover-button,
.crm-container a.crm-hover-button {
  display: inline-block;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: 4px;
  text-decoration: none;
  font-size: .9em;
  color: #000;
  padding: 1px 3px;
  opacity: .7;
  cursor: pointer;
}
.crm-container a.crm-hover-button.action-item,
.crm-container .crm-hover-button.btn-slide {
  font-size: .95em;
  padding: 3px 5px;
  opacity: 1;
  color: #2786c2;
}
.crm-container .btn-slide .action-item {
  white-space: normal;
}
.crm-container .crm-accordion-header .crm-hover-button {
  opacity: 1;
  position: relative;
  top: -2px;
  color: inherit;
}
.crm-container .crm-hover-button:hover,
.crm-container a.crm-hover-button:hover,
.crm-container a.crm-hover-button:active {
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eee), color-stop(1, #ccc));
  background-image: -webkit-linear-gradient(center bottom, #eee 0%, #ccc 100%);
  background-image: -moz-linear-gradient(center bottom, #eee 0%, #ccc 100%);
  filter: "progid: DXImageTransform.Microsoft.gradient(startColorstr = '#cccccc', endColorstr = '#eeeeee', GradientType = 0)";
  background-image: linear-gradient(top, #eee 0%, #ccc 100%);
  border: 1px solid #aaaaaa;
  opacity: 1;
  color: #2786c2;
}
.crm-container .crm-hover-button .icon {
  cursor: pointer;
  margin-left: 3px;
  position: relative;
  top: 2px;
}
.crm-container .crm-hover-button:hover .icon,
.crm-container .crm-hover-button:active .icon {
  background-image: url("../i/icons/jquery-ui-2786C2.png");
}
.crm-container a.action-item {
  display: inline;
}

/* theming for panel and context menus */
.crm-container td ul.panel li {
  background-color: #2f2f2e;
}

.crm-container .btn-slide .panel li a:hover,
.crm-container .crm-participant-list-inner li a:hover,
.crm-container .crm-event-links-list-inner li a:hover,
.crm-container .crm-contribpage-links-list-inner li a:hover {
  color: #3e3e3e;
  background-color: #f5f6f1;
  text-decoration: none;
}

.crm-container ul.panel {
  display: none;
  z-index: 9999;
  position: absolute;
  border-bottom: 0;
  background: transparent url(../i/dropdown-pointer.gif) no-repeat scroll 150px 1px;
  text-align: left;
  padding-top: 5px;
  margin: 0;
  width: 180px;
}

.crm-container td ul.panel {
  top: 15px;
  right: 0;
}

.crm-container td ul.panel li {
  margin: 0;
  padding: 2px;
  list-style: none;
  background-image: none;
  width: auto;
}

.crm-container span.btn-slide {
  text-align: left;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
  display: inline;
}
.crm-container .btn-slide:after {
  font-family: "FontAwesome";
  content: "\f0da";
  padding-left: .5ex;
}

.crm-container .btn-slide-active .panel {
  z-index: 10;
}

.crm-container .crm-event-participants,
.crm-container .crm-event-links,
.crm-container .crm-event-more {
  min-width: 85px;
  z-index: 1;
}

.crm-container .btn-slide .panel li a {
  text-decoration: none;
  padding: 4px;
  display: block;
  cursor: pointer;
  color: #dfdfdf;
}

/*class for CMS user name check used in profile*/
.crm-container .cmsmessagebox {
  position: absolute;
  width: auto;
  margin-left: 10px;
  padding: 3px;
}

.crm-container ul li.crm-tab-button {
  border-bottom: 0 none;
  float: left;
  margin: 0 0.2em 1px 0;
  padding: 0 0 1px;
  position: relative;
  top: 1px;
  white-space: nowrap;
}

.crm-container .ui-tabs .ui-tabs-nav {
  padding: 4px;
}

.crm-container .crm-tab-button a,
.crm-container .ui-tabs .ui-tabs-nav li a,
.crm-container .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a,
.crm-container .ui-tabs .ui-tabs-nav li.ui-tabs-selected a {
  font-size: 0.9em;
}

.crm-container li.crm-tab-button {
  margin: 0 2px 2px 0;
}

.crm-container .ui-tabs .ui-tabs-nav li.ui-tabs-selected {
  padding-bottom: 0;
  border: none;
}

.crm-container .crm-tab-button a,
.crm-container .ui-tabs .ui-tabs-nav li a {
  padding: 5px !important;
}

.crm-container .crm-tab-button a em {
  color: #555555;
  font-style: normal;
}

#crm-container div.ui-accordion-content {
  padding: .5em 1em !important;
}

#crm-container .ui-tabs-panel {
  padding: 4px;
  min-height: 12em;
}

#crm-container div.contact_details {
  padding: 4px;
  line-height: 1.4em;
  clear: both;
}

.crm-container .crm-clearfix:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

.crm-container div.crm-clear {
  clear: both;
  margin-bottom: 1px;
  background-color: #fafafa;
  font-size: 11px;
}

/* reports */

#crm-container div.buttons {
  text-align: right;
  margin: 8px 0 0;
  padding: 4px 4px 2px 0;
  background-color: #fff;
  border: none;
}

#crm-container div.buttons input,
#crm-container div.buttons select {
  font-size: 0.9em;
  vertical-align: top !important;
}

#crm-container div.buttons #actions {
  text-align: left;
  float: left;
}
#crm-container div.buttons ul#actions {
  list-style-type: none;
  padding-left: 0;
}
#crm-container div.buttons #actions li {
  float: left;
  padding: 0;
  margin: 0 5px 0 0;
}

#crm-container div.crm-case-dashboard-buttons {
  height: 33px;
}

#crm-container div.crm-case-dashboard-switch-view-buttons {
  float: right;
}

.crm-container a.crm-event-feed-link {
  margin: 0 1ex;
  color: #52534d;
  display: inline-block;
  font-size: 10px;
  padding: 2px 2px 0;
  vertical-align: bottom;
}

.crm-container a.crm-event-feed-link:hover {
  color: #2786c2;
}

.crm-container table.criteria-group {
  margin-bottom: .1em;
}

#crm-container .separator {
  border-bottom: solid 2px #ccc;
}

#crm-container .report-layout {
  border: none;
}

#crm-container .reports-header-right {
  text-align: right;
}

#crm-container .report-contents {
  background-color: #f5f5f5;
  border: 1px solid #cdcdc3;
  padding: 4px;
  width: 20%;
  white-space: normal;
  font-size: 0.95em;
}

#crm-container .report-contents-right {
  border: 1px solid #cdcdc3;
  padding: 4px;
  font-size: 0.95em;
  text-align: right;
}

#crm-container table.report-layout td {
  padding: 4px;
  border-bottom: 1px solid #cdcdc3;
  vertical-align: top;
}

#crm-container .report-label {
  text-align: right;
  font-weight: bold;
}

#crm-container table.report-layout th.report-contents {
  background-color: #f5f5f5;
}

#crm-container table.report-layout th.statistics {
  width: 5%;
  white-space: nowrap;
}

/*override default pager for report*/
.crm-container .report-pager .crm-pager-nav a {
  color: #000000;
}

#crm-container table.view-layout {
  margin: 0;
  border-collapse: collapse;
  border: 0 none;
}

#crm-container table.view-layout .label {
  color: DimGray;
  font-size: 0.95em;
  vertical-align: top;
  font-weight: bold;
  margin-right: 10px;
  background-color: #eeeeee;
  width: 20%;
}

#crm-container th.contriTotalRight {
  border-right: 1px solid #999999;
}

#crm-container th.contriTotalLeft {
  border-left: 1px solid #999999;
}

/* TimeEntry styles */
.crm-container .timeEntry_control {
  vertical-align: middle;
  margin-left: 2px;
}
* html .timeEntry_control {
  /* IE only */
  margin-top: -4px;
}

.crm-container .ui-datepicker {
  width: 17em;
  padding: .2em .2em 0;
  z-index: 9999 !important;
}

/* Set/alter ICONS */

#crm-container .order-icon {
  height: 15px;
  width: 10px;
  padding-top: 4px;
  padding-right: 4px;
  display: inline-block;
}

/* crm button style */

.crm-container .crm-submit-buttons,
.crm-container .action-link {
  margin: 4px 0 4px 2px;
}
.crm-container .action-link {
  height: 27px;
}

.crm-container .register_link-top {
  float: right;
  margin-left: 8px;
}

.crm-container .crm-clear-link {
  margin-left: .5em;
}

.crm-container .crm-button-type-cancel,
.crm-container .crm-button-type-back {
  margin-left: 20px;
}

/* Reset WP backend min-height for buttons */

.wp-core-ui .crm-container .button {
  min-height: 0;
}

.crm-container a.button,
.crm-container a.button:link,
.crm-container a.button:visited,
.crm-container .ui-dialog-buttonset .ui-button,
.crm-container .crm-button {
  text-shadow: 0 1px 0 black;
  background: #696969;
  color: #fff;
  font-size: 13px;
  font-weight: normal;
  margin: 0 6px 0 0;
  padding: 2px 6px;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid #3e3e3e;
  display: inline-block;
  line-height: 135%;
  border-radius: 3px;
}

.crm-container .crm-button:hover,
.crm-container .crm-button:focus,
.crm-container .ui-dialog-buttonset .ui-button:hover,
.crm-container .ui-dialog-buttonset .ui-button:focus,
.crm-container a.button:hover,
.crm-container a.button:focus {
  background: #3e3e3e;
}

.crm-container .crm-button-disabled,
.crm-container .crm-button.crm-button-disabled,
.crm-container .ui-dialog-buttonset .ui-button[disabled],
.crm-container .crm-button[disabled] {
  opacity: .6;
  cursor: default;
}

.crm-container .ui-dialog-buttonpane {
  background: linear-gradient(to bottom, #f2f2f2 0%,#ffffff 35%);
}

.crm-container .ui-dialog-buttonset .ui-button .ui-icon {
  background-image: url("../i/icons/jquery-ui-FFFFFF.png");
}

/* Override of a line in crm-i.css that may not be important anymore */
.crm-container .ui-dialog-buttonset .ui-button .ui-icon[class*=" fa-"] {
  margin-top: 0;
}

/* No crm-button styling for PayPal Express buttons */
.crm-container input#_qf_Register_upload_express,
.crm-container input#_qf_Payment_upload_express,
.crm-container input#_qf_Main_upload_express {
  background: none;
  margin: 0;
  padding: 0;
  border: none;
}

/* create new XXX style (drupal block) */

#crm-participant-wrapper,
#crm-event-links-wrapper,
#crm-contribpage-links-wrapper,
#crm-create-new-wrapper {
  position: relative;
  float: left;
}

#crm-event-links-list,
#crm-contribpage-links-list,
#crm-create-new-list,
#crm-contact-actions-list,
#crm-participant-list {
  position: absolute;
  display: none;
  top: 24px;
  width: 220px;
  left: 0;
  z-index: 15;
}

#crm-create-new-list {
  width: 160px;
}

#crm-event-links-list .crm-event-info ul,
#crm-event-links-list .crm-event-test ul,
#crm-event-links-list .crm-event-live ul,
#crm-contribpage-links-list .crm-contribpage-contribution ul,
#crm-contribpage-links-list .crm-contribpage-test ul,
#crm-contribpage-links-list .crm-contribpage-live ul,
#crm-participant-list .crm-participant-counted ul,
#crm-participant-list .crm-participant-not-counted ul,
#crm-participant-list .crm-participant-listing ul,
#crm-create-new-list ul {
  width: auto;
  margin: 0;
  padding: 0;
}

/* setup for icons */

.ac_results ul li {
  background-image: url('');
}

.crm-container .ui-icon,
.crm-container .icon {
  background-image: url("../i/icons/jquery-ui-52534D.png");
}

.crm-container .icon {
  height: 16px;
  width: 16px;
  float: left;
  text-indent: -10000px;
}

.crm-container span.icon,
.crm-container a.ui-icon {
  float: none;
  display: inline-block;
}

.crm-container .button .icon,
.crm-container a.invoiceButton .icon,
.crm-container .crm-button .icon,
.crm-accordion-header .icon {
  position: relative;
  top: -2px;
  background-image: url("../i/icons/jquery-ui-FFFFFF.png");
}

.crm-container span.crm-button .icon {
  margin-top: 3px;
}

.crm-container .button .icon {
  float: left;
  display: block;
  margin-right: 3px;
  top: -1px;
}

.crm-container .button .icon.css_right {
  float: right;
  margin-right: 0;
  margin-left: 3px;
}

.crm-container .delete-icon {
  background-position: -176px -96px;
}
.crm-container .red-icon,
.crm-container a:hover .icon.delete-icon,
.crm-container .crm-button:hover .icon.ui-icon-trash,
.crm-container .crm-hover-button:hover .icon.ui-icon-trash,
.crm-container span:hover > .icon.delete-icon {
  background-image: url("../i/icons/jquery-ui-8A1F11.png");
}

/* Font Awesome */

.crm-container a .crm-i,
.crm-container a:link .crm-i,
.crm-container a:visited .crm-i,
.crm-container a:active .crm-i,
.crm-container a:hover .crm-i,
.crm-container a .ui-icon[class*=" fa-"],
.crm-container a:link .ui-icon[class*=" fa-"],
.crm-container a:visited .ui-icon[class*=" fa-"],
.crm-container a:active .ui-icon[class*=" fa-"],
.crm-container a:hover .ui-icon[class*=" fa-"] {
  color: inherit;
}

a.crm-i:hover {
  text-decoration: none;
}

.crm-container a:hover .crm-i.fa-trash,
.crm-container .crm-button:hover .crm-i.fa-trash,
.crm-container .crm-hover-button:hover .crm-i.fa-trash,
.crm-container span:hover > .crm-i.fa-trash,
.crm-i.crm-i-red {
  color: #8a1f11;
}

.crm-i.crm-i-blue {
  color: #6177d5;
}

.crm-i.crm-i-green {
  color: #86c661;
}

.crm-container a.helpicon {
  opacity: .8;
}

.crm-submit-buttons .helpicon {
  float: left;
  padding-right: 6px;
}

.crm-container  a.helpicon:hover,
.crm-container  a.helpicon:focus {
  opacity: 1;
}

/* Same as fa-question-circle */
.crm-container a.helpicon:before {
  content: "\f059";
}

details > summary a.helpicon {
  color: inherit;
}
div.crm-master-accordion-header a.helpicon {
  color: #2786c2;
}

/* These .crm-icon classes use item_sprites.png */

.crm-container .crm-icon {
  background-image: url('../i/item_sprites.png');
  margin: 2px 4px 0 0;
  text-indent: -10000px;
  /* for accessibility reason, put the name of the type/subtype in the icon div (it will be hidden and replaced by the icon) */
}

.select2-results .select2-highlighted .Individual-icon,
.crm-container .Individual-icon {
  background-position: 0 0;
}
.select2-results .select2-highlighted .Organization-icon,
.crm-container .Organization-icon {
  background-position: -48px 0;
}
.select2-results .select2-highlighted .Household-icon,
.crm-container .Household-icon {
  background-position: -32px 0;
}
.crm-container .Group-icon {
  background-position: -16px 0;
}
.select2-results .Individual-icon,
.crm-container .Individual-subtype-icon {
  background-position: 0 -48px;
}
.select2-results .Household-icon,
.crm-container .Household-subtype-icon {
  background-position: -32px -48px;
}
.select2-results .Organization-icon,
.crm-container .Organization-subtype-icon {
  background-position: -48px -48px;
}

.crm-container .Activity-icon {
  background-position: -64px 0;
}
.crm-container .Case-icon {
  background-position: -80px 0;
}
.crm-container .Grant-icon {
  background-position: 0 -16px;
}
.crm-container .Contribution-icon {
  background-position: -16px -16px;
}
.crm-container .Pledge-icon {
  background-position: -16px -16px;
}
.crm-container .Membership-icon {
  background-position: -32px -16px;
}
.crm-container .Participant-icon {
  background-position: 0 -32px;
}
.crm-container .Note-icon {
  background-position: -16px -32px;
}
.crm-container .Relationship-icon {
  background-position: -32px -32px;
}

/* accordion styles */

.crm-container .crm-accordion-header,
.crm-container .crm-collapsible .collapsible-title,
.crm-container span.collapsed,
.crm-container a.collapsed,
.crm-container .crm-expand-row {
  cursor: pointer;
}

.crm-container .crm-accordion-wrapper {
  margin-bottom: 4px;
}

/* Specific types of headers */

.crm-container details {
  margin: 0.25rem 0;
}

.crm-container summary { /* default summary setting*/
  display: list-item;
  list-style: none;
  cursor: pointer;
  font-size: 1rem;
  padding: 0.5rem;
  font-weight: bold;
}

.crm-container table summary { /* Makes summary match the size of the rest of the table it's in */
  font-size: inherit;
}

.crm-container summary::-webkit-details-marker { /* Safari fix to remove summary icon */
  display: none;
}

#crm-container .widget-content .crm-accordion-header {
  background-color: #efefe5;
  color: #080808;
}

.crm-container a.crm-expand-row:before,
.crm-container a.crm-expand-row:link::before,
.crm-container a.crm-expand-row:visited::before {
  color: #3e3e3e;
}

.crm-container details .crm-accordion-body {
  display: block; /* Fix for old JS trying to hide crm-accordion-body */
}

.crm-container .crm-accordion-header,
.crm-container .collapsed .crm-accordion-header,
.crm-container .crm-accordion-bold > summary,
.crm-container details > .crm-accordion-header { /* applies civi's default accordion header to summary & .crm-accrdion-bold */
  color: #f5f6f1;
  font-weight: normal;
  padding: 4px 8px;
  background-color: #5d677b;
  border-radius: 4px;
}

.crm-container div.crm-accordion-header,
.crm-container details[open] > .crm-accordion-header,
.crm-container .crm-accordion-bold[open] > summary { /* open version of that */
  border-radius: 4px 4px 0 0;
}

.crm-container .crm-accordion-header.active,
.crm-container .crm-accordion-bold > summary.active { /* active version of that */
  font-weight: bold;
  background-color: #3e3e3e;
}

.crm-container .crm-accordion-header:hover,
.crm-container .crm-accordion-header:focus,
.crm-container .crm-accordion-bold > summary:hover,
.crm-container .crm-accordion-bold > summary:focus { /* hover version of that */
  background-color: #2f2f2e;
}

#crm-container .widget-content .crm-accordion-header:hover {
  background-color: #e8e8de;
}

.crm-container .crm-accordion-wrapper .crm-master-accordion-header,
.crm-container .crm-accordion-light > summary { /* adds a utility class to match civi's transparent accordion header style */
  background-color: transparent;
  font-weight: normal;
  color: #3e3e3e;
}

.crm-container .crm-accordion-wrapper .crm-master-accordion-header {
  font-size: 16px;
}

.crm-container .crm-master-accordion-header.crm-accordion-header:hover,
.crm-container .crm-accordion-light > summary:hover,
.crm-container .crm-collapsible .collapsible-title:hover,
.crm-container .crm-master-accordion-header.crm-accordion-header:focus,
.crm-container .crm-accordion-light > summary:focus,
.crm-container .crm-collapsible .collapsible-title:focus { /* hover state for this */
  color: #121a2d;
}

.crm-container div.collapsed .crm-accordion-body,
.crm-container fieldset.collapsed .crm-accordion-body,
.crm-container .crm-collapsible.collapsed .collapsible-title + * {
  display: none;
}

/* Ex: Advanced Search (but not limited to) */
.crm-container details.crm-accordion-settings summary {
  text-align: right;
}
.crm-container details.crm-accordion-settings summary::before {
  content: '\f013';
}

.crm-container details details {
  padding: 0 0.25rem; /* adds padding for nested accordions */
}

.crm-container details table.dataTable {
  width: 100% !important; /* stops collapsed dataTables: dev/user-interface/-/issues/73 */
  box-sizing: border-box;
}

/* Collapse icon */

/* General icon settings for all collapsible things */
.crm-container div.crm-accordion-header:before,
.crm-container .collapsed div.crm-accordion-header:before,
.crm-container .crm-collapsible .collapsible-title:before,
.crm-container span.collapsed:before,
.crm-container a.collapsed:before,
.crm-container .crm-expand-row:before,
.crm-container details > summary:before {
  font-family: "FontAwesome";
  display: inline-block;
  padding-right: 0.5rem;
  content: "\f0da";
  font-size: 13px;
}

/* Expanded icon */
.crm-container div.crm-accordion-header:before,
.crm-container .crm-collapsible .collapsible-title:before,
.crm-container span.expanded:before,
.crm-container a.expanded:before,
.crm-container .crm-expand-row.expanded:before,
.crm-container details[open] > summary:before {
  font-family: "FontAwesome";
  content: "\f0d7";
}

/* Accordion bodies */

.crm-container .crm-accordion-wrapper .crm-accordion-body,
.crm-container details.crm-accordion-bold > .crm-accordion-body {
  border-radius: 0 0 4px 4px;
  border: 1px solid #70716b;
  border-top: 0;
  padding: 4px 0;
}

#crm-container .widget-content .crm-accordion-body {
  border-color: #e8e8de;
}

.crm-container .crm-master-accordion-header+.crm-accordion-body,
.crm-accordion-wrapper.crm-accordion-light {
  border: none;
  padding: 0;
}

#crm-container .widget-content .crm-accordion-body,
.crm-container .crm-accordion-body.padded,
.crm-container details.padded {
  padding-left: .5em;
  padding-right: .5em;
}

.crm-container .crm-child-row > td {
  padding-left: 1.8em;
}

/* Status message box */
.crm-status-box-outer {
  position: fixed;
  z-index: 99999;
  right: 0;
  top: 0;
}

.crm-status-box-outer.status-start {
  background: #f8ff03 url("../i/animated-overlay.gif");
}

.crm-status-box-outer .crm-status-box-inner {
  padding: 3px 14px;
  font-size: 13px !important;
  color: #eee;
  font-weight: bold;
  text-align: center;
  background: rgba(94, 91, 31, 0.9);
}

.crm-status-box-outer.status-success .crm-status-box-inner {
  background: rgba(30, 143, 36, 0.7);
}

.crm-status-box-outer.status-error .crm-status-box-inner {
  background: rgba(255, 7, 0, 0.7);
}

.crm-container .crm-summary-link {
  position: relative;
  z-index: 16;
}

.crm-container .crm-tooltip-wrapper {
  position: absolute;
  bottom: 0;
  left: -36px;
  overflow: hidden;
  z-index: 1000;
  padding-bottom: 10px;
  background: transparent url('../i/overlay-pointer.png') no-repeat bottom left;
  font-size: 13px;
  display: none;
}

.crm-container .crm-tooltip-down .crm-tooltip-wrapper {
  top: 20px;
  padding-top: 10px;
  background: transparent url('../i/overlay-pointer.png') no-repeat top left;
  overflow: visible;
}

.crm-container .crm-tooltip-active {
  z-index: 20;
}

.crm-container .crm-tooltip-active .crm-tooltip-wrapper {
  display: block;
}

.crm-container .crm-tooltip {
  padding: 4px;
  background-color: #2f2f2e;
  color: #fff;
  margin-left: 11px;
  min-width: 20px;
  min-height: 20px;
}
#crm-container .crm-tooltip table,
#crm-container .crm-tooltip table tr td {
  background-color: #2f2f2e;
  border: none;
  color: #fff;
  word-wrap: break-word;
}
.crm-container .crm-tooltip .crm-summary-group {
  width: 700px;
  margin-bottom: 0;
}

.crm-container .crm-tooltip .crm-report-overlay {
  width: 500px;
  margin-bottom: 0;
}

.crm-container .crm-tooltip .crm-report-overlay thead td {
  font-weight: bold;
}

.crm-container .crm-summary-group h2 {
  padding: 2px 4px 0 4px;
  font-size: 14px;
  color: #fff;
  margin-bottom: 0;
}

/* crm-summary-group appears outside crm-container for contact summary icon overlay */
.crm-container .crm-summary-group .crm-section .label {
  text-align: left;
  width: 40%;
  font-size: 11px;
  color: #a7a7a7;
  background-color: transparent;
}

.crm-container .crm-summary-group .crm-section .content {
  margin-left: 41%;
}

.crm-container .crm-tooltip table .crm-summary-col-1 {
  width: 350px;
}

.crm-container .crm-tooltip table .crm-summary-col-1 div {
  width: auto;
}

/* Class for tokens and helpicon */
.crm-container .helpIcon {
  float: right;
  position: relative;
  z-index: 1;
  margin-right: 45px;
}

#crm-container ul li {
  list-style-image: none;
}

/* privacy icons */
#crm-container div span.privacy-flag {
  float: right;
  font-size: 80%;
}

/* specific, targeted fixes */
#crm-container .dashboard-elements,
#crm-container #membership-listings,
#crm-container #premiums-listings,
#crm-container #searchForm table {
  margin: 0;
  border-collapse: collapse;
  border: 0 none;
}

/* ID selector is needed to override Drupal 2em margin-bottom on forms (we don't want to give up that space) */
div#crm-container form,
div.crm-container form {
  margin-bottom: 0;
}

/** DATATABLES **/
/*
 * jQuery UI specific styling
 */

.crm-container .paging_two_button .ui-button {
  float: left;
  cursor: pointer;
}

.crm-container .paging_full_numbers .ui-button {
  padding: 2px 6px;
  margin: 0;
  cursor: pointer;
}

.crm-container .dataTables_paginate .ui-button {
  margin-right: -0.1em !important;
}

.crm-container .paging_full_numbers {
  width: 350px !important;
}

.crm-container .dataTables_wrapper .ui-toolbar {
  padding: 5px;
}

.crm-container .dataTables_paginate {
  width: auto;
}

.crm-container .dataTables_info {
  padding-top: 3px;
}

.crm-container div.dataTables_wrapper .ui-widget-header {
  font-weight: normal;
}


/*
 * Sort arrow icon positioning
 */
.crm-container table.display thead th div.DataTables_sort_wrapper {
  position: relative;
  padding-right: 20px;
}

.crm-container table.display thead th div.DataTables_sort_wrapper span {
  position: absolute;
  top: 50%;
  margin-top: -8px;
  right: 0;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * DataTables features
 */

.crm-container .dataTables_wrapper {
  position: relative;
  clear: both;
  zoom: 1; /* Feeling sorry for IE */
}

.crm-container .dataTables_processing {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: url("../i/loading-overlay.gif") center center no-repeat white;
  opacity: 0.6;
  cursor: wait;
}

.crm-container .dataTables_length {
  width: 40%;
  float: none;
  padding-bottom: 5px;
}

.crm-container .dataTables_filter {
  width: 50%;
  float: right;
  text-align: right;
}

.crm-container .dataTables_info {
  width: 60%;
  float: left;
}

.crm-container .dataTables_paginate {
  float: right;
  text-align: right;
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * DataTables display
 */
.crm-container table.display {
  margin: 0 auto;
  clear: both;
  width: 100%;
}

.crm-container table.display thead th {
  padding: 3px 18px 3px 10px;
  border-bottom: 1px solid black;
  font-weight: bold;
  cursor: pointer;
}

.crm-container table.display thead th.sorting_disabled {
  cursor: default;
}

.crm-container table.display tfoot th {
  padding: 3px 18px 3px 10px;
  border-top: 1px solid black;
  font-weight: bold;
}

.crm-container table.display tr.heading2 td {
  border-bottom: 1px solid #aaa;
}

.crm-container table.display td {
  padding: 3px 10px;
}

.crm-container table td.center {
  text-align: center;
}
/* Fix weird color added to some datatables' sort column */
.crm-container table.dataTable.display tbody tr > td.sorting_1 {
  background-color: transparent;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * Datatables misc
 */
.crm-container .dataTables_scroll {
  clear: both;
}

.crm-container .dataTables_scrollBody {
  *margin-top: -1px;
  -webkit-overflow-scrolling: touch;
}

.crm-container .top .dataTables_info {
  float: none;
}

.crm-container .dataTables_empty {
  text-align: center;
}

.crm-container tfoot input {
  margin: 0.5em 0;
  width: 100%;
  color: #444;
}

/*  DataTables fixes */
.crm-container .crm-datatable-pager-top {
  padding-top: 5px;
  padding-bottom: 25px;
}
.crm-container .crm-datatable-pager-bottom {
  padding-top: 10px;
  padding-bottom: 25px;
}
.crm-container .crm-datatable-pager-top .dataTables_length {
  float: left;
}
.crm-container .css_right {
  float: right;
}

/* Date plugin */
.crm-container input.dateplugin,
.crm-container input.crm-form-date {
  width: 9em;
}

.crm-container input.crm-placeholder-icon::placeholder {
  font-family: "FontAwesome";
  text-align: right;
}
.crm-container input.crm-placeholder-icon::-ms-input-placeholder {
  font-family: "FontAwesome";
  text-align: right;
}
.crm-container input.crm-placeholder-icon:-ms-input-placeholder {
  font-family: "FontAwesome";
  text-align: right;
}

.crm-container div.batch-update {
  overflow: visible;
}

/*chart */
#chartData {
  overflow: auto;
}

#crm-container .signature {
  width: 495px;
}

/* editor skin tweaks */

#crm-container span.cke_skin_kama {
  border: none;
}
#crm-container .cke_skin_kama .cke_wrapper {
  background-image: none;
}

/* skin */

#crm-container .crm-title {
  line-height: 1.1;
  margin-bottom: 8px;
}

/* tables */
.crm-container table {
  position: relative;
  border: 1px solid #efefef;
}

.crm-container .crm-form-block table {
  border: none;
}
.crm-container tr.even,
.crm-container tr.odd,
.crm-container tbody th {
  border-color: #fff #fff #efefef #fff;
}

.crm-container tr.even-row td,
.crm-container tr.odd-row td,
.crm-container table.display td,
.crm-container table.pagerDisplay td {
  border-color: #efefef;
  border-right: 1px solid #efefef;
  border-collapse: collapse;
}
.crm-container .odd-row,
.crm-container .odd,
tbody.scrollContent {
  background-color: #fafafa;
}
.crm-container .even-row,
.crm-container .even,
tbody.scrollContent tr.alternateRow {
  background-color: #efefef;
}

.crm-container td.checkbox {
  vertical-align: middle;
  text-align: center;
}
.crm-container tr.columnheader a.sorting {
  color: #a7a7a7;
}

.crm-container a.sorting,
.crm-container a.sorting_desc,
.crm-container a.sorting_asc {
  color: #a7a7a7;
  background: url("../bower_components/datatables/media/images/sort_both.png") no-repeat left center;
  padding-left: 20px;
}
.crm-container a.sorting_desc,
.crm-container a.sorting_asc {
  color: #000;
}

.crm-container tr a.sorting,
.crm-container tr a.sorting_asc,
.crm-container tr a.sorting_desc {
  color: #52534d;
}

.crm-container table thead a.sorting_asc {
  background: url("../bower_components/datatables/media/images/sort_asc.png") no-repeat left center;
}
.crm-container table thead a.sorting_desc {
  background: url("../bower_components/datatables/media/images/sort_desc.png") no-repeat left center;
}
.crm-container table thead a.sorting_asc_disabled {
  background: url("../bower_components/datatables/media/images/sort_asc_disabled.png") no-repeat left center;
}
.crm-container table thead a.sorting_desc_disabled {
  background: url("../bower_components/datatables/media/images/sort_desc_disabled.png") no-repeat left center;
}

/* Otherwise for some reason we have 2 sort icons */
.crm-container th.sorting .DataTables_sort_icon {
  display: none;
}

/*contact summary page */
#crm-container div.contact_details {
  background-color: transparent;
}

.crm-container table.crm-info-panel td {
  border-bottom: 1px solid #fff;
}

.crm-container table.crm-info-panel .label {
  color: #2f2f2f;
  font-weight: normal;
}

.crm-container .disabled,
.crm-container .crm-disabled,
.crm-container .disabled *,
.crm-container .cancelled,
.crm-container .cancelled td,
.crm-container li.disabled a.ui-tabs-anchor,
.crm-container li.crm-count-0 a.ui-tabs-anchor,
.crm-container li.crm-count-0 a.ui-tabs-anchor em {
  color: #999999 !important;
}

#crm-container tr.crm-job {
  text-decoration: none !important;
}

.crm-container table.selector td {
  border-right: 1px dotted #dddddd;
}

.crm-container div.contact_panel td,
.crm-container table.crm-info-panel td {
  background-color: #f4f4ed;
}

.crm-container div.contact_panel td.label,
.crm-container #customFields div.contact_panel td.label,
.crm-container table.crm-info-panel td.label {
  background-color: #fafafa;
  width: 120px;
  text-align: left;
  color: #7a7a60;
}
.crm-container table.crm-info-panel td.label {
  width: 150px;
}

.crm-container .form-layout td.label,
.crm-container .form-layout-compressed td.label {
  width: 150px;
  text-align: right;
  color: #7a7a60;
}

.crm-container .form-layout td.label,
.crm-container form table.report .label,
.crm-container form table label,
.crm-container form table.report label,
.crm-container .form-layout-compressed tr[role="radiogroup"] td.label,
.crm-container .form-layout tr[role="radiogroup"] td.label,
.crm-container #customFields div.contact_panel tr[role="radiogroup"] td.label {
  color: #3e3e3e;
}

.crm-container a.crm-icon-picker-button {
  min-width: 10em;
  text-align: inherit;
  color: #3e3e3e;
}

.crm-container a.crm-icon-picker-button .ui-button-icon {
  margin: 5px 0 5px 5px;
}

.crm-container a.crm-icon-picker-button .ui-button-text {
  color: #9f9f9f;
}

.crm-container a.crm-icon-picker-button.ui-button-text-only .ui-button-text {
  padding: .4em .2em;
}

/* search results */
.crm-container .crm-search-tasks,
.crm-container .crm-tasks {
  background-color: #f0f0e8;
  color: #52534d;
}

#crm-container .crm-tasks table {
  margin: 0;
}

.crm-container .crm-results-block {
  position: relative;
}

/* warning labels and messages */
.crm-container del,
.crm-container .crm-is_deleted,
.crm-container table.caseSelector td.status-urgent,
.crm-container .font-red,
.crm-container .status-removed,
.crm-container .status-overdue,
.crm-container .status-fatal,
.crm-container .status-hold,
.crm-container .status-past,
.crm-contact-deceased,
.crm-container .status-warning {
  color: #e43d2b !important;
}

/* rounded corners */
.crm-container div.status,
.crm-container #help,
.crm-container .help,
.crm-container .ui-tabs-panel,
.crm-container .crm-content-block,
#full-screen-header,
.crm-container .crm-pager,
.crm-container form .section-hidden-border,
.crm-container #search-status,
.crm-container .crm-form-block,
.crm-container .crm-search-tasks,
.crm-container .crm-tasks,
.crm-container div.form-item,
.crm-container div.messages {
  border-radius: 4px;
}

/* deprecated autocomplete styles */

.ac_results {
  background: transparent url(../i/dropdown-pointer.gif) no-repeat 25px 1px;
  padding-top: 5px;
  border: none;
  text-align: left;
}

.ac_results-inner,
.crm-participant-list-inner,
.crm-event-links-list-inner,
.crm-contribpage-links-list-inner,
.crm-contact-actions-list-inner {
  background-color: #2f2f2e;
  padding: 4px;
}

.crm-create-new-list-inner,
.crm-create-new-list-inner ul {
  width: 160px!important;
}

.ac_results li a {
  display: block;
}

.crm-container .ac_results li,
.crm-container .ac_results li a,
.crm-container .ac_results li a:visited {
  color: #dfdfdf;
  text-decoration: none;
}

.ac_results li strong {
  color: #fff;
  font-weight: normal;
}

.crm-container .ac_results li .icon,
.crm-container .ac_results li a .icon,
.crm-container .ac_results li a:visited .icon {
  background-image: url(../i/icons/jquery-ui-FFFFFF.png);
}

.crm-container .ac_results li a:hover .icon {
  background-image: url(../i/icons/jquery-ui-3E3E3E.png);
}

.ac_results li:hover,
.ac_results li:hover a,
.ac_results li a:hover {
  background-color: #f5f6f1;
  color: #666;
}
.crm-container .ac_results li:hover strong {
  color: #000;
}

/* loader autocomplete */

.crm-container .ui-autocomplete-loading {
  background: white url('../i/loading.gif') no-repeat right center;
}

/* select2 */
.crm-container div.select2-container {
  min-width: 6em;
  font-size: 11px;
}
/* Add arrow icon to multi-selects */
.crm-container .select2-container-multi .select2-choices:before {
  background: url("../bower_components/select2/select2.png") no-repeat scroll 0 -4px;
  content: "";
  display: block;
  height: 15px;
  position: absolute;
  right: 0;
  top: 5px;
  width: 20px;
}
/* Add search icon to ajax multi-selects and opened multi-selects */
.crm-container .select2-container-multi.select2-container-active .select2-choices:before,
.crm-container .select2-container-multi.crm-ajax-select .select2-choices:before {
  background-position: right -26px;
}
.crm-container .select2-container.select2-container-disabled .select2-choice .select2-arrow b {
  visibility: hidden;
}
.crm-container .select2-container-multi.loading .select2-choices:before,
.crm-container .select2-container.loading .select2-choice .select2-arrow b {
  background: url('../i/loading.gif') no-repeat center center !important;
  visibility: visible;
}
/* Reduce select2 size to match other inputs */
.crm-container .select2-container-multi .select2-choices {
  min-height: 25px;
}
.crm-container .select2-container-multi .select2-choices .select2-search-choice {
  padding: 2px 5px 2px 18px;
}
.crm-container .select2-container-multi .select2-choices .select2-search-field input {
  padding: 4px;
  min-height: unset;  /* Overide style imposed by WordPress 5.3 - see https://lab.civicrm.org/dev/wordpress/issues/46 */
}
.crm-container .select2-search-choice-close {
  top: 2px;
}
.crm-container .select2-container .select2-choice abbr {
  top: 6px;
}
.crm-container .select2-container .select2-choice > .select2-chosen {
  font-size: 1.1em;
}
/* Add search icon to ajax single-selects */
.crm-container .crm-ajax-select .select2-arrow b {
  background-position: -39px -22px;
}
/* Restore normal icon when searchable field is open */
.crm-container .select2-dropdown-open .select2-choice .select2-arrow b {
  background-position: -18px 1px;
}
.select2-drop .crm-entityref-links {
  border-top: 1px solid #d3d3d3;
  margin-top: 9px;
}
.select2-drop .crm-entityref-links a.crm-hover-button {
  white-space: nowrap;
}
.select2-drop .crm-entityref-filters {
  margin-top: 4px;
}
.select2-drop .crm-entityref-filters select,
.select2-drop .crm-entityref-filters input {
  border-radius: 3px;
  border: 1px solid #f2f2f2;
  background-color: #f6f6f6;
  color: #494949;
  font-size: 11px;
  max-width: 60%;
}
.select2-drop .crm-entityref-filters select:hover,
.select2-drop .crm-entityref-filters select:focus,
.select2-drop .crm-entityref-filters select.active,
.select2-drop .crm-entityref-filters input {
  border: 1px solid #808080;
}
.select2-drop .crm-entityref-filter-value {
  margin-left: 1em;
}
.select2-drop .crm-entityref-filters input {
  padding-left: .5em;
  background-color: #fefefe;
}
/* Style autocomplete results */
.crm-container .select2-results {
  font-size: 12px;
  padding: 0;
  text-align: left;
}
.crm-container .select2-results li,
.crm-container .select2-results .crm-select2-row,
.crm-container .select2-results .crm-select2-row-description p {
  padding: 0;
  margin: 0;
}
.crm-container .select2-results .crm-select2-row .crm-select2-row-label {
  font-size: 1.1em;
}
.crm-container .select2-results .crm-select2-row-description p {
  font-size: 0.8em;
  line-height: 1.5em;
  color: #696969;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: normal;
}
.crm-container .select2-results .select2-highlighted > .select2-result-label .crm-select2-row-description p {
  color: #f0f0f0;
}
.select2-container .crm-select2-row-description {
  display: none;
}
.crm-container .select2-results .crm-select2-icon {
  width: 20px;
  height: 100%;
  float: left;
}
.crm-container .select2-results .crm-select2-icon .crm-icon {
  width: 16px;
  height: 16px;
  margin: 0;
}
.crm-container .select2-results li.select2-no-results {
  padding-left: 4px;
  padding-top: 4px;
  margin-left: 4px;
}
.crm-container .select2-results li {
  margin: 0;
  padding: 0;
}
.crm-container .crm-action-menu .select2-default span.select2-chosen {
  color: #2786c2;
}
.crm-container .select2-container[class*=" fa-"]:before {
  display: none;
}
.crm-container .select2-results .select2-result.select2-disabled > .select2-result-label {
  opacity: .6;
  cursor: default;
}

/* Restore this property otherwise our css overrides it */
.select2-search input {
  box-sizing: border-box;
}

/* Collapsible optgroups for select2 */
div.select2-drop.collapsible-optgroups-enabled .select2-result-with-children:not(.optgroup-expanded) > .select2-result-sub > li.select2-result {
  display: none;
}
div.select2-drop.collapsible-optgroups-enabled .select2-result-with-children > .select2-result-label:before {
  font-family: FontAwesome;
  content: "\f0da";
  display: inline-block;
  padding-right: 3px;
  vertical-align: middle;
  font-weight: normal;
}
div.select2-drop.collapsible-optgroups-enabled .select2-result-with-children.optgroup-expanded > .select2-result-label:before {
  content: "\f0d7";
}

span.crm-select-item-color {
  display: inline-block;
  width: .8em;
  height: .7em;
  border-radius: 2px;
  border: 1px solid grey;
}

/* jQuery UI styles */
.crm-container .ui-progressbar-value {
  background-image: url("../packages/jquery/css/images/pbar-ani.gif");
}

.crm-container.ui-dialog {
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
}
.crm-container.ui-dialog.ui-resizable:before {
  display: block;
  content: " ";
  width: 16px;
  height: 16px;
  background: url("../i/icons/jquery-ui-52534D.png") no-repeat -80px -224px;
  position: absolute;
  bottom: 0;
  right: 0;
}
.crm-container .ui-dialog-titlebar.ui-widget-header {
  background: #5d677b;
  color: #f5f6f1;
}
.crm-container .ui-dialog-title {
  background: url("../i/item_sprites.png") no-repeat scroll -79px -47px;
  margin-left: -5px;
  padding-left: 25px;
}
.crm-container .ui-dialog-titlebar .ui-button {
  background-color: transparent;
  background-image: none;
  border: 1px none;
  color: inherit;
}
.crm-container .ui-dialog-titlebar .ui-button:hover {
  background-color: #cdcdcd;
  color: #555;
}

/* unset the styling for the li in jstree */
#tagtree ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}

/* table row highlightng */
.crm-container .crm-row-ok {
  background-color: #efffe7;
  border-bottom: 1px solid #ccc;
}
.crm-container .crm-row-error {
  background-color: #ffecec;
  border-bottom: 1px solid #ccc;
}
.crm-container table.row-highlight tr:hover,
.crm-container .crm-row-selected {
  background-color: #ffffcc;
}
.crm-container table.row-highlight tr.even-row:hover,
.crm-container table.row-highlight tr.even:hover,
.crm-container .even-row.crm-row-selected,
.crm-container .even.crm-row-selected {
  background-color: #fffdb2;
}

#crm-container .crm-socialnetwork {
  margin-top: 1em;
}

#crm-container .crm-fb-tweet-buttons {
  width: 93%;
}

/* Checkbox groups */
.crm-container ul.crm-checkbox-list {
  list-style: none;
  margin: 0;
  padding: 0;
  background-color: white;
  border: 1px solid #a5a5a5;
  width: 300px;
  max-width: 100%;
  max-height: 300px;
  overflow-y: auto;
}
.crm-container ul.crm-checkbox-list li {
  position: relative;
  margin: 0;
  padding: 0;
}
.crm-container ul.crm-checkbox-list li input {
  position: absolute;
  left: 5px;
  top: 4px;
}
.crm-container ul.crm-checkbox-list li label {
  display: block !important;
  padding: 2px 0 2px 22px;
  margin: 0;
  word-break: break-all;
}
.crm-container ul.crm-checkbox-list li:nth-child(even) label {
  background-color: #fafafa;
}
.crm-container ul.crm-checkbox-list li input:checked + label {
  background-color: #ffffcc;
}
.crm-container ul.crm-checkbox-list li:nth-child(even) input:checked + label {
  background-color: #fffdb2;
}

.crm-container ul.crm-sortable-list li label {
  padding-left: 40px;
  cursor: move;
}
.crm-container ul.crm-sortable-list li label:after {
  display: block;
  font-family: "FontAwesome";
  content: "\f047";
  position: absolute;
  left: 4px;
  top: 2px;
  font-size: 10px;
  color: grey;
}
.crm-container ul.crm-sortable-list li:hover label:after {
  color: inherit;
}
.crm-container ul.crm-checkbox-list.crm-sortable-list li input {
  left: 23px;
}
/* Checkbox/radio fields with n-per-line. See https://lab.civicrm.org/dev/core/-/issues/4985 */
.crm-container .crm-multiple-checkbox-radio-options {
  --gap: 1em;
  --checkbox-width: 2em;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
}
/* Reset checkbox width when its rendered as text '(x)' in confirmation screens /dev/core/-/issues/5550 */
.crm-container.crm-public .crm-profile-view .crm-option-label-pair {
  --checkbox-width: auto;
}
/* Override more general styling */
.crm-container .crm-multiple-checkbox-radio-options :where(input.crm-form-radio,
input.crm-form-checkbox) + label {
  margin-left: 0;
}
.crm-container .crm-multiple-checkbox-radio-options .crm-option-label-pair {
  display: grid;
  grid-template-columns: var(--checkbox-width) 1fr;
  align-items: baseline;
}
.crm-container .crm-multiple-checkbox-radio-options.crm-options-per-line .crm-option-label-pair {
  flex: 0 0 calc((100% - (var(--crm-opts-per-line) - 1) * var(--gap)) / var(--crm-opts-per-line));
}

/* classes related to batch entry operation */
.crm-container span.batch-edit,
.crm-container span.batch-valid,
.crm-container span.batch-invalid {
  padding: 2px 9px 2px 3px;
  margin: 2px 2px 3px 2px;
  cursor: pointer;
  background-position: -66px -114px;
  background-image: url("../i/icons/jquery-ui-3E3E3E.gif");
}

.crm-container span.batch-valid {
  background-position: -322px -143px;
}

.crm-container span.batch-invalid {
  background-position: -258px -143px;
}

.crm-container #Entry ul#errorList {
  display: none;
}

.crm-container table.batch-totals {
  border: 1px solid #7a7a60 !important;
  margin-top: 10px !important;
}

/* grid div as table */
.crm-container .crm-grid-table {
  display: table;
  border-collapse: collapse;
  border: 1px solid #7a7a60;
  background-color: #ffffff;
  margin: 10px 3px 10px !important;
}

.crm-container .crm-batch-entry-table {
  border-right: 2px solid #7a7a60 !important;
}

.crm-container .crm-grid-row,
.crm-container .crm-grid-header {
  display: table-row;
}

.crm-container .crm-grid-header {
  white-space: nowrap;
}

.crm-container .crm-grid-cell {
  display: table-cell;
  border-right: 1px solid #efefef;
  padding: 2px;
  vertical-align: top;
}

/* editable placeholder containers - share some styles with crm-editable below */
.crm-container .replace-plain,
.crm-container textarea,
.crm-container select.crm-form-multiselect {
  border: 1px solid #999;
}

.crm-container .replace-plain {
  cursor: pointer;
  background: rgba(255,255,255,0.6);
  min-height: 1.4em;
  position: relative;
  padding: .4em 1.5em .3em .4em;
}

.crm-container .replace-plain p {
  padding: .2em 0;
  margin: 0;
}

.crm-container .replace-plain:focus,
.crm-container .replace-plain:hover {
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
  background: rgba(255,255,255,0.8);
}

.crm-container .replace-plain:before {
  content: "\f040";
  position: absolute;
  top: .4em;
  right: .5em;
  opacity: .5;
}

/* in place edit  */
.crm-container .crm-editable-disabled,
.crm-container .crm-editable-enabled {
  padding-left: 2px;
  border: 2px dashed transparent;
}
.crm-container .crm-editable-textarea-enabled {
  white-space: normal;
}

.crm-container .crm-editable-enabled:hover {
  border: 2px dashed #d1d1d1;
  cursor: pointer;
}

.crm-container .crm-editable-enabled.crm-editable-editing:hover {
  border: 2px dashed transparent;
  cursor: auto;
}

.crm-container span.crm-editable-textarea-enabled {
  width: 96%;
}
.crm-container span.crm-editable-disabled,
.crm-container span.crm-editable-enabled {
  display: inline-block !important;
  padding-right: 2px;
  min-height: 1em;
  min-width: 3em;
}

.crm-container .crm-editable-enabled .crm-i {
  opacity: .5;
}

.crm-container .replace-plain a:active:before,
.crm-container .replace-plain:focus:before,
.crm-container .replace-plain:hover:before,
.crm-container .crm-editable-enabled:hover .crm-i {
  opacity: 1;
}

.crm-container .crm-editable-saving {
  background: #ffffcc!important;
  opacity: 0.8;
}

.crm-container h2.crm-editable-enabled input {
  min-height: 1.4em;
}
.crm-container .crm-editable-textarea-enabled textarea {
  min-height: 5em;
}

.crm-editable-form {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  position: relative;
  overflow: visible;
}

.crm-editable-form input,
.crm-editable-form textarea {
  margin-bottom: 0;
  padding-bottom: 0;
}

.crm-editable-form button {
  position: absolute;
  bottom: -22px;
  left: 0;
  text-align: center;
  height: 23px;
  width: 32px;
  z-index: 1;
}

.crm-editable-form button[type=cancel] {
  left: 32px;
}

/*crm-10345*/
.crm-container .field-action {
  word-wrap: normal;
}

.crm-container .field-action span.btn-slide {
  padding-left: 0;
  padding-right: 11px;
}
/*end crm-10345*/

/* alter display of parent and child groups in Manage Groups selector */
#crm-container .crm-group-parent td.crm-group-name {
  padding-left: 20px;
  text-indent: -20px;
}

#crm-container .crm-group-child td.crm-group-name.level_2 {
  padding-left: 40px;
  text-indent: -20px;
}
#crm-container .crm-group-child td.crm-group-name.level_3 {
  padding-left: 60px;
  text-indent: -20px;
}
#crm-container .crm-group-name span.crm-editable-enabled {
  text-indent: 0;
}

#crm-container div.crm-row-parent-name {
  padding: 3px 0 0 .5em;
  opacity: 0.75;
}
#crm-container td span.show-children,
#crm-container td span.crm-no-children {
  padding-left: 20px;
}

/* Notifications */
#crm-notification-container {
  width: 350px;
  position: fixed;
  top: 45px;
  right: 15px;
  z-index: 999999;
}
#crm-notification-container div.ui-notify-message {
  padding: 10px;
  margin-bottom: 15px;
  color: #fff;
  border-radius: 8px;
  max-height: 600px;
  overflow: auto;
}
#crm-notification-container div.ui-notify-message h1 {
  font-size: 14px;
  margin: 0;
  padding: 4px;
  font-weight: bold;
  color: #fff;
}
#crm-notification-container div.ui-notify-message p {
  margin: 3px 0;
  padding: 0;
  line-height: 18px;
}
#crm-notification-container div.ui-notify-message:last-child {
  margin-bottom: 0;
}
#crm-notification-container div.ui-notify-message-style {
  background: rgba(0,0,0,0.8);
  box-shadow: 0 0 6px #000;
}
.crm-container div.ui-notify-message-style a,
.crm-container div.ui-notify-message-style a:link {
  color: #ccd0ff;
  text-decoration: underline;
}
.crm-container div.ui-notify-message-style a:hover,
.crm-container div.ui-notify-message-style a:focus {
  color: #b2b8ff;
}
.crm-container div.ui-notify-message-style .ui-button .ui-button-text {
  color: #2f2f2f;
  text-decoration: none;
}
#crm-notification-container .ui-notify-message .ui-notify-close {
  cursor: pointer;
}
#crm-notification-container .ui-notify-message a.ui-notify-cross {
  margin-top: -4px;
  float: right;
  text-decoration: none;
  font-size: 13px;
  font-weight: bold;
  text-shadow: 0 1px 1px #fff;
  padding: 2px;
  color: #fdfdfd;
}
#crm-notification-container .ui-notify-message .ui-notify-cross:hover,
#crm-notification-container .ui-notify-message .ui-notify-cross:focus {
  color: #ffffab;
}
.crm-container div.ui-notify-message table,
.crm-container div.ui-notify-message tbody,
.crm-container div.ui-notify-message tr {
  border: 0 none;
  font-size: 11px;
}
.crm-container div.ui-notify-message table {
  margin: 10px 0;
}
.crm-container div.ui-notify-message td {
  background: rgba(255,255,255,0.1);
  border: 1px solid #111;
  font-size: 11px;
  color: #fff;
}
.crm-container div.ui-notify-message th {
  background: rgba(200,200,200,0.2);
  border: 1px solid #111;
  color: #eee;
  font-size: 11px;
}
.crm-container div.ui-notify-message table a.action-item {
  margin-right: 5px;
}
.crm-container div.ui-notify-message ul,
.crm-container div.ui-notify-message ol {
  margin: 0.5em 0 1em;
  padding: 0 0 0 0.5em;
}

.crm-container div.ui-notify-message div.icon,
.crm-status-icon {
  background: transparent url("../i/message-icons.png") no-repeat 0 0;
  width: 24px;
  height: 24px;
  margin-right: 6px;
}
.crm-container div.ui-notify-message.success div.icon,
.crm-status-icon.success {
  background-position: -24px 0;
}
.crm-container div.ui-notify-message.info div.icon,
.crm-status-icon.info {
  background-position: -48px 0;
}
.crm-container div.ui-notify-message.error div.icon,
.crm-status-icon.error {
  background-position: -72px 0;
}
.crm-container div.ui-notify-message.none div.icon {
  display: none;
}

span.crm-status-icon {
  display: inline-block;
}

/* Public Pages */

#crm-container.crm-public input[type="text"],
#crm-container.crm-public input[type="password"],
#crm-container.crm-public input[type="email"],
#crm-container.crm-public select {
  font-size: 15px;
  padding: 5px;
  border-radius: 3px;
  vertical-align: middle;
  max-width: 100%;
}

#crm-container.crm-public .label,
#crm-container.crm-public .price-field-amount {
  padding-top: 6px;
  font-size: 15px;
}

.crm-container.crm-public .select2-container,
.crm-container.crm-public .select2-results {
  font-size: 14px;
}
.crm-container.crm-public .select2-container * {
  box-sizing: content-box;
}
.crm-container.crm-public .select2-container .select2-choice {
  padding: 5px 5px 5px 8px;
}
.crm-container.crm-public .select2-container-multi .select2-choices {
  padding: 4px;
}
.crm-public .select2-container .select2-choice .select2-arrow {
  width: 20px;
}
.crm-public .select2-container .select2-choice .select2-arrow b {
  position: relative;
  top: 2px;
  left: 2px;
}
.crm-container.crm-public .select2-container-multi .select2-choices .select2-search-choice {
  padding: 3px 3px 3px 20px;
}
.crm-container.crm-public .select2-container-multi .select2-choices:before {
  top: 9px;
}

.crm-public .crm-profile-view .content {
  padding-top: 6px;
}

#crm-container.crm-public .calc-value,
#crm-container.crm-public .content {
  padding-top: 6px;
  font-size: 15px;
}

#crm-container.crm-public .crm-section,
.crm-section {
  margin-bottom: 0;
}

#crm-container.crm-public #crm-submit-buttons {
  margin-top: 30px;
}

#crm-container.crm-public #premiums-listings {
  margin-top: 10px;
  min-width: 450px;
  width: 60%;
}

#crm-container.crm-public #premiums-listings .premium {
  margin: 5px 0;
}

#crm-container.crm-public #premiums-listings .premium .premium-short {
  padding: 10px;
  border: 2px solid #ffffff;
  background-color: #f0f0f0;
  cursor: pointer;
}

#crm-container.crm-public #premiums-listings .premium .premium-short:hover {
  border: 2px solid #b0b0b0;
}

#crm-container.crm-public #premiums-listings .premium .premium-short-thumbnail {
  float: left;
  width: 50px;
}

#crm-container.crm-public #premiums-listings .premium .premium-short-thumbnail img {
  width: 50px;
}

#crm-container.crm-public #premiums-listings .premium .premium-short-content {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  padding: 20px;
}

#crm-container.crm-public #premiums-listings .premium .premium-full {
  display: none;
  padding: 5px;
  border: 2px solid #cfcfcf;
  background-color: #ffffff;
}

#crm-container.crm-public #premiums-listings .premium .premium-full .premium-full-image {
  float: left;
  width: 200px;
  padding: 10px;
}

#crm-container.crm-public #premiums-listings .premium .premium-full .premium-full-image img {
  width: 200px;
}

#crm-container.crm-public #premiums-listings .premium .premium-full .premium-full-title {
  text-align: center;
  font-size: 1.5em;
  font-weight: bold;
  padding: 20px;
}

#crm-container.crm-public #premiums-listings .premium .premium-full .premium-full-min {
  font-size: .9em;
  font-style: italic;
}

#crm-container.crm-public #premiums-listings .premium.premium-no_thanks .premium-short {
  text-align: center;
  font-size: 1.3em;
  padding: 10px;
}

#crm-container.crm-public #premiums-listings .premium.premium-no_thanks .premium-full {
  text-align: center;
  font-size: 1.3em;
  font-weight: bold;
  padding: 10px;
}

#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-short,
#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-full .premium-full-image,
#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-full .premium-full-title,
#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-full .premium-full-description,
#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-full .premium-full-options,
#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-full .premium-full-min {
  opacity: 0.5;
}
#crm-container.crm-public #premiums-listings .premium .premium-full-disabled {
  display: none;
}
#crm-container.crm-public #premiums-listings .premium.premium-disabled .premium-full-disabled {
  display: block;
  color: #ff0000;
  text-align: center;
  font-weight: bold;
  margin-bottom: .5em;
}

#crm-container.crm-public .price-set-row {
  font-size: 15px;
  margin-bottom: 5px;
}

#crm-container.crm-public .price-set-row input,
#crm-container.crm-public .price-set-row label {
  vertical-align: middle;
  cursor: pointer;
}

#crm-container.crm-public .price-set-row .crm-price-amount-amount {
  min-width: 2em;
  color: #333333;
}

#crm-container.crm-public .price-set-row .crm-price-amount-label {
  color: #444444;
}

#crm-container.crm-public .price-set-row .highlight label {
  color: #000000;
  font-weight: bold;
}

#crm-container.crm-public .price-set-row .highlight .crm-price-amount-label {
  color: #222222;
}

#crm-container.crm-public .price-set-option-content > tt {
  display: none;
}

#crm-container .sold-out-option,
#crm-container .price-set-row span.sold-out-option .crm-price-amount-label,
#crm-container .price-set-row span.sold-out-option .crm-price-amount-amount {
  font-style: italic !important;
  font-weight: normal !important;
  font-size: 15px;
  color: #666 !important;
}

/* Styles for credit card payment logos */
.crm-container .credit_card_type-section .crm-credit_card_type-icons a {
  display: block;
  float: left;
  width: 50px;
  height: 30px;
  background: url(../i/creditcard-icons.png) no-repeat 0 0 transparent;
  text-indent: -20000px;
  margin-right: 10px;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
  border-radius: 3px;
  border: 1px solid #ffffff;
}

.crm-container .credit_card_type-section .crm-credit_card_type-icons .crm-credit_card_type-icon-visa {
  background-position: -50px 0;
}

.crm-container .credit_card_type-section .crm-credit_card_type-icons .crm-credit_card_type-icon-mastercard {
  background-position: -100px 0;
}

.crm-container .credit_card_type-section .crm-credit_card_type-icons .crm-credit_card_type-icon-amex {
  background-position: -150px 0;
}

.crm-container .credit_card_type-section .crm-credit_card_type-icons .crm-credit_card_type-icon-discover {
  background-position: -200px 0;
}

.crm-container .credit_card_type-section .crm-credit_card_type-icons .crm-credit_card_type-icon-jcb {
  background-position: -250px 0;
}

.crm-container .credit_card_type-section .crm-credit_card_type-icons .crm-credit_card_type-icon-unionpay {
  background-position: -300px 0;
}

.crm-container .cvv2-icon {
  display: inline-block;
  width: 50px;
  height: 30px;
  background: url(../i/creditcard-icons.png) no-repeat 0 0 transparent;
}

/* Avoid weird border around the images (some themes will add a border around images) */
#crm-container .credit_card_type-section .crm-credit_card_type-icons a,
#crm-container .credit_card_type-section .crm-credit_card_type-icons a:link,
#crm-container .credit_card_type-section .crm-credit_card_type-icons a:hover,
#crm-container .credit_card_type-section .crm-credit_card_type-icons a:focus,
#crm-container .credit_card_type-section .crm-credit_card_type-icons a:active {
  color: #fff;
}

.crm-container .strikethrough {
  text-decoration: line-through !important;
}

.crm-container input.ng-invalid.ng-dirty,
.crm-container select.ng-invalid.ng-dirty,
.crm-container textarea.ng-invalid.ng-dirty {
  border: 1px solid red;
}
.crm-container input.ng-valid,
.crm-container input.ng-pristine,
.crm-container textarea.ng-valid,
.crm-container textarea.ng-pristine,
.crm-container select.ng-valid,
.crm-container select.ng-pristine {
  border: 1px solid #666;
}

/* block-ui */
.crm-container .blockUI.blockOverlay {
  background: url("../i/loading-overlay.gif") center center no-repeat white !important;
}

.crm-container table.mergecontact thead th {
  width: 30%;
}
.crm-container .crm-ui-datetime.ng-dirty input.incomplete {
  border: 1px solid red;
}

.crm-container .crm-grip {
  cursor: move;
}

.crm-tag-item {
  display: inline-block;
  padding: 1px 5px;
  border-radius: 3px;
  border: 1px solid grey;
}

/* Dedupe rules */
.crm-dedupe-rules-form-block-used div {
  max-width: 800px;
}
.crm-dedupe-rules-form-block-used p:first-child {
  margin-top: 0;
}
.dedupe-rules-dialog [type=radio] {
  margin-top: 4px;
}
.dedupe-rules-dialog p:first-child {
  margin-top: 0;
}
.dedupe-rules-dialog input[type=radio] {
  float: left;
}
.dedupe-rules-dialog label > * {
  margin-left: 30px;
}


/* Standalone-only styles. A minimal set to make it usable out-of-the-box. */
html.crm-standalone body {
  margin: 0;
  padding: 0;
  font-family: var(--crm-font, sans-serif);
  background-color: var(--crm-c-page-background, #f8f8f8);
}
