/* Premium Ad Overlay Rotator */

.paor-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:99999;
  display:flex;
  justify-content:center;
  opacity:0;
  transition:opacity .35s ease;
}

.paor-overlay.paor-showing{ opacity:1; }

.paor-pos-bottom{ align-items:flex-end; padding-bottom:16px; }
.paor-pos-center{ align-items:center; padding-bottom:0; }
.paor-pos-top{ align-items:flex-start; padding-top:16px; }

.paor-backdrop{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.72);
  opacity:0;
  transition:opacity .35s ease;
}

.paor-overlay.paor-showing .paor-backdrop{ opacity:1; }

.paor-box{
  width:min(var(--paor-maxw,728px), calc(100% - 24px));
  height:var(--paor-maxh,90px);
  border-radius:12px;
  overflow:hidden;
  background:rgba(0,0,0,.35);
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  position:relative;
}

.paor-progress{
  position:absolute;
  left:10px;
  right:10px;
  bottom:10px;
  height:4px;
  background:rgba(255,255,255,.25);
  border-radius:999px;
  overflow:hidden;
}

.paor-progress-bar{
  width:0%;
  height:100%;
  background:#ff3b3b;
}

.paor-ad-iframe, .paor-ad-direct{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  background:transparent;
}

.paor-message{
  position:absolute;
  left:12px;
  right:12px;
  bottom:18px;
  color:rgba(255,255,255,.92);
  font-family:Arial, sans-serif;
  font-size:14px;
  line-height:1.2;
  text-shadow:0 2px 10px rgba(0,0,0,.6);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  pointer-events:none;
}

.paor-message .paor-countdown{
  font-variant-numeric:tabular-nums;
  font-weight:700;
}


/* --- v1.1.3 layout fixes: reserve UI area, prevent overlap/cut --- */
.paor-box{
  height: var(--paor-boxh, calc(var(--paor-maxh,90px) + var(--paor-ui-h,34px)));
}

.paor-ad-iframe, .paor-ad-direct{
  /* Reserve bottom area for message + progress */
  bottom: var(--paor-ui-h,34px);
  z-index: 1;
}

.paor-progress{
  z-index: 3;
}

.paor-message{
  z-index: 3;
}

/* Keep progress/message inside reserved area */
.paor-progress{
  bottom: 12px;
}

.paor-message{
  bottom: 18px;
}

/* Make the ad iframe content center nicely if it renders smaller */
.paor-ad-iframe{
  background: transparent;
}

/* If any ad leaks huge size, clip inside the ad area */
.paor-box{
  position: relative;
}


/* --- v1.1.4: one-ad-visible + UI abaixo do anúncio --- */
.paor-box{
  display:flex;
  flex-direction:column;
  height: var(--paor-boxh, calc(var(--paor-maxh,90px) + var(--paor-ui-h,40px)));
}

.paor-ad-area{
  position: relative;
  flex: 1 1 auto;
  overflow: hidden;
}

.paor-ui-area{
  position: relative;
  flex: 0 0 var(--paor-ui-h,40px);
  padding: 6px 10px 8px 10px;
}

.paor-progress{
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 6px;
}

.paor-message{
  position: absolute;
  left: 12px;
  right: 12px;
  top: 4px;
  bottom: auto;
}

/* Ad iframe fills only ad area */
.paor-ad-iframe, .paor-ad-direct{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  bottom:auto;
  z-index:1;
}


/* --- v1.2.1: VAST custom player (controles) --- */
/* During ad, block interaction with underlying player and allow controls */
.paor-overlay{ pointer-events: auto; }
.paor-backdrop{ pointer-events: auto; }

.paor-vast-player{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background: transparent;
}

.paor-vast-video{
  width:100%;
  height:100%;
  object-fit: contain;
  background: transparent;
}

.paor-vast-controls{
  position:absolute;
  left:10px;
  right:10px;
  bottom:10px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border-radius:12px;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(6px);
}

.paor-btn{
  appearance:none;
  border:0;
  background: rgba(255,255,255,.14);
  color:#fff;
  border-radius:10px;
  padding:8px 10px;
  font-size:13px;
  line-height:1;
  cursor:pointer;
}

.paor-btn:active{ transform: scale(.98); }

.paor-vast-time{
  color: rgba(255,255,255,.9);
  font-family: Arial, sans-serif;
  font-size: 12px;
  min-width: 70px;
  text-align:right;
  font-variant-numeric: tabular-nums;
}

.paor-vast-progress{
  flex: 1 1 auto;
  height: 6px;
  background: rgba(255,255,255,.2);
  border-radius: 999px;
  overflow: hidden;
}

.paor-vast-progress > i{
  display:block;
  height:100%;
  width:0%;
  background: rgba(255,255,255,.9);
}


/* --- v1.2.7: Circular countdown ring (top-center) --- */
.paor-ui-area{ display:none !important; }
.paor-box{ height: var(--paor-maxh,250px) !important; }

.paor-ring{
  position:absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%) translateY(-6px);
  width: 44px;
  height: 44px;
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
  z-index: 10;
  pointer-events: none;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.45));
}

.paor-overlay.paor-showing .paor-ring{
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.paor-ring svg{ width:100%; height:100%; display:block; }
.paor-ring .paor-ring-bg{
  stroke: rgba(255,255,255,.18);
  stroke-width: 5.5;
  fill: rgba(0,0,0,.18);
}
.paor-ring .paor-ring-fg{
  stroke: rgba(255,255,255,.95);
  stroke-width: 5.5;
  fill: transparent;
  stroke-linecap: round;
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
}


.paor-overlay.paor-showing .paor-ring-wrap{
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* Keep ring itself inside wrap */
.paor-ring{ position: relative; top:auto; left:auto; transform:none; opacity:1; transition:none; filter:none; }

.paor-ring-caption{
  max-width: min(420px, 70vw);
  color: rgba(255,255,255,.95);
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1.15;
  padding: 8px 10px;
  border-radius: 14px;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(6px);
  opacity: 0;
  transform: translateY(-2px);
  transition: opacity .25s ease, transform .25s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.paor-ring-caption.paor-cap-show{
  opacity: 1;
  transform: translateY(0);
}

.paor-ring-caption.paor-cap-hide{
  opacity: 0;
  transform: translateY(-2px);
}


/* --- v1.2.9: Caption bottom-left (fade in/out, hide 4s before end) --- */
.paor-caption-bl{
  position:absolute;
  left: 12px;
  bottom: 12px;
  max-width: min(520px, 82vw);
  color: rgba(255,255,255,.95);
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1.2;
  padding: 9px 12px;
  border-radius: 14px;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(6px);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
  z-index: 10;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.45));
}

.paor-caption-bl.paor-cap-show{
  opacity: 1;
  transform: translateY(0);
}

.paor-caption-bl.paor-cap-hide{
  opacity: 0;
  transform: translateY(6px);
}


/* --- v1.3.0: Hard lock ring position (top-center) --- */
.paor-ring{
  position:absolute !important;
  top: 10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin: 0 !important;
}


/* --- v1.3.1: Make ads non-clickable (no clickthrough) --- */
.paor-ad-area,
.paor-ad-area *{
  pointer-events: none !important;
}

/* Keep overlay/backdrop catching clicks so user doesn't interact with underlying player */
.paor-overlay,
.paor-backdrop{
  pointer-events: auto !important;
}


/* --- v1.3.3: VAST mute toggle button (SVG) --- */
.paor-mute-btn{
  position:absolute;
  top: 10px;
  right: 10px;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 14px;
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(6px);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  pointer-events: auto !important;
  z-index: 12;
  transition: transform .18s ease, background .18s ease, opacity .22s ease;
  opacity: 0;
  transform: translateY(-6px);
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.45));
}
.paor-overlay.paor-showing .paor-mute-btn{
  opacity: 1;
  transform: translateY(0);
}
.paor-mute-btn:active{ transform: translateY(0) scale(.98); }
.paor-mute-btn svg{ width: 20px; height: 20px; display:block; }
.paor-mute-btn .paor-ic{ fill: rgba(255,255,255,.95); }
.paor-mute-btn:hover{ background: rgba(0,0,0,.45); }


/* --- v1.3.4: Ad count (YouTube-like) --- */
.paor-adcount{
  position:absolute;
  top: 10px;
  left: 12px;
  padding: 7px 10px;
  border-radius: 14px;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(6px);
  color: rgba(255,255,255,.95);
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1;
  z-index: 12;
  pointer-events: none;
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity .22s ease, transform .22s ease;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.45));
}
.paor-overlay.paor-showing .paor-adcount{
  opacity: 1;
  transform: translateY(0);
}

/* Ensure caption bottom-left still exists */
.paor-caption-bl{
  position:absolute;
  left: 12px;
  bottom: 12px;
  max-width: min(520px, 82vw);
  color: rgba(255,255,255,.95);
  font-family: Arial, sans-serif;
  font-size: 13px;
  line-height: 1.2;
  padding: 9px 12px;
  border-radius: 14px;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(6px);
  opacity: 0;
  transform: translateY(6px);
  transition: opacity .25s ease, transform .25s ease;
  pointer-events: none;
  z-index: 10;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  filter: drop-shadow(0 6px 14px rgba(0,0,0,.45));
}
.paor-caption-bl.paor-cap-show{ opacity: 1; transform: translateY(0); }
.paor-caption-bl.paor-cap-hide{ opacity: 0; transform: translateY(6px); }
