

/*--------------- Bootstrap related ----------------------------*/
/* bs override */
body
{
  color: #000;
}

label
{
  margin-bottom: .25rem;
}

span.col-form-label
{
  display: inline-block;
}

.form-group
{
  margin-bottom: .75rem;
}

.form-control
{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  color: #212529;
}

.form-control: focus
{
  color: #000;
}

.form-control.kz-bs-edit-ro[readonly],
.form-control:disabled,
.form-control[readonly]
{
  background-color: #fcfcfc;
}

/* Simulate a display only form-control textbox */
.kz-form-control-plaintext 
{
  display: block;
  width: 100%;
  min-height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.5rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fcfcfc;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  word-break: break-word;
  overflow-wrap: break-word;
}

.kz-form-control-plaintext-sm 
{
  min-height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.kz-form-control-lbl-vert
{
  display: block;
  width: 100%;
  overflow-x: hidden;
  white-space: nowrap;
}

/* To fix extra bottom spacing due to overflow hidden if above is inline-block.
vertical-align: top;
*/

/*--- Custom ---*/
.kz-bs-mw-sm
{
  max-width: 576px;
}

.kz-bs-mw-md
{
  max-width: 768px;
}

.kz-bs-mw-lg
{
  max-width: 992px;
}

.kz-bs-mw-xl
{
  max-width: 1200px;
}

.kz-fw-6
{
  font-weight: 600;
}

.kz-bs-btn-edit-addon-bdr
{
  border-color: #ced4da;
  border-left: 0;
}

.kz-bs-btn-edit-addon:hover
{
  background-color: #dee2e6;
}

.kz-bs-popup-btn__svg,
.kz-bs-clearinput-btn__svg
{
  vertical-align: middle;
}

/*--------------- Validations ---*/
.kz-bs-val-submit-error
{
  display: none;
  font-size: .90625rem;
  color: red;
  margin-bottom: .5rem;
}

.was-validated .kz-bs-val-submit-error
{
  display: block;
}


/*------------ Reponsive sort bar */
.kz-sb
{
  width: 100%;
  max-width: 48rem;
}

.kz-sb__caption
{
  display: flex;
  align-items: center;
  color: #fff;
  background-color: #17a2b8;
  font-weight: 600;
  border: 1px solid #dee2e6;
  padding: 0 0 0 1rem;
  margin-bottom: -1px;
}

.kz-sb__caption-btn
{
  margin-left: auto;
  color: inherit !important;
  font-weight: inherit;
  width: 5.5rem;
  text-align: right;
  padding-right: 1rem;
  padding-left: 0;
}

.kz-sb__body
{
  display: flex;
  flex-wrap: wrap;
  background-color: #f5f5f5;
  border: 1px solid #dee2e6;
}

.kz-sb__body.collapse
{
  transition-duration: .2s;
  transition-delay: 0s;
}

.kz-sb-field-list
{
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

.kz-sb-field-list-item
{
  display: flex;
  flex-wrap: nowrap; 
  align-items: stretch;
  width: 100%;
  margin-bottom: .25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.kz-sb-field-list-item__fldname
{
  display: block;
  padding: 0.25rem 0 0.25rem 0.5rem;
  font-size: .875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1 1 auto;
  width: 1%;
}

.kz-sb-btn
{
  flex-shrink: 0;
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: transparent;
  border: none;
  padding: 0.25rem 0.625rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.kz-sb-btn:hover,
.kz-sb-btn:focus
{
  background-color: #dee2e6;
}

.kz-sb-field-list-item__buttons
{
  display: flex;
  border-left: 1px solid rgba(0, 0, 0, 0.125);
  background-color: #f0f0f0;
}

.kz-sb-field-list-fields .kz-sb-btn:not(.kz-sb-btn-add)
{
  display: none;
}

.kz-sb-field-list-sortby .kz-sb-btn.kz-sb-btn-add
{
  display: none;
}

.kz-sb-btn-direction
{
  font-weight: 600;
  font-size: 1.25rem;
  font-style: italic;
  line-height: 1.2;
}

.kz-sb-field-list-item:not(.is-desc) .kz-sb-btn-direction::before
{
  content: "A";
  display: inline-block;
  width: 1rem;
}

.kz-sb-field-list-item.is-desc .kz-sb-btn-direction::before
{
  content: "D";
  display: inline-block;
  width: 1rem;
}

/*------------ Reponsive adhocery */
.kz-aq
{
  width: 100%;
  max-width: 48rem;
}

.kz-aq__caption
{
  display: flex;
  align-items: center;
  padding: 0 0 0 1rem;
  color: #fff;
  background-color: #17a2b8;
  font-weight: 600;
  border: 1px solid #dee2e6;
  margin-bottom: -1px;
}

.kz-aq__caption-btn
{
  margin-left: auto;
  color: inherit !important;
  font-weight: inherit;
  width: 5.5rem;
  text-align: right;
  padding-right: 1rem;
  padding-left: 0;
}

.kz-aq__body.collapse
{
  transition-duration: 0.2s;
  transition-delay: 0s;
}

/*
.kz-aq__body:not(.show)
{
  display: none;
}
*/

.kz-aq-rules-group-container,
.kz-aq-rule-container
{
  position: relative;
  margin: 0 0 4px 0;
  padding: 5px;
  border: 1px solid #eee;
  background-color: rgba(255, 255, 255, 0.9);
}

/*---------------------------------------------- GROUP --*/
.kz-aq-rules-group-container
{
  padding: 10px;
  padding-bottom: 6px;
  border: 1px solid #dee2e6;
  background-color: #f5f5f5;
}

.kz-aq-rules-group-header
{
  display: flex;
  flex-direction: column;
  margin-bottom: .25rem;
}

.kz-aq-group-connect
{
  order: 1;
  z-index: 1;
}

.kz-aq-group-header-btn-group
{
  order: -1;
  width: 100%;
  margin-left: 0;
  margin-bottom: .25rem;
}

.kz-aq-group-header-btn-group > button.btn
{
  flex-grow: 0;
}


@media (min-width: 500px)
{
  .kz-aq-rules-group-header
  {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
  }

  .kz-aq-group-header-btn-group
  {
    order: 5;
    margin-left: auto;
    width: auto;
  }
}

/*---------------------------------------------- RULES LIST --*/
.kz-aq-rules-list
{
  list-style: none;
  padding: 0 0 0 15px;
  margin: 0;
}

.kz-aq-rules-list > ::after,
.kz-aq-rules-list > ::before
{
  content: "";
  position: absolute;
  left: -10px;
  width: 10px;
  height: calc(50% + 4px);
  border-color: #ccc;
  border-style: solid;
}

.kz-aq-rules-list > ::before
{
  top: -4px;
  border-width: 0 0 2px 2px;
}

.kz-aq-rules-list > ::after
{
  top: 50%;
  border-width: 0 0 0 2px;
}

.kz-aq-rules-list > :first-child::before
{
  top: -15px;
  height: calc(50% + 16px);
}

.kz-aq-rules-list > :last-child::before
{
  border-radius: 0 0 0 4px;
}

.kz-aq-rules-list > :last-child::after
{
  display: none;
}

/*---------------------------------------------- RULE --*/
.kz-aq-rule-emsg-container
{
  font-size: 80%;
  color: red;
}

.kz-aq-rule-cond-btngrp-container
{
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
}

.kz-aq-rule-condition
{
  display: flex;
  flex-flow: row wrap;
  order: 1;
  align-items: flex-start;
}

.kz-aq-rule-btn-group
{
  display: inline-block;
  order: -1;
  margin-left: 0;
  margin-bottom: .25rem;
}
  /*align-self: flex-end;*/


@media (min-width: 500px)
{
  .kz-aq-rule-cond-btngrp-container
  {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
  }

  .kz-aq-rule-btn-group
  {
    order: 5;
    margin-left: auto;
    align-self: flex-start;
  }
}

.kz-aq-rule-fields-container,
.kz-aq-rule-operator-container,
.kz-aq-rule-value-container
{
  margin-right: .25rem;
  margin-bottom: .25rem;
}

.kz-aq-rule-operator-container
{
  margin-right: .5rem;
}

.kz-aq-rule-value-container
{
  display: flex;
  flex-direction: column;
}

.kz-aq-rule-value-container > :not(:first-child)
{
  margin-top: .5rem;
}

.kz-aq-rule-value-input-container > .custom-control.custom-control-inline
{
  margin-bottom: .5rem;
  margin-left: 1rem;
  margin-right: 0;
}

.kz-aq-rule-value-input-container > .custom-control:not(.custom-control-inline):not(:first-child)
{
  margin-top: .5rem;
}

.kz-aq-rule-value-input-container > .custom-control:not(.custom-control-inline)
{
  margin-left: 1rem;
}

.kz-aq-rule-value-input-emsg-cont
{
  font-size: 80%;
  color: red;
  max-width: 15rem;
}

/*------------------- Responsive E-bulletin -----*/
.kz-ebul-container
{
  min-height: calc(100vh - 175px);  /*mike_header_size*/
}

.kz-ebul-container > :first-child
{
  border-right: 0;
}

.kz-ebul-container > :last-child
{
  border-top: 1px solid #222;
  padding-top: 1rem;
}

@media (min-width: 992px) {
  .kz-ebul-container > :first-child
  {
    border-right: 1px solid #c0c0c0;
  }

  .kz-ebul-container > :last-child
  {
    border-top: 0;
    padding-top: 0;
  }
}

.kz-ebul-articles-news > .kz-ebul-article:nth-child(n+6) > .kz-ebul-article-content
{
  display: none;
}