/* Rave Map Events */
.rme-widget{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  color:#1f2937;
  font-family:Arial, Helvetica, "Segoe UI", sans-serif;
  margin-left:auto;
  margin-right:auto;
}
.rme-top{
  text-align:left;
  margin-bottom:18px;
}
.rme-logo img{
  max-width:220px;
  height:auto;
  margin:0 auto 12px;
  display:block;
}
.rme-heading{
  margin:0 0 8px;
  font-size:34px;
  line-height:1.1;
}
.rme-subheading{
  font-size:15px;
  opacity:.8;
}
.rme-grid{
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(330px,.95fr);
  gap:22px;
  align-items:start;
  justify-content:center;
}
.rme-layout-stack .rme-grid{
  grid-template-columns:1fr;
}
.rme-map-col,
.rme-list-col{
  min-width:0;
}
.rme-map-col{
  justify-self:center;
  width:100%;
}
.rme-list-col{
  display:grid;
  gap:18px;
  align-self:start;
}
.rme-map-box{
  position:relative;
  border-radius:28px;
  overflow:hidden;
  width:100%;
  box-sizing:border-box;
}
.rme-map-image{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
}
.rme-pin{
  position:absolute;
  transform:translate(-50%,-50%);
  border:0;
  background:transparent;
  padding:0;
  cursor:pointer;
  z-index:5;
}
.rme-pin-dot{
  display:block;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#ffcf3b;
  border:3px solid #2c5f76;
  box-shadow:0 4px 12px rgba(0,0,0,.2);
}
.rme-pin.is-active .rme-pin-dot{
  transform:scale(1.1);
  box-shadow:0 0 0 8px rgba(255,207,59,.18),0 4px 12px rgba(0,0,0,.2);
}
.rme-pin-hover{
  position:absolute;
  left:50%;
  bottom:26px;
  transform:translateX(-50%);
  background:#2c5f76;
  color:#fff;
  font-size:11px;
  white-space:nowrap;
  border-radius:999px;
  padding:6px 9px;
  opacity:0;
  pointer-events:none;
  transition:.2s;
}
.rme-pin:hover .rme-pin-hover,
.rme-pin:focus .rme-pin-hover{
  opacity:1;
}
.rme-details{
  position:relative;
  background:#ecd16b;
  border:4px solid #b59126;
  border-radius:24px;
  padding:16px 18px;
  box-shadow:0 10px 20px rgba(0,0,0,.08);
}
.rme-details.is-hidden{
  display:none;
}
.rme-details.is-disabled{
  background:#d8d8d8;
  border-color:#9a9a9a;
  opacity:.92;
}
.rme-ticket-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
}
.rme-ticket-icon{
  width:22px;
  min-width:22px;
  height:44px;
  display:inline-block;
  position:relative;
}
.rme-ticket-icon:before,
.rme-ticket-icon:after{
  content:"";
  position:absolute;
  left:7px;
  width:8px;
  height:16px;
  border-radius:8px;
  background:#5c5850;
  border:1px solid rgba(0,0,0,.15);
}
.rme-ticket-icon:before{top:3px}
.rme-ticket-icon:after{bottom:3px}
.rme-ticket-content{
  display:flex;
  flex-direction:column;
  background:#bfe9f7;
  border:3px solid #8f7f3c;
  border-radius:12px;
  padding:10px 16px;
  min-width:180px;
  color:#12222c;
}
.rme-details.is-disabled .rme-ticket-content{
  background:#ececec;
  border-color:#9a9a9a;
  color:#333;
}
.rme-ticket-content strong{
  font-size:28px;
  line-height:1;
  font-weight:900;
  letter-spacing:.02em;
}
.rme-ticket-content em{
  font-size:16px;
  font-style:normal;
  margin-top:4px;
}
.rme-detail-body{
  display:grid;
  gap:10px;
  margin:12px 0 16px;
}
.rme-detail-item,.rme-detail-text{
  font-size:15px;
  line-height:1.45;
}
.rme-detail-text:empty::before{
  content:"—";
}
.rme-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.rme-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 16px;
  border-radius:12px;
  text-decoration:none;
  font-weight:700;
}
.rme-btn-ticket,
.rme-btn-calendar{
  background:#2c5f76;
  color:#fff;
}
.rme-btn-gps{
  background:#fff;
  color:#2c5f76;
  border:2px solid #2c5f76;
}
.rme-btn.is-hidden,
.rme-btn-calendar.is-hidden{
  display:none;
}
.rme-btn-ticket.is-disabled{
  background:#8c8c8c;
  color:#fff;
  pointer-events:none;
  cursor:not-allowed;
}
.rme-highlight{
  animation:rmePanelPulse .6s ease;
}
@keyframes rmePanelPulse{
  0%{transform:scale(1)}
  50%{transform:scale(1.025)}
  100%{transform:scale(1)}
}
.rme-empty{
  background:#fff4f4;
  border:1px solid #f1c4c4;
  padding:14px;
  border-radius:12px;
}
@media (max-width: 1024px){
  .rme-grid{grid-template-columns:1fr}
}
@media (max-width: 767px){
  .rme-heading{font-size:26px}
  .rme-ticket-content strong{font-size:22px}
  .rme-ticket-content em{font-size:14px}
}


.rme-btn-ticket.is-reminder{
  background:#2c5f76;
  color:#fff;
  pointer-events:auto;
  cursor:pointer;
}

.rme-btn-ticket.is-reminder:hover{
  opacity:.92;
}

.rme-btn-ticket.is-reminder{pointer-events:auto !important;cursor:pointer !important;}

.rme-countdown{
  margin-top:6px;
  font-weight:700;
  font-size:14px;
  color:#2c5f76;
}
.rme-details.is-disabled .rme-countdown{
  color:#555;
}

.rme-countdown{
  margin-top:6px;
  font-weight:700;
  font-size:14px;
  color:#2c5f76;
}
.rme-details.is-disabled .rme-countdown{
  color:#555;
}
.rme-details.is-disabled{
  background:#d8d8d8;
  border-color:#9a9a9a;
  opacity:.95;
}
.rme-details.is-disabled .rme-ticket-content{
  background:#ececec;
  border-color:#9a9a9a;
  color:#333;
}

.rme-details.is-hidden{display:none;}

/* Elementor editor preview fix */
.elementor-editor-active .rme-widget,
.elementor-preview .rme-widget{
  width:100%;
}


/* Client color preset */
.rme-widget{
  color:#312a2c;
}
.rme-details{
  background:#faf6eb;
  color:#312a2c;
}
.rme-detail-item,
.rme-detail-text,
.rme-countdown,
.rme-ticket-content,
.rme-ticket-content strong,
.rme-ticket-content em{
  color:#312a2c;
}
.rme-ticket-content{
  background:#faf6eb;
  border-color:#2f959d;
}
.rme-btn-ticket,
.rme-btn-calendar{
  background:#3cb9c9;
  color:#ffffff;
  border:2px solid #2f959d;
}
.rme-btn-gps{
  color:#3cb9c9;
  border-color:#2f959d;
}
.rme-details a{
  color:#3cb9c9;
}


/* PC layout fix: keep map and panel side by side */
.rme-grid{
  grid-template-columns:minmax(320px,1fr) minmax(320px,480px);
  align-items:start;
}
.rme-map-col{
  min-width:0;
}
.rme-list-col{
  width:auto !important;
  max-width:100%;
  min-width:320px;
  justify-self:start;
  align-self:start;
}
.rme-details{
  width:100%;
  max-width:480px;
  margin:0;
  box-sizing:border-box;
}
@media (max-width: 1024px){
  .rme-grid{
    grid-template-columns:1fr !important;
  }
  .rme-list-col{
    min-width:0;
    width:100% !important;
  }
  .rme-details{
    max-width:100%;
  }
}





/* Alignment defaults */
.rme-widget{
  margin-left:auto;
  margin-right:auto;
}
.rme-grid{
  justify-content:center;
}
.rme-map-col{
  justify-self:center;
}


/* v1.16.2 space for "Czytaj więcej" */
.rme-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:stretch !important;
}

.rme-actions .rme-btn{
  flex:1 1 calc(50% - 10px);
  max-width:100%;
}

.rme-actions .rme-btn-more-info{
  flex:1 1 100%;
  width:100%;
}

.rme-actions .rme-btn{
  min-width:140px;
  white-space:normal !important;
  word-break:break-word;
}

@media (max-width: 767px){
  .rme-actions .rme-btn{
    flex:1 1 100%;
    width:100%;
  }
}


/* v1.16.3 Czytaj więcej field */
.rme-btn-more-info,
.rme-btn-more-info:link,
.rme-btn-more-info:visited{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  text-decoration:none;
}


/* v1.16.5 FIX button background */
.rme-btn,
.rme-btn-more-info,
.rme-btn-ticket,
.rme-btn-calendar{
    background:#3cb9c4 !important;
    color:#ffffff !important;
    border:2px solid #2f959d !important;
}

.rme-btn-more-info{
    margin-top:10px;
}

.rme-btn:hover,
.rme-btn-more-info:hover{
    background:#2f959d !important;
    color:#ffffff !important;
}
