/* ==========================================================================
   Fpay Dark/Blue Theme
   Applies site-wide (loaded on every page via template.twig / page_ptc_view.twig)
   ========================================================================== */

:root{
  --fp-bg:#050914;
  --fp-bg-soft:#080d1a;
  --fp-surface:#0e1526;
  --fp-surface-2:#131c33;
  --fp-border:rgba(59,130,246,.28);
  --fp-border-strong:rgba(59,130,246,.55);
  --fp-orange:#2f6fed;
  --fp-orange-2:#5eb8ff;
  --fp-orange-grad:linear-gradient(90deg,#2f6fed 0%, #5eb8ff 100%);
  --fp-text:#eef3fb;
  --fp-text-muted:#8a9bc4;
  --fp-radius:16px;
  --fp-radius-pill:999px;
}

html{background:var(--fp-bg);}

body{
  background-color:var(--fp-bg);
  color:var(--fp-text);
  position:relative;
  min-height:100vh;
  overflow-x:hidden;
}

/* Decorative diagonal ribbons + dot grid, same on every page, non-interactive */
body::before,
body::after{
  content:"";
  position:fixed;
  top:0;
  width:340px;
  height:340px;
  pointer-events:none;
  z-index:0;
  opacity:.55;
}
body::before{
  left:0;
  background:
    repeating-linear-gradient(135deg,
      rgba(47,111,237,.16) 0px, rgba(47,111,237,.16) 2px,
      transparent 2px, transparent 26px);
  -webkit-mask-image:linear-gradient(135deg, #000 10%, transparent 70%);
  mask-image:linear-gradient(135deg, #000 10%, transparent 70%);
}
body::after{
  right:0;
  bottom:0;
  top:auto;
  background-image:radial-gradient(rgba(47,111,237,.45) 1.4px, transparent 1.4px);
  background-size:16px 16px;
  -webkit-mask-image:radial-gradient(circle at bottom right, #000 5%, transparent 60%);
  mask-image:radial-gradient(circle at bottom right, #000 5%, transparent 60%);
}

.page-section{
  position:relative;
  z-index:1;
  padding-top:2.75rem;
  padding-bottom:2rem;
}

/* extra dot grid accent, opposite corner, behind nav */
.page-section::before{
  content:"";
  position:absolute;
  top:-10px;
  right:0;
  width:220px;
  height:220px;
  pointer-events:none;
  z-index:-1;
  background-image:radial-gradient(rgba(47,111,237,.35) 1.2px, transparent 1.2px);
  background-size:14px 14px;
  -webkit-mask-image:radial-gradient(circle at top right, #000 5%, transparent 65%);
  mask-image:radial-gradient(circle at top right, #000 5%, transparent 65%);
}

a{color:var(--fp-orange-2);}
a:hover{color:var(--fp-orange);text-decoration:none;}

/* ---------------- Navbar ---------------- */
nav.navbar{
  background:rgba(10,10,15,.92) !important;
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--fp-border);
  padding-top:.85rem;
  padding-bottom:.85rem;
  position:relative;
  z-index:20;
}
.navbar-brand{
  font-weight:800;
  font-size:1.35rem;
  letter-spacing:.3px;
}
.navbar-brand .text-main{
  -webkit-text-fill-color:initial;
}
.navbar-nav .nav-link{
  color:var(--fp-text-muted) !important;
  font-weight:600;
  padding:.5rem .9rem !important;
}
.navbar-nav .nav-item.active .nav-link,
.navbar-nav .nav-link:hover{
  color:var(--fp-orange-2) !important;
}
.navbar-nav .nav-item.active .nav-link{
  border-bottom:2px solid var(--fp-orange);
}
.navbar-toggler{border-color:var(--fp-border) !important;}
.navbar-toggler svg{color:var(--fp-orange-2);stroke:var(--fp-orange-2);}
.dropdown-menu{
  background:var(--fp-surface);
  border:1px solid var(--fp-border);
}
.dropdown-item{color:var(--fp-text) !important;}
.dropdown-item:hover,.dropdown-item:focus,.dropdown-item:active{
  background-color:rgba(47,111,237,.12) !important;
  color:var(--fp-orange-2) !important;
}

/* Login/Register + outline pill buttons */
.btn-outline.rounded-pill{
  border:1px solid var(--fp-border-strong) !important;
  color:var(--fp-orange-2) !important;
  background:transparent !important;
  font-weight:600;
  padding:.5rem 1.2rem;
}
.btn-outline.rounded-pill:hover{
  background:var(--fp-orange-grad) !important;
  color:#ffffff !important;
  border-color:transparent !important;
  box-shadow:0 8px 20px rgba(47,111,237,.3);
}

/* ---------------- Buttons ---------------- */
.btn{border-radius:12px;font-weight:600;}
.btn,
.btn-outline.rounded-pill,
.nav-link.b-b,
a.badge{
  transition:transform .2s cubic-bezier(.4,0,.2,1), box-shadow .25s cubic-bezier(.4,0,.2,1), filter .2s ease, background-position .5s ease, border-color .2s ease;
}
.btn:hover,
.btn-outline.rounded-pill:hover,
.nav-link.b-b:hover,
a.badge:hover{
  transform:translateY(-2px);
}
.btn:active,
.btn-outline.rounded-pill:active,
.nav-link.b-b:active,
a.badge:active{
  transform:translateY(0) scale(.98);
  filter:brightness(.94);
}
.btn:focus,
.btn-outline.rounded-pill:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(47,111,237,.28) !important;
}
.btn-primary{
  background:var(--fp-orange-grad) !important;
  border:none !important;
  color:#ffffff !important;
  box-shadow:0 6px 18px rgba(47,111,237,.25) !important;
}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active{
  filter:brightness(1.08);
  background:var(--fp-orange-grad) !important;
  color:#ffffff !important;
  box-shadow:0 10px 26px rgba(47,111,237,.4) !important;
}
.btn-primary.p-ss,.btn-primary.p-s{
  background-image:var(--fp-orange-grad) !important;
  color:#ffffff !important;
}
.btn-block{border-radius:12px;}
.btn-success{background:#1ec773 !important;border:none !important;}
.btn-success:hover{filter:brightness(1.08);box-shadow:0 8px 20px rgba(30,199,115,.3) !important;}

/* pill-style link "buttons" used in tables (Add Clicks / Pause / Resume / Delete) */
a.badge{cursor:pointer;}
a.badge:hover{box-shadow:0 4px 14px rgba(47,111,237,.25);}

/* ---------------- Hero / login card ---------------- */
.title-section{font-weight:800;color:var(--fp-text) !important;}
.title-section .marked.text-main{
  -webkit-text-fill-color:initial !important;
  background:none !important;
  color:var(--fp-orange-2) !important;
}

.form-control{
  background:var(--fp-surface) !important;
  border:1px solid var(--fp-border) !important;
  color:var(--fp-text) !important;
  border-radius:10px;
  height:calc(2.5em + .9rem);
}
.form-control::placeholder{color:var(--fp-text-muted) !important;}
.form-control:focus{
  border-color:var(--fp-border-strong) !important;
  box-shadow:0 0 0 3px rgba(47,111,237,.18) !important;
}
.input-group-append .btn{border-radius:0 10px 10px 0 !important;}
.input-group .form-control{border-radius:10px 0 0 10px;}

/* ---------------- Pills nav row (View Ads / Shortlinks / Advertise ...) --- */
.nav-pills{flex-wrap:wrap;}
.nav-link.b-b{
  color:var(--fp-orange-2) !important;
  border:1px solid var(--fp-border) !important;
  border-radius:var(--fp-radius-pill) !important;
  background:var(--fp-surface);
}
.nav-link.b-b i{color:var(--fp-orange-2) !important;}
.nav-link.b-b:hover{
  border-color:var(--fp-border-strong) !important;
  color:var(--fp-orange-2) !important;
}
.p-pills.i-pill,
.p-s,.active.p-pills{
  border-radius:var(--fp-radius-pill) !important;
}
.p-s,.active.p-pills,.i-s,.active.i-pills{
  background:var(--fp-surface-2) !important;
  background-image:none !important;
  border:1.5px solid var(--fp-orange) !important;
  color:#fff !important;
  box-shadow:0 4px 14px rgba(47,111,237,.18);
}
.p-s i,.active.p-pills i,.i-s i,.active.i-pills i{color:#fff !important;}
.dropdown-item.active{
  background:var(--fp-surface-2) !important;
  background-image:none !important;
  border:1px solid var(--fp-orange) !important;
  color:#fff !important;
}
.nav-item.active a,
.nav-link.cus1,.nav-link.cus4,.txt-main{color:var(--fp-orange-2) !important;}
.nav-link.cus1:hover,.nav-link.cus4:hover{color:var(--fp-orange) !important;}
.text-x{color:var(--fp-orange-2) !important;}
.badge-warning-btn{background:var(--fp-surface-2) !important;color:var(--fp-orange-2) !important;border:1px solid var(--fp-border) !important;}

/* ---------------- Cards ---------------- */
.card{
  background:var(--fp-surface) !important;
  border:1px solid var(--fp-border) !important;
  border-radius:var(--fp-radius) !important;
  color:var(--fp-text);
}
.card-primary{
  border:1px solid var(--fp-border) !important;
  transition:.25s cubic-bezier(.4,0,.2,1);
}
.card-primary:hover{
  border-color:var(--fp-border-strong) !important;
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(47,111,237,.12);
}
.card-primary .card-title,
.text-dark-main{
  color:var(--fp-text) !important;
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:center;
  flex-wrap:wrap;
}
.fp-card-icon{
  width:34px;
  height:34px;
  object-fit:contain;
  border-radius:50%;
  background:var(--fp-surface-2);
  border:1px solid var(--fp-border);
  padding:5px;
}
.text-reward{color:var(--fp-orange-2) !important;font-weight:700;}
.text-history{color:var(--fp-text-muted) !important;}
.text-primary,label{color:var(--fp-orange-2) !important;}
.text-ltc,.text-ltc2,.text-main,.modal-title{
  -webkit-text-fill-color:initial !important;
  background:none !important;
  color:var(--fp-orange-2) !important;
}
.card-balance{
  background:var(--fp-surface) !important;
  border:1px solid var(--fp-border-strong) !important;
  box-shadow:0 8px 24px rgba(47,111,237,.1) !important;
}
.card-deposit-balance{
  background:var(--fp-surface) !important;
  border:1px solid var(--fp-border-strong) !important;
  box-shadow:0 8px 24px rgba(47,111,237,.1) !important;
}
.card-balance,.card-deposit-balance{color:var(--fp-orange-2) !important;}
.card-balance .card-title,.card-deposit-balance .card-title{color:var(--fp-orange-2) !important;}
.card-balance .card-title::before,.card-deposit-balance .card-title::before{content:none;}
.card-balance .balance-text,.card-deposit-balance .balance-text{color:var(--fp-orange-2) !important;}
.card-balance #refresh,.card-deposit-balance #refresh{color:var(--fp-orange-2) !important;}

.color-1{
  border-bottom:1px solid var(--fp-border);
  padding-bottom:.75rem;
}
.color-1 p,hr{color:var(--fp-orange-2) !important;border-color:var(--fp-border) !important;}

/* ---------------- Badges ---------------- */
.badge{border-radius:999px;font-weight:700;}
.badge-info{background:rgba(47,111,237,.15) !important;color:var(--fp-orange-2) !important;}
.badge-pending{background:#3a2a10 !important;color:#ffc24d !important;}
.badge-send{background:rgba(30,199,115,.15) !important;color:#1ec773 !important;}
.badge-danger{background:rgba(255,80,80,.15) !important;color:#ff6b6b !important;}
.badge-warning{background:rgba(47,111,237,.15) !important;color:var(--fp-orange-2) !important;}
.badge-warning-btn{background:var(--fp-surface-2) !important;color:var(--fp-orange-2) !important;border:1px solid var(--fp-border);}

/* ---------------- Alerts ---------------- */
.alert-primary{
  background:rgba(47,111,237,.08) !important;
  color:var(--fp-text) !important;
  border-color:var(--fp-border) !important;
}
.alert-warning{
  background:rgba(47,111,237,.1) !important;
  color:var(--fp-orange-2) !important;
  border-color:var(--fp-border) !important;
}
.alert-ref{
  background:rgba(30,199,115,.08) !important;
  color:#1ec773 !important;
  border-color:rgba(30,199,115,.3) !important;
}
code{color:var(--fp-orange-2) !important;}

/* ---------------- Tables ---------------- */
.table{color:var(--fp-text);}
.table thead th{border-color:var(--fp-border) !important;}
.table td,.table th{border-color:rgba(255,255,255,.06) !important;}

/* ---------------- Modals ---------------- */
.modal-content{
  background:var(--fp-surface) !important;
  border:1px solid var(--fp-border) !important;
  color:var(--fp-text);
}
.modal-header,.modal-footer{border-color:var(--fp-border) !important;}
button.close{color:var(--fp-orange-2) !important;}

/* ---------------- SweetAlert2 ---------------- */
.swal2-popup{
  background:var(--fp-surface) !important;
  color:var(--fp-text) !important;
  border:1px solid var(--fp-border) !important;
}
.swal2-title,.swal2-html-container{color:var(--fp-text) !important;}
.swal2-confirm{
  background:var(--fp-orange-grad) !important;
  color:#ffffff !important;
  border:none !important;
  box-shadow:none !important;
}
.swal2-confirm:active,.swal2-confirm:focus,.swal2-confirm:hover{
  box-shadow:0 0 0 2px rgba(47,111,237,.35) !important;
}
.swal2-cancel{
  background:var(--fp-surface-2) !important;
  color:var(--fp-orange-2) !important;
  border:1px solid var(--fp-border) !important;
}
.swal2-icon.swal2-success [class^='swal2-success-line']{background-color:#1ec773 !important;}
.swal2-icon.swal2-success .swal2-success-ring{border-color:rgba(30,199,115,.3) !important;}
.swal2-icon.swal2-error{border-color:#ff6b6b !important;}
.swal2-icon.swal2-error [class^='swal2-x-mark-line']{background-color:#ff6b6b !important;}
.swal2-icon.swal2-warning{border-color:var(--fp-orange) !important;color:var(--fp-orange) !important;}

/* ---------------- Landing (logged-out) sections ---------------- */
.fp-landing-section{margin-top:1.75rem;}
.fp-section-title{
  font-weight:800;
  font-size:1.35rem;
  color:var(--fp-text);
  margin-bottom:1.25rem;
}
.fp-section-title span{color:var(--fp-orange-2);}

.fp-how-card{
  background:var(--fp-surface);
  border:1px solid var(--fp-border);
  border-radius:var(--fp-radius);
  padding:1.5rem 1.15rem;
  height:100%;
  transition:.2s ease;
}
.fp-how-card:hover{border-color:var(--fp-border-strong);transform:translateY(-2px);}
.fp-how-icon{
  width:50px;height:50px;
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:var(--fp-orange-grad);
  color:#ffffff;
  font-size:1.2rem;
  margin:0 auto 1rem;
}
.fp-how-card h5{color:var(--fp-text);font-weight:700;margin-bottom:.5rem;}
.fp-how-card p{color:var(--fp-text-muted);font-size:.92rem;margin-bottom:0;}

.fp-stats-row{
  background:var(--fp-surface);
  border:1px solid var(--fp-border);
  border-radius:var(--fp-radius);
  padding:1.5rem .5rem;
}
.fp-stat{text-align:center;padding:.5rem 1rem;}
.fp-stat .fp-stat-num{
  font-weight:800;font-size:1.6rem;
  color:transparent;
  background:var(--fp-orange-grad);
  -webkit-background-clip:text;background-clip:text;
}
.fp-stat .fp-stat-label{color:var(--fp-text-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;}

/* ---------------- Footer ---------------- */
.page-footer{
  border-top:1px solid var(--fp-border);
  background:var(--fp-bg-soft);
  padding:1.25rem 0;
  position:relative;
  z-index:1;
}
.page-footer #copyright{
  color:var(--fp-text-muted);
  margin-bottom:0;
}
.page-footer #copyright a{color:var(--fp-orange-2);}
.footer-links{
  display:flex;
  gap:1.25rem;
  justify-content:flex-end;
  flex-wrap:wrap;
  margin:0;
  padding:0;
  list-style:none;
}
.footer-links a{
  color:var(--fp-text-muted);
  font-size:.92rem;
  font-weight:600;
}
.footer-links a:hover{color:var(--fp-orange-2);}

@media (max-width:767px){
  .footer-links{justify-content:center;margin-top:.5rem;}
  .page-footer .text-md-left{text-align:center !important;}
}

/* ---------------- Floating corner ad (slider) ---------------- */
.fp-float-ad{
  position:fixed;
  right:18px;
  bottom:18px;
  width:300px;
  max-width:calc(100vw - 24px);
  z-index:1040;
  animation:fpFloatIn .6s cubic-bezier(.16,.84,.44,1) both;
}
@keyframes fpFloatIn{
  from{ transform:translate(40px, 60px) scale(.9); opacity:0; }
  to{ transform:translate(0,0) scale(1); opacity:1; }
}
.fp-float-ad--hide{
  animation:fpFloatOut .35s ease forwards;
}
@keyframes fpFloatOut{
  to{ transform:translate(40px, 60px) scale(.9); opacity:0; }
}
.fp-float-ad .fp-ad-content{
  background:transparent;
  border:none;
  border-radius:var(--fp-radius);
  box-shadow:0 16px 36px rgba(0,0,0,.55);
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  max-width:300px;
  aspect-ratio:300/250;
  height:auto;
  margin:0 auto;
  overflow:hidden;
}
.fp-float-ad .fp-ad-content > *{
  width:100% !important;
  height:100% !important;
  max-width:100%;
}
.fp-float-ad .fp-ad-content img,
.fp-float-ad .fp-ad-content iframe,
.fp-float-ad .fp-ad-content a img{
  width:100% !important;
  height:100% !important;
  max-width:100%;
  display:block;
  object-fit:cover;
  border-radius:var(--fp-radius);
}
.fp-float-ad .fp-ad-blocked{
  background:var(--fp-surface);
  border:1px solid var(--fp-border-strong);
  border-radius:var(--fp-radius);
  width:100%;
  max-width:300px;
  aspect-ratio:300/250;
  height:auto;
  margin:0 auto;
}
.fp-float-ad-close{
  position:absolute;
  top:-28px;
  left:0;
  width:22px;
  height:22px;
  border-radius:50%;
  background:var(--fp-surface-2);
  border:1px solid var(--fp-orange);
  color:var(--fp-orange-2);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:.65rem;
  cursor:pointer;
  opacity:0;
  pointer-events:none;
  transition:opacity .3s ease, transform .2s ease;
  z-index:2;
  box-shadow:0 4px 10px rgba(0,0,0,.45);
}
.fp-float-ad-close--visible{
  opacity:1;
  pointer-events:auto;
}
.fp-float-ad-close:hover{
  transform:scale(1.1);
  background:var(--fp-orange);
  color:#ffffff;
}

@media (max-width:576px){
  .fp-float-ad{
    right:10px;
    bottom:10px;
    left:10px;
    width:auto;
    max-width:none;
  }
  .fp-float-ad-close{
    top:-28px;
    left:0;
  }
}

/* ---------------- Ad-slot VPN/Proxy block message ---------------- */
.fp-ad-slot{
  margin-top:2rem;
  margin-bottom:2rem;
}
.fp-ad-blocked{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:60px;
  background:var(--fp-surface);
  border:1px dashed var(--fp-border);
  border-radius:var(--fp-radius);
  color:var(--fp-text-muted);
  font-size:.9rem;
  font-weight:600;
  padding:14px;
}
.fp-ad-blocked i{color:var(--fp-orange);}

.fp-daily-bonus-status{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:56px;
  background:var(--fp-surface-2);
  border:1px solid var(--fp-border-strong);
  border-radius:var(--fp-radius);
  color:var(--fp-text);
  font-size:.9rem;
  font-weight:600;
  padding:14px;
}
.fp-daily-bonus-status i{color:var(--fp-orange);}

/* ---------------- Scrollbar ---------------- */
::-webkit-scrollbar{
  width:10px;
  height:10px;
}
::-webkit-scrollbar-track{
  background:var(--fp-bg-soft);
}
::-webkit-scrollbar-thumb{
  background:var(--fp-orange);
  border-radius:999px;
  border:2px solid var(--fp-bg-soft);
}
::-webkit-scrollbar-thumb:hover{
  background:var(--fp-orange-2);
}
html{
  scrollbar-width:thin;
  scrollbar-color:var(--fp-orange) var(--fp-bg-soft);
}

/* ---------------- Articles page ---------------- */
.fp-articles-thumb{
  width:100%;
  aspect-ratio:16/7;
  object-fit:cover;
  border-radius:var(--fp-radius);
  border:1px solid var(--fp-border);
  margin-bottom:1.25rem;
  display:block;
}
.fp-articles-icon{
  width:56px;
  height:56px;
  border-radius:50%;
  background:var(--fp-orange-grad);
  color:#ffffff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.5rem;
  margin:0 auto;
  box-shadow:0 8px 20px rgba(47,111,237,.3);
}
.fp-articles-steps{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:wrap;
}
.fp-articles-step{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  min-width:70px;
}
.fp-articles-step-num{
  width:38px;
  height:38px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--fp-surface);
  border:2px solid var(--fp-border);
  color:var(--fp-text-muted);
  font-size:.9rem;
  transition:.25s ease;
}
.fp-articles-step-label{
  font-size:.75rem;
  color:var(--fp-text-muted);
  font-weight:600;
}
.fp-articles-step--done .fp-articles-step-num{
  background:var(--fp-orange-grad);
  border-color:transparent;
  color:#ffffff;
}
.fp-articles-step--done .fp-articles-step-label{
  color:var(--fp-orange-2);
}
.fp-articles-step--active .fp-articles-step-num{
  border-color:var(--fp-orange);
  color:var(--fp-orange-2);
  box-shadow:0 0 0 4px rgba(47,111,237,.15);
}
.fp-articles-step-line{
  width:36px;
  height:2px;
  background:var(--fp-border);
  margin-bottom:22px;
}
.fp-articles-step-line--done{
  background:var(--fp-orange);
}

@media (max-width:480px){
  .fp-articles-icon{width:46px;height:46px;font-size:1.2rem;}
  .fp-articles-step{min-width:56px;}
  .fp-articles-step-num{width:32px;height:32px;font-size:.75rem;}
  .fp-articles-step-label{font-size:.65rem;}
  .fp-articles-step-line{width:20px;margin-bottom:20px;}
  .card.card-primary.p-4.p-md-5{padding:1.5rem !important;}
}
/* ---------------- Ad-wall: banner-click-then-continue modal ---------------- */
.fp-ad-modal-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.78);
  z-index:2000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:16px;
}
.fp-ad-modal-overlay--active{
  display:flex;
}
.fp-ad-modal-card{
  background:var(--fp-surface);
  border:1px solid var(--fp-border-strong);
  border-radius:var(--fp-radius);
  box-shadow:0 20px 60px rgba(0,0,0,.6);
  padding:26px;
  max-width:800px;
  width:100%;
  max-height:90vh;
  overflow-y:auto;
}
.fp-ad-modal-banners{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  justify-content:center;
}
.fp-ad-modal-banner{
  background:var(--fp-surface-2);
  border:1px solid var(--fp-border);
  border-radius:10px;
  padding:8px;
  max-width:100%;
  overflow-x:auto;
  display:flex !important;
  align-items:center;
  justify-content:center !important;
  text-align:center;
}
.fp-ad-modal-banner--wide{
  width:100%;
}
.fp-ad-modal-banner-hidden{
  display:none !important;
}
.fp-ad-modal-banner > *{
  margin-left:auto !important;
  margin-right:auto !important;
}
.fp-ad-modal-banner iframe,
.fp-ad-modal-banner ins{
  max-width:100%;
}

@media (max-width:480px){
  .fp-ad-modal-card{padding:16px;}
  .fp-ad-modal-banners{gap:10px;}
}

/* ---------------- PTP: floating top-right timer/result card ---------------- */
.fp-ptp-float-card{
  position:fixed;
  top:16px;
  right:16px;
  z-index:1500;
  width:200px;
  max-width:calc(100vw - 32px);
  background:var(--fp-surface);
  border:1px solid var(--fp-border-strong);
  border-radius:var(--fp-radius);
  box-shadow:0 12px 30px rgba(0,0,0,.5);
  padding:14px;
  text-align:center;
}
.fp-ptp-float-label{
  color:var(--fp-text);
  font-size:.82rem;
  font-weight:600;
  line-height:1.4;
}
.fp-ptp-float-timer{
  font-size:1.8rem;
  font-weight:800;
  color:var(--fp-orange-2);
  margin-top:4px;
}

@media (max-width:480px){
  .fp-ptp-float-card{
    top:10px;
    right:10px;
    width:170px;
    padding:10px;
  }
  .fp-ptp-float-timer{font-size:1.4rem;}
}