/*
Theme Name: Urban Metrics
Theme URI: http://www.urban-metrics.io/wptheme
Description: Thème enfant basé sur Neve, personnalisé selon mes besoins.
Author: Stéphane ROGER
Author URI: http://www.urban-metrics.io
Template: neve
Version: 1.0
Text Domain: urban-metrics
*/
[tabindex="-1"]:focus, 
input:read-write:focus, 
select:focus, 
textarea:focus {
  animation: haloAnimation 10s linear infinite;
  --formfieldbordercolor: unset;
}
header .navigation ul li:hover .elementor-icon-list-icon svg {
  fill: black !important;
}
#content {
  padding: 2em;
}
#login .wp-login-logo {
  height: 160px;
}
body.home #home-search-block {
  /*max-width: 95%;*/
}
.ccpn-search-results {
  width: 95%;
}
.post-template #content {
  padding: 1em 2em;
}
.site-footer {
  display: none;
}
.menu-userguide, .menu-support {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.3;
}
.elementor-search-form--skin-minimal:focus-within {
  outline-style: none;
}
#home-search-block select.postform,
#favorite-search-block select.postform {
  display: none;
}
#home-search-block input,
#favorite-search-block input {
  border-radius: 5px;
  /*margin-left: 1em;*/
  border: 1px solid #777;
  width: 30em;
}
#home-search-block button.submit,
#favorite-search-block button.submit {
  color: #27C7D4;
  background: none;
  border: none;
  text-decoration: underline;
  min-width: 5em;
}
#home-search-block .ccpn-search-results .post-card .tag,
#favorite-search-block .ccpn-search-results .post-card .tag {
  color: #FE9063;
}
#home-search-block .ccpn-search-results .post-card .created-at,
#favorite-search-block .ccpn-search-results .post-card .created-at {
  color: #999;
  font-size: 0.8em;
  line-height: 0.6em;
  text-transform: lowercase;
}
#home-search-block .ccpn-search-results .post-card .readmore,
#favorite-search-block .ccpn-search-results .post-card .readmore {
  color: #27C7D4;
}
#favorite-search-block .ccpn-search-results .um-favorite {
  display: none;
}
#home-search-block .ccpn-search-results .um-favorite,
#favorite-search-block .ccpn-search-results .um-favorite {
  float:right;
  margin-top:3px;
}
#home-search-block .ccpn-search-results .um-favorite.is-favorite svg path,
#favorite-search-block .ccpn-search-results .um-favorite.is-favorite svg path {
/*  fill:#EA5863;*/
  stroke: #EA5863 !important;
}
#home-search-block .ccpn-search-pagination,
#favorite-search-block .ccpn-search-pagination {
  display: none;
}
.ccpn-search-results.grid-block .posts-container {
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  display: grid;
  gap: 20px;
  grid-gap: 20px;
  grid-auto-rows: 1fr;
}
.ccpn-search-results.grid-block .posts-container .post-card {
  transition: box-shadow 10s ease-in-out;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  height: 95%; /* pour forcer à remplir la cellule */
}
.ccpn-search-results.grid-block .posts-container .post-card:hover {
  animation: haloAnimation 10s linear infinite;
}
body.single-um_location main .container {
   opacity: 0;
}
body.single-um_location main .container.visible {
  opacity: 1;
}
#page-loading-overlay .loader {
  display: flex;
  gap: 10px; /* espace entre les icônes */
  align-items: center;
  justify-content: center;
  width: 80px !important;
  height: unset !important;
}
#page-loading-overlay .loader .gif-container {
  /*filter: grayscale(100%);*/
  transition: filter 0.3s ease;
  width: 70px;
  opacity: 0.5;
}
#page-loading-overlay .loader .gif-container.active {
  filter: unset;
  width: 70px;
  opacity: 1;
}
#page-loading-overlay .loader .gif-container.active img {
  filter:grayscale(0);
}
#page-loading-overlay .description .text-container {
  display: none;
}
#page-loading-overlay .description .text-container.active {
  display: block;
}
#page-loading-overlay .description {
  font-size: 16px;
  color: #333;
  text-align: center;
  max-width: 500px;
  font-size: 14px;
  width: 340px !important;
  margin-left: -340px;
  margin-top: -60px;
}
.ccpn-search-results .no-results .alert {
  display: none;
}
.ccpn-search-results .no-results .img-city {
  display: block;
  width: 800px;
  height: auto;
  margin-top: 2em;
  margin-left: -0.9em;
  position: relative;
  left: 1em;
}
.ccpn-search-results .no-results .img-city img { 
  width: 100%;
  height: auto;
  filter: grayscale(100%);
  transition: filter 0.5s ease;
}
/* Animation du halo */
@keyframes haloAnimation {
  0% {
      box-shadow: 0 0 8px #EA5863;
  }
  12.5% {
      box-shadow: 0 0 8px #6743C9;
  }
  25% {
      box-shadow: 0 0 8px #EA5863;
  }
  37.5% {
      box-shadow: 0 0 8px #6743C9;
  }
  40% {
      box-shadow: 0 0 8px rgba(255, 0, 0);
  }
  57.5% {
      box-shadow: 0 0 8px #27C7D4;
  }
  75% {
      box-shadow: 0 0 8px #EA5863;
  }
  82.5% {
      box-shadow: 0 0 8px #6743C9;
  }
  100% {
      box-shadow: 0 0 8px rgba(255, 0, 0, 0.5);;
  }
}
#home-search-block input {
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
}
.post-card .post-card-content {
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
}
search form.elementor-search-form #elementor-search-form-4066a033 {
  box-shadow: unset !important;
}


/* Report Page */
#floating-panel {
  position: absolute;
  top: 10px;
  left: 25%;
  z-index: 5;
  background-color: #fff;
  padding: 5px;
  border: 1px solid #999;
  text-align: center;
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
  line-height: 30px;
  padding-left: 10px;
}

#floating-panel {
  background-color: #fff;
  border: 1px solid #999;
  left: 25%;
  padding: 5px;
  position: absolute;
  top: 10px;
  z-index: 5;
}

#tabs-container .e-n-tabs-content .e-child {
  padding-inline-start: unset;
}

.btn,.button,.wp-block-button__link,button,input[type=button],input[type=reset],input[type=submit] {
  font-family: var(--e-global-typography-text-font-family), Sans-serif !important;
  font-weight: normal;
}
.gm-style-iw[role="dialog"] {
  /*margin-bottom: 1em;*/
  font-family: var(--e-global-typography-text-font-family), Sans-serif;
}
.gm-style-iw[role="dialog"] h4, .gm-style-iw[role="dialog"] h5, .gm-style-iw[role="dialog"] h6 {
  margin-bottom: 0.5em;
}
.gm-style-iw[role="dialog"] h5 {
  margin-top: 0.5em;
  color: #EA5863;
}
.gm-style-iw[role="dialog"] h6 {
  margin-top: 0.5em;
  font-size: 13px;
}
.gm-style-iw[role="dialog"] .gm-style-iw-ch {
  background: none;
}
.gm-style-iw[role="dialog"] svg {
  max-width: 14px;
  height: auto;
  vertical-align: middle;
}
#tab-realestate-market .realestate_stats_average_price {
  padding-left: 1em;
  font-size: 20px;
}
#tab-www-realestate-market .www-realestate-content {
  display: none;
}
#tab-www-realestate-market .www-realestate-content.active {
  display: block;
}
#tab-www-realestate-market .www-realestate-nav li {
  padding: 1em 2em;
  border: none;
  display: inline-block;
  background-color: #f9f9f9;
  transition: background-color 0.3s, color 0.3s;
  cursor: pointer;
}
#tab-www-realestate-market .www-realestate-nav li.active {
  background-color: transparent;
  color: #EA5863;
}

@media (min-width: 960px) {
  :root {
    --w: 180px;
    --narrow-width: 70px;
    --bodyfontsize: 13px;
    --btnfs: 13px;
  }
  #content {
    padding: 1em;
  }
  body.opening .elementor-search-form {
    display: none;
  }
  .elementor-45 .elementor-element.elementor-element-3899b45b img {
    width:110px;
  }
  .elementor-45 .elementor-element.elementor-element-3cf02f29 .elementor-icon {
    font-size: 20px;
    margin-top: -20px;
  }
  .elementor-45 .elementor-element.elementor-element-3cf02f29 .elementor-icon svg {
    height: 22px;
  }
  .elementor-45 .elementor-element.elementor-element-ec1733f > .elementor-element-populated {
    padding: 0px 10px 10px 10px;
  }
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-item a {
    padding: 13px 10px !important;
  }
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child) {
    margin-top: 0;
    margin-bottom: 0;
  }
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-item > .elementor-icon-list-text, 
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-item > a {
    font-size: 12px;
  }
  .elementor-search-form button, .elementor-search-form input[type=search] {
    font-size: 12px;
  }
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-icon {
    padding-right: 8px;
  }
  .ccpn-search-results .post-card {
    padding: 8px;
  }
  .ccpn-search-results .post-card .title {
    font-size: 15px;
    line-height: 1.2em;
  }
  .ccpn-search-form .nr-posts-block {
    font-size: 13px;
  }
  .ccpn-search-form .nr-posts-block .nr-posts {
    font-size: 13px;
  }
  .tabs-container .tab-header img {
    height: 40px;
  }
  .tabs-container .tab-header h2 {
    font-size: 13px;
    margin: 8px;
  }
  .tabs-container .tab-content {
    padding: 10px;
  }
  .urban-metrics-container .button {
    border: 1px solid #555 !important;
    font-size: 13px !important;
    padding: 6px 9px !important;
  }
  .urban-metrics-container .button.average-traffic-period {
    font-size: 11px !important;
    padding: 4px 6px !important;
  }
  .urban-metrics-container .leftbar .tab .tablinks {
    font-size: 13px !important;
  }
  .urban-metrics-container .tabs .control {
    padding-left: 3% !important;
    width: 100% !important;
    text-align: left !important;
  }
}

/* Styles généraux pour les iPads */
@media (min-width: 744px) and (max-width: 1366px) {

  :root{
    --w: 180px;
    --narrow-width: 70px;

    --container: 1170px;
    --postwidth: 33.333333333333%;
    --btnpadding: 12px 24px;
    --primarybtnpadding: 12px 24px;
    --secondarybtnpadding: calc(12px - 2px) calc(24px - 2px);
    --btnfs: 18px;
    --btnlineheight: 1.6em;
    --bodyfontsize: 11px;
    --bodylineheight: 1.4;
    --bodyletterspacing: 0px;
    --h1fontsize: 22px;
    --h1lineheight: 1.2em;
    --h1letterspacing: 0px;
    --h2fontsize: 19px;
    --h2lineheight: 1.1;
    --h2letterspacing: 0px;
    --h3fontsize: 16px;
    --h3lineheight: 1.1em;
    --h3letterspacing: 0px;
    --h4fontsize: 14px;
    --h4lineheight: 1.1em;
    --h4letterspacing: 0px;
    --h5fontsize: 12px;
    --h5lineheight: 1.3em;
    --h5letterspacing: 0px;
    --h6fontsize: 11px;
    --h6lineheight: 1.3em;
    --h6letterspacing: 0px;
  }
  #content {
    padding: 1em;
  }
  .elementor-45 .elementor-element.elementor-element-3899b45b img {
    width:110px;
  }
  .elementor-45 .elementor-element.elementor-element-ec1733f > .elementor-element-populated {
    padding: 0px 10px 10px 10px;
  }
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-item a {
    padding: 13px 10px !important;
  }
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-item > .elementor-icon-list-text, 
  .elementor-45 .elementor-element.elementor-element-34e1c8a0 .elementor-icon-list-item > a {
    font-size: 10px;
  }
  .elementor-search-form button, .elementor-search-form input[type=search] {
    font-size: 12px;
  }
  .elementor-55 .elementor-element.elementor-element-85a5839 .elementor-heading-title {
    font-size: 22px;
  }
  .elementor-55 .elementor-element.elementor-element-9a506c4 {
    font-size: 18px;
  }
  .elementor-button {
    font-size: 13px;
    padding: 8px 16px;
  }
  .tabs-container .tab-header img {
    height: 25px;
  }
  .tabs-container .tab-header h2 {
    font-size: 13px;
    margin: 8px;
  }
  .tabs-container .tab-content {
    padding: 0px;
  }
  .urban-metrics-container.heatmap .leftbar {
    padding: 5px;
  }
  .urban-metrics-container .leftbar {
    width: 10%;
  }
  .urban-metrics-container .button {
    border: 1px solid #555 !important;
    font-size: 13px !important;
    padding: 6px 9px !important;
  }
  .urban-metrics-container .button.average-traffic-period {
    font-size: 11px !important;
    padding: 4px 6px !important;
  }
  .urban-metrics-container .leftbar .tab .tablinks {
    font-size: 13px !important;
  }
  .urban-metrics-container .tabs .control {
    padding-left: 3% !important;
    width: 100% !important;
    text-align: left !important;
  }
  .ccpn-search-results.grid-block .posts-container {
    grid-template-columns: repeat(4, 25%);
  }
  .ccpn-search-results .post-card .title {
    font-size: 15px;
  }
  .ccpn-search-form .nr-posts-block {
    font-size: 13px;
  }
  .ccpn-search-form .nr-posts-block .nr-posts {
    font-size: 13px;
  }
  .tabs-container .tab-header h2 {
    font-size: 13px;
  }
}