/**
 * @package   JCalPro
 * @contact   www.joomlashack.com, help@joomlashack.com
 * @copyright 2006-2012 Anything-Digital.com
 * @copyright 2016-2025 Joomlashack.com. All rights reserved
 * @license   https://www.gnu.org/licenses/gpl.html GNU/GPL
 *
 * This file is part of JCalPro.
 *
 * JCalPro is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 2 of the License, or
 * (at your option) any later version.
 *
 * JCalPro is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with JCalPro.  If not, see <https://www.gnu.org/licenses/>.
 */
#jcl_component {
  box-sizing: border-box;
}
#jcl_component a {
  color: #555;
}
#jcl_component a:hover,
#jcl_component a:focus,
#jcl_component a:active {
  color: #414141;
}
#jcl_component .modal-body iframe {
  border: none;
}
#jcl_component .jcl_event_admin img {
  margin-right: 15px;
}
#jcl_component .alert h3 {
  margin-top: 0;
}
#jcl_component .event-item {
  padding: 30px;
  background: #f9f9f9;
  margin-bottom: 20px;
  border-width: 0 0 0 4px;
  border-style: solid;
}
#jcl_component .event-item h3 {
  margin-top: 0;
}
#jcl_component .address-item {
  padding: 30px;
  background: #f9f9f9;
  margin-bottom: 20px;
}
#jcl_component [class^="icon-"],
#jcl_component [class*=" icon-"] {
  margin-right: 0;
}
#jcl_component [class^="icon-"] + span,
#jcl_component [class*=" icon-"] + span {
  margin-left: 0.25em;
}
#jcl_component a {
  transition: all 0.2s linear 0s;
}
#jcl_component .table-calendar {
  border-collapse: separate;
  border-spacing: 4px;
  font-size: 14px;
}
#jcl_component .table-calendar td {
  border: none;
  height: 6em;
  transition: all 0.2s linear 0s;
  word-break: normal;
}
#jcl_component .table-calendar td .calendar-day {
  font-size: 20px;
  line-height: 20px;
  color: #777;
}
#jcl_component .table-calendar td .calendar-events img.icon {
  border-radius: 50px;
  background: #fff;
  padding: 2px;
  margin-bottom: 1px;
  margin-right: 4px;
  height: 6px;
  width: auto;
  box-sizing: unset;
}
#jcl_component .table-calendar td.disabled {
  text-align: left;
  padding: 10px;
}
#jcl_component .table-calendar th,
#jcl_component .table-calendar td {
  background: #f2f2f2;
}
#jcl_component .table-calendar th.cell_events,
#jcl_component .table-calendar td.cell_events {
  background: #f2f2f2;
}
#jcl_component .table-calendar th.cell_events:hover,
#jcl_component .table-calendar td.cell_events:hover,
#jcl_component .table-calendar th.cell_events:focus,
#jcl_component .table-calendar td.cell_events:focus,
#jcl_component .table-calendar th.cell_events:active,
#jcl_component .table-calendar td.cell_events:active {
  background: #e5e5e5;
}
#jcl_component .table-calendar th.cell_events:hover a,
#jcl_component .table-calendar td.cell_events:hover a,
#jcl_component .table-calendar th.cell_events:focus a,
#jcl_component .table-calendar td.cell_events:focus a,
#jcl_component .table-calendar th.cell_events:active a,
#jcl_component .table-calendar td.cell_events:active a {
  color: #555;
}
#jcl_component .table-calendar th.cell_events:hover a:hover,
#jcl_component .table-calendar td.cell_events:hover a:hover,
#jcl_component .table-calendar th.cell_events:focus a:hover,
#jcl_component .table-calendar td.cell_events:focus a:hover,
#jcl_component .table-calendar th.cell_events:active a:hover,
#jcl_component .table-calendar td.cell_events:active a:hover,
#jcl_component .table-calendar th.cell_events:hover a:focus,
#jcl_component .table-calendar td.cell_events:hover a:focus,
#jcl_component .table-calendar th.cell_events:focus a:focus,
#jcl_component .table-calendar td.cell_events:focus a:focus,
#jcl_component .table-calendar th.cell_events:active a:focus,
#jcl_component .table-calendar td.cell_events:active a:focus,
#jcl_component .table-calendar th.cell_events:hover a:active,
#jcl_component .table-calendar td.cell_events:hover a:active,
#jcl_component .table-calendar th.cell_events:focus a:active,
#jcl_component .table-calendar td.cell_events:focus a:active,
#jcl_component .table-calendar th.cell_events:active a:active,
#jcl_component .table-calendar td.cell_events:active a:active {
  color: #555;
}
#jcl_component .table-calendar a.eventtitle {
  display: table-cell;
  font-size: 13px;
  font-weight: bold;
  line-height: 17px;
  text-align: right;
  vertical-align: baseline;
  border-bottom-style: solid;
  border-bottom-width: 3px;
  border-bottom-color: #fff;
  padding-bottom: 4px;
}
#jcl_component .table-calendar a.eventtitle:hover,
#jcl_component .table-calendar a.eventtitle:focus,
#jcl_component .table-calendar a.eventtitle:active {
  color: #555;
}
#jcl_component .table-calendar a.eventtitle small {
  display: block;
  font-weight: normal;
}
#jcl_component .table-calendar a:hover,
#jcl_component .table-calendar a:focus,
#jcl_component .table-calendar a:active {
  text-decoration: none;
}
#jcl_component .dropdown-menu > li > a:hover,
#jcl_component .dropdown-menu > li > a:focus,
#jcl_component .dropdown-submenu:hover > a,
#jcl_component .dropdown-submenu:focus > a {
  background-color: #336699;
}
#jcl_component .btn {
  background-color: #ddd;
  color: #222;
  text-shadow: none;
}
#jcl_component .btn:hover,
#jcl_component .btn:focus,
#jcl_component .btn:active,
#jcl_component .btn.active,
#jcl_component .btn.disabled,
#jcl_component .btn[disabled] {
  background-color: #c4c4c4;
  color: #111;
}
#jcl_component .btn-primary {
  background-color: #336699;
  color: #fff;
}
#jcl_component .btn-primary:hover,
#jcl_component .btn-primary:focus,
#jcl_component .btn-primary:active,
#jcl_component .btn-primary.active,
#jcl_component .btn-primary.disabled,
#jcl_component .btn-primary[disabled] {
  background-color: #264c73;
  color: #fff;
}
#jcl_component .btn-success {
  background-color: #5bb75b;
  color: #fff;
}
#jcl_component .btn-success:hover,
#jcl_component .btn-success:focus,
#jcl_component .btn-success:active,
#jcl_component .btn-success.active,
#jcl_component .btn-success.disabled,
#jcl_component .btn-success[disabled] {
  background-color: #449b44;
  color: #fff;
}
#jcl_component .btn-danger {
  background-color: #da4f49;
  color: #fff;
}
#jcl_component .btn-danger:hover,
#jcl_component .btn-danger:focus,
#jcl_component .btn-danger:active,
#jcl_component .btn-danger.active,
#jcl_component .btn-danger.disabled,
#jcl_component .btn-danger[disabled] {
  background-color: #c72f29;
  color: #fff;
}
#jcl_component #jcl_layout_body .monthview th {
  background: #555;
  color: #fff;
}
#jcl_component .jcl_header .page-header {
  margin: 0;
  padding: 0;
}
#jcl_component .jcl_toolbar .jcl_navbar [class^="icon-"],
#jcl_component .jcl_toolbar .jcl_navbar [class*=" icon-"] {
  width: auto;
}
#jcl_component .jcl_toolbar .span6 + .span6 .jcl_navbar {
  width: auto;
  display: inline-block;
  float: right;
}
#jcl_component .label {
  line-height: 22px;
  margin-bottom: 4px;
  padding: 3px 10px;
  text-shadow: none;
}
#jcl_component .label.dark {
  color: #3A3A3A;
  border: 1px solid #DFDFDF;
}
#jcl_component .jcl_toolbar .navbar-search {
  margin: 0 0 10px;
}
#jcl_component .jcl_toolbar .btn-group + .btn-group {
  margin-left: 0;
}
#jcl_component .jcl_toolbar .btn-group {
  margin: 7px 0;
}
#jcl_component .jcl_toolbar .field-calendar {
  display: inline-block;
}
#jcl_component .jcl_toolbar .field-calendar .input-group {
  margin: 0;
}
#jcl_component .jcl_toolbar .field-calendar .input-group button {
  margin-left: 1px;
  margin-right: -2px;
  border-radius: 0;
}
#jcl_component .jcl_toolbar .field-calendar .input-group button .icon-calendar:before {
  content: "\f078";
}
#jcl_component .jcl_toolbar .field-calendar input {
  display: none;
}
#jcl_component table {
  border-width: 0 0 1px 0 !important;
}
#jcl_component .table-bordered td {
  border-right: 1px solid #ddd;
}
#jcl_component .table-striped tbody tr:nth-child(odd) td,
#jcl_component .table-striped tbody tr:nth-child(odd) th {
  background-color: transparent !important;
}
#jcl_component .jcl_toolbar_filterselect {
  padding-left: 1em;
}
#jcl_component .jcaldatetime_at {
  display: block;
}
#jcl_component .table th {
  text-align: left;
}
#jcl_component .table tr {
  display: block;
}
#jcl_component .table td,
#jcl_component .table th {
  display: none;
}
#jcl_component .table .cell_events {
  display: block;
  font-weight: bold;
}
#jcl_component .table ul {
  display: block;
  list-style: none;
  margin: 0 1.25em 0 0;
  padding: 0;
}
#jcl_component .table li {
  display: block;
  position: relative;
  margin: 0;
  padding: 0;
  height: 1.25em;
}
#jcl_component .table li a {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  overflow: visible;
  white-space: nowrap;
  text-overflow: ellipsis;
}
#jcl_component .calendar-weekday-top {
  padding: 0 10px;
}
#jcl_component .calendar-events {
  clear: both;
}
#jcl_component .jcl_event_detail {
  padding: 10px 5px;
  margin: 0 0 0.5em;
  background: #f9f9f9;
}
#jcl_component .jcl_event_detail .label,
#jcl_component .jcl_event_detail .content {
  display: inline-block;
  background: transparent;
  padding: 0.75em 1em 0.75em 0;
}
#jcl_component .jcl_event_detail .label {
  width: 15%;
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  font-weight: bold;
  padding: 0.75em 1em;
  margin: 0 1em 0 0;
}
#jcl_component .jcl_event_detail > a.jcalpro_register_button {
  margin-left: 12px;
}
#jcl_component .jcl_view_event .jcl_event_map,
#jcl_component .jcl_view_event .jcl_event_body {
  margin-top: 0.5em;
}
#jcl_component .calendar-events .label {
  white-space: normal;
  display: inline-block;
  position: relative;
}
#jcl_component .calendar-events .label img {
  position: absolute;
  top: 0;
  left: 0;
}
#jcl_component .calendar-events .label small {
  font-weight: normal;
}
#jcl_component #jcl_event_map {
  width: 100%;
  height: 180px;
  display: block;
}
#jcl_component #jcl_event_map img {
  max-width: none !important;
}
#jcl_component #JCalProEventTabsTabs {
  padding: 0;
  margin: 0 0 5px 0;
}
#jcl_component dt.tabs {
  width: auto;
  clear: none;
}
#jcl_component #jcl_location_directions {
  margin-bottom: 24px;
}
#jcl_component .jcl_mainview .page-header {
  margin: 0;
  padding-bottom: 9px;
  border-bottom: 0;
}
#jcl_component .jcl_month .jcal_categories {
  background-color: transparent;
  border: 0;
}
#jcl_component .jcal_categories .btn-block {
  text-align: left;
  padding-left: 12px;
  padding-right: 12px;
  font-weight: bold;
}
#jcl_component .text-light {
  color: #fff;
}
#jcl_component .text-light:hover,
#jcl_component .text-light:active,
#jcl_component .text-light:focus {
  color: #fff;
}
#jcl_component .text-dark {
  color: #000;
}
#jcl_component .text-dark:hover,
#jcl_component .text-dark:active,
#jcl_component .text-dark:focus {
  color: #000;
}
#jcl_component a.jcal_category {
  width: 100%;
}
#jcl_component .jcl_event_body {
  line-height: 1.8em;
  padding: 19px;
  margin-bottom: 20px;
  background: #f9f9f9;
  border-radius: 0;
}
#jcl_component .jcl_mainview .well {
  background-color: transparent;
  border: 0 solid #e3e3e3;
  box-shadow: inset 0 0 0 rgba(0, 0, 0, 0);
}
#jcl_component .jcl_month .jcl_mainview .well {
  padding: 0;
  margin-bottom: 0;
}
#jcl_component .jcl_event_detail p {
  padding-top: 0;
}
#jcl_component .jcl_event_detail img {
  max-width: 100%;
  height: auto;
}
#jcl_component .jcl_location_buttons {
  margin-right: 0;
}
#jcl_component .jcl_location_search .col-md-9,
#jcl_component .jcl_location_search .col-xs-12 {
  padding: 0 2px 20px 0;
}
#jcl_component .jcl_location_events h2 {
  padding-top: 50px;
}
#jcl_component #jcl_location_directions_address {
  margin: 0 0 0 20px;
}
#jcl_component .jcl_inline-controls div.control-group,
#jcl_component .jcl_inline-controls div.control-label,
#jcl_component .jcl_inline-controls div.controls {
  display: inline;
  float: left;
}
#jcl_component .jcl_inline-controls div.control-group {
  margin-right: 10px;
}
#jcl_component .jcl_inline-controls div.control-label {
  margin: 5px;
}
#jcl_component .jcl_inline-controls input[type="checkbox"] {
  margin-top: 8px;
}
#jcl_component .js-calendar .calendar-container table {
  max-width: 262px;
}
#jcl_component .js-calendar .calendar-container table thead tr {
  display: table-row;
}
#jcl_component .js-calendar .calendar-container table thead tr td {
  height: auto;
  width: auto;
  display: table-cell;
}
#jcl_component .js-calendar .calendar-container table tbody tr {
  display: table-row;
}
#jcl_component .js-calendar .calendar-container table tbody tr td {
  height: auto;
  width: auto;
  display: table-cell;
}
#jcl_component .js-calendar .calendar-container table tbody tr td.day {
  padding: 6px 0;
}
#jcl_component .js-calendar .calendar-container table tbody tr.time select {
  padding: 5px 0;
  width: 80px;
  margin-bottom: 0;
}
#jcl_component #JCalProRegistrationTab {
  margin-bottom: 5px;
}
.jcl_ajax_loader {
  background: #FFFFFF url(../images/ajax-loader.gif) no-repeat scroll center center;
  display: block;
  width: 66px;
  height: 66px;
  margin: 20px;
}
@media only screen and (min-width: 980px) {
  #jcl_component .table td {
    height: 6em;
  }
}
@media (min-width: 801px) {
  #jcl_component .table tr {
    display: table-row;
  }
  #jcl_component .table th,
  #jcl_component .table td {
    display: table-cell !important;
    margin: 0;
    width: 14.2857%;
    vertical-align: top;
    padding: 10px 0;
    text-align: center;
  }
  #jcl_component .table td .day {
    display: block;
    float: right;
    margin: 0;
    font-weight: normal;
  }
  #jcl_component .table td:before {
    display: none;
  }
  #jcl_component .table td .suffix {
    display: none;
  }
  #jcl_component .disabled {
    color: #ccc;
  }
  #jcl_component .table-calendar td .calendar-weekday-top {
    display: table;
  }
  #jcl_component .table-calendar td .calendar-events {
    padding: 10px 10px 0;
    height: auto;
    display: block;
  }
  #jcl_component .table-calendar td .calendar-events a.eventtitle {
    display: block;
    width: 100%;
  }
}
@media (max-width: 800px) {
  #jcl_component .table-calendar td {
    height: 100%;
  }
  #jcl_component .table-calendar td.cell_events {
    margin-bottom: 4px;
  }
  #jcl_component .table-calendar td .calendar-weekday-top {
    display: block;
    padding: 10px;
  }
  #jcl_component .table-calendar td .calendar-events {
    padding: 5px 10px 0;
    height: auto;
    overflow: hidden;
    display: block;
    float: none;
    clear: both;
  }
  #jcl_component .table-calendar td .calendar-events:last-of-type {
    padding-bottom: 10px;
  }
  #jcl_component .table-calendar td .calendar-events img {
    margin-right: 4px;
  }
  #jcl_component .table-calendar td a.eventtitle small {
    display: inline;
  }
}
@media (min-width: 768px) {
  #jcl_component .jcl_header h1 {
    display: block;
    float: none;
  }
  #jcl_component .jcl_header h2 {
    display: block;
    float: none;
    margin-top: 0;
    margin-bottom: 0;
  }
}
@media (max-width: 767px) {
  #jcl_component .jcl_navbar {
    float: none;
  }
}
@media (min-width: 600px) {
  #jcl_component .jcaldatetime_at {
    display: inline;
  }
}
@media (max-width: 481px) {
  #jcl_component table.mceLayout,
  #jcl_component textarea.tinyMCE {
    width: 100% !important;
  }
  #jcl_component table.mceToolbar td {
    display: inline;
    float: left;
  }
}
