:root [id^=wpgmza_filter_] {
  text-align: right !important; }

:root .wpgmza_map {
  margin-top: 1em;
  margin-bottom: 1em;
  height: 480px !important; }

:root .wpgmza_modern_infowindow_close {
  font-size: 24px;
  width: 24px;
  height: 24px; }

:root .wpgmza_marker_holder {
  overflow-x: hidden !important;
  border: 0 !important; }

@media only screen and (max-width: 640px) {
  :root .wpgmza_modern_infowindow {
    min-width: 0 !important;
    right: 10px !important;
    width: auto !important;
    border-left: 8px solid #5b7f34; } }

:root .wpgmza_modern_infowindow .wpgmza_iw_image {
  background: #5b7f34; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_modern_infowindow .wpgmza_iw_image {
      display: none !important; } }

:root .wpgmza_modern_infowindow .wpgmza_iw_title,
:root .wpgmza_modern_infowindow .wpgmza_iw_address,
:root .wpgmza_modern_infowindow .wpgmza_iw_description {
  position: relative;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  height: auto; }

:root .wpgmza_modern_infowindow .wpgmza_iw_title {
  float: none;
  margin: 0 20px 0 calc(30% + 20px) !important;
  padding: 20px 0 0;
  position: static !important;
  max-height: calc(2em * 1.2);
  overflow: hidden;
  line-height: 1.2; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_modern_infowindow .wpgmza_iw_title {
      margin-left: 20px !important; } }

:root .wpgmza_modern_infowindow .wpgmza_iw_address {
  margin: 5px 20px 0 calc(30% + 20px) !important;
  padding: 0;
  width: auto !important;
  max-height: calc(1em * 1.2);
  overflow: hidden;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1.1em; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_modern_infowindow .wpgmza_iw_address {
      margin-left: 20px !important; } }

:root .wpgmza_modern_infowindow .wpgmza_iw_address_p {
  display: inline-block;
  margin: 0;
  line-height: 1;
  font-sizE: 1em; }

:root .wpgmza_modern_infowindow .wpgmza_iw_description {
  padding: 0;
  margin: 20px 20px 0 calc(30% + 20px) !important;
  height: 278px;
  -webkit-overflow-scrolling: touch; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_modern_infowindow .wpgmza_iw_description {
      margin-left: 20px !important; } }
  :root .wpgmza_modern_infowindow .wpgmza_iw_description > :first-child {
    margin-top: 0; }
  :root .wpgmza_modern_infowindow .wpgmza_iw_description > :last-child {
    margin-bottom: 0; }

:root .wpgmza_modern_infowindow .wpgmza_iw_buttons {
  display: none; }

:root .wpgmza_button {
  color: #fff !important; }

:root .wpgmza_table,
:root table.dataTable {
  margin-top: 1em !important;
  width: calc(100% - 2px) !important;
  box-sizing: border-box !important;
  table-layout: fixed; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_table,
    :root table.dataTable {
      margin-top: 0 !important; } }
  :root .wpgmza_table.no-footer,
  :root table.dataTable.no-footer {
    border: 0 !important; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_table thead .wpgmza_table_address,
    :root .wpgmza_table tbody .wpgmza_table_address,
    :root table.dataTable thead .wpgmza_table_address,
    :root table.dataTable tbody .wpgmza_table_address {
      display: none; } }
  :root .wpgmza_table thead .wpgmza_table_description,
  :root .wpgmza_table tbody .wpgmza_table_description,
  :root table.dataTable thead .wpgmza_table_description,
  :root table.dataTable tbody .wpgmza_table_description {
    display: none; }
  :root .wpgmza_table thead th,
  :root .wpgmza_table thead .sorting,
  :root table.dataTable thead th,
  :root table.dataTable thead .sorting {
    text-align: center !important;
    background-color: #d8ffb2;
    border: 1px solid #d8ffb2;
    padding: 10px 4px !important; }
    :root .wpgmza_table thead th + th,
    :root .wpgmza_table thead .sorting + th,
    :root table.dataTable thead th + th,
    :root table.dataTable thead .sorting + th {
      border-left: 1px solid #fff !important; }
  :root .wpgmza_table thead .sorting_asc,
  :root .wpgmza_table thead .sorting_desc,
  :root table.dataTable thead .sorting_asc,
  :root table.dataTable thead .sorting_desc {
    background-color: #5b7f34;
    border: 1px solid #5b7f34;
    color: #fff; }
  :root .wpgmza_table thead .sorting,
  :root table.dataTable thead .sorting {
    background-image: url(../../images/wp-google-maps/sort-both-black.png) !important; }
  :root .wpgmza_table thead .sorting_asc,
  :root table.dataTable thead .sorting_asc {
    background-image: url(../../images/wp-google-maps/sort-asc-white.png) !important; }
  :root .wpgmza_table thead .sorting_desc,
  :root table.dataTable thead .sorting_desc {
    background-image: url(../../images/wp-google-maps/sort-desc-white.png) !important; }
  :root .wpgmza_table thead .wpgmza_table_marker,
  :root table.dataTable thead .wpgmza_table_marker {
    width: 48px !important;
    pointer-events: none;
    background-image: none !important; }
  :root .wpgmza_table thead .wpgmza_table_category,
  :root table.dataTable thead .wpgmza_table_category {
    width: 160px !important; }
  @media only screen and (max-width: 640px) {
    :root .wpgmza_table tbody .wpgmza_table_marker::before,
    :root table.dataTable tbody .wpgmza_table_marker::before {
      display: none !important; } }
  :root .wpgmza_table .wpgmaps_mlist_row,
  :root .wpgmza_table .child,
  :root table.dataTable .wpgmaps_mlist_row,
  :root table.dataTable .child {
    border: 0 !important;
    border-right: 1px solid #ccc !important;
    border-left: 1px solid #ccc !important; }
    :root .wpgmza_table .wpgmaps_mlist_row:first-child,
    :root .wpgmza_table .child:first-child,
    :root table.dataTable .wpgmaps_mlist_row:first-child,
    :root table.dataTable .child:first-child {
      border-top: 1px solid #ccc !important; }
    :root .wpgmza_table .wpgmaps_mlist_row:last-child,
    :root .wpgmza_table .child:last-child,
    :root table.dataTable .wpgmaps_mlist_row:last-child,
    :root table.dataTable .child:last-child {
      border-bottom: 1px solid #ccc !important; }
  :root .wpgmza_table th > :first-child,
  :root .wpgmza_table td > :first-child,
  :root table.dataTable th > :first-child,
  :root table.dataTable td > :first-child {
    margin-top: 0 !important; }
  :root .wpgmza_table th > :last-child,
  :root .wpgmza_table td > :last-child,
  :root table.dataTable th > :last-child,
  :root table.dataTable td > :last-child {
    margin-bottom: 0 !important; }
  :root .wpgmza_table .wpgmaps_mlist_row:hover,
  :root table.dataTable .wpgmaps_mlist_row:hover {
    background: #f7f7f7; }
  :root .wpgmza_table td,
  :root table.dataTable td {
    padding: 8px !important; }
  :root .wpgmza_table td.dataTables_empty,
  :root table.dataTable td.dataTables_empty {
    padding: 8px !important;
    border: 1px solid #ccc !important; }

:root [name="wpgmza_filter_select"],
:root .dataTables_length select {
  margin: 0;
  background: #fff;
  border: 1px solid #ddd;
  padding: 12px; }
  :root [name="wpgmza_filter_select"] option,
  :root .dataTables_length select option {
    background: #fff;
    color: #333; }

:root [name="wpgmza_filter_select"] {
  margin-left: 8px; }

:root .dataTables_length select {
  margin-right: 4px; }

:root .dataTables_length,
:root .dataTables_filter {
  margin-bottom: 1em; }
  @media only screen and (max-width: 640px) {
    :root .dataTables_length,
    :root .dataTables_filter {
      display: none; } }

:root .dataTables_filter label {
  font-weight: normal !important; }

:root .dataTables_filter [type="search"] {
  width: 16em;
  height: 40px;
  margin: 0 0 0 8px;
  border: 1px solid #ddd;
  background: #fff;
  padding: 0 10px; }

:root .dataTables_wrapper .dataTables_info {
  margin-top: 10px;
  line-height: 40px; }

:root .dataTables_wrapper .dataTables_paginate {
  box-sizing: border-box; }
  @media only screen and (max-width: 640px) {
    :root .dataTables_wrapper .dataTables_paginate {
      margin-top: 0; } }
  :root .dataTables_wrapper .dataTables_paginate .paginate_button {
    display: inline-block;
    margin: 5px 1px;
    padding: 0;
    min-width: 40px;
    font-size: 12px;
    line-height: 40px;
    text-align: center;
    color: #fff !important;
    vertical-align: top;
    background: #bbb !important;
    border: 0 !important; }
    :root .dataTables_wrapper .dataTables_paginate .paginate_button.previous {
      margin-left: 0; }
    :root .dataTables_wrapper .dataTables_paginate .paginate_button.next {
      margin-right: 0; }
    :root .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
      color: #fff !important;
      background: #000 !important; }
    :root .dataTables_wrapper .dataTables_paginate .paginate_button.current {
      background: #000 !important;
      color: #fff !important; }
      :root .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
        color: #fff !important;
        background: #000 !important; }
    :root .dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
      color: #fff !important;
      background: #bbb !important; }
      :root .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover {
        color: #fff !important; }
