/* ============================================================
   IP3D - Popup "Site em Construcao"
   Arquivo isolado para facilitar remocao futura.
   Paleta alinhada a :root do ip3d-static.css
   ============================================================ */

.ip3d-wip-overlay{
  position:fixed; inset:0; z-index:9999;
  display:none;
  align-items:center; justify-content:center;
  padding:20px;
  background:radial-gradient(120% 120% at 50% 0%, rgba(7,22,44,.55), rgba(7,22,44,.82));
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  opacity:0;
  transition:opacity .35s ease;
}
.ip3d-wip-overlay.is-open{ display:flex; opacity:1; }

.ip3d-wip-modal{
  position:relative;
  width:min(560px, 100%);
  background:linear-gradient(180deg, #ffffff 0%, var(--soft,#f4f8ff) 100%);
  border:1px solid var(--line,#d8e5f8);
  border-radius:14px;
  box-shadow:0 40px 90px -40px rgba(7,22,44,.65);
  padding:40px 36px 32px;
  text-align:center;
  font-family:IP3DText, Arial, sans-serif;
  color:var(--ink,#07162c);
  transform:translateY(14px) scale(.98);
  transition:transform .35s cubic-bezier(.2,.8,.2,1);
  overflow:hidden;
}
.ip3d-wip-overlay.is-open .ip3d-wip-modal{ transform:translateY(0) scale(1); }

/* faixa decorativa superior com a cor principal */
.ip3d-wip-modal::before{
  content:"";
  position:absolute; left:0; right:0; top:0; height:5px;
  background:linear-gradient(90deg, var(--blue,#0b64d3), #00d5ff, var(--green,#15a56a));
}

/* badge / icone */
.ip3d-wip-badge{
  width:78px; height:78px; margin:0 auto 20px;
  display:grid; place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg, var(--blue,#0b64d3), var(--blue-dark,#0a4a9d));
  box-shadow:0 18px 40px -18px rgba(11,100,211,.7);
  color:#fff;
}
.ip3d-wip-badge svg{ width:40px; height:40px; display:block; }

.ip3d-wip-eyebrow{
  margin:0 0 8px;
  color:#00a8d6;
  font-size:11px; font-weight:900;
  text-transform:uppercase; letter-spacing:.28em;
}
.ip3d-wip-title{
  font-family:IP3DDisplay, IP3DText, Arial, sans-serif;
  font-size:clamp(26px, 4vw, 34px);
  line-height:1.05;
  margin:0 0 14px;
  color:var(--ink,#07162c);
}
.ip3d-wip-text{
  margin:0 auto 22px;
  max-width:440px;
  font-size:15px; line-height:1.65;
  color:var(--muted,#52647e);
}
.ip3d-wip-text strong{ color:var(--ink,#07162c); font-weight:900; }

/* lista de "o que falta" */
.ip3d-wip-list{
  list-style:none; margin:0 auto 26px; padding:0;
  max-width:420px; text-align:left;
  display:grid; gap:10px;
}
.ip3d-wip-list li{
  display:flex; align-items:center; gap:12px;
  padding:12px 14px;
  border:1px solid var(--line,#d8e5f8);
  border-radius:8px;
  background:#fff;
  font-size:13.5px; font-weight:700;
  color:var(--ink,#07162c);
}
.ip3d-wip-list svg{
  flex:0 0 auto;
  width:18px; height:18px;
  color:var(--green,#15a56a);
}

.ip3d-wip-actions{
  display:flex; gap:12px; justify-content:center; flex-wrap:wrap;
}
.ip3d-wip-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  min-height:46px; padding:0 24px;
  border:1px solid transparent; border-radius:8px;
  font-family:inherit; font-weight:900; font-size:14px;
  cursor:pointer; transition:.2s ease;
}
.ip3d-wip-btn.primary{
  background:var(--blue,#0b64d3); color:#fff;
}
.ip3d-wip-btn.primary:hover{ background:var(--blue-dark,#0a4a9d); }
.ip3d-wip-btn.ghost{
  background:transparent; color:var(--ink,#07162c);
  border-color:var(--line,#d8e5f8);
}
.ip3d-wip-btn.ghost:hover{ background:#fff; border-color:var(--blue,#0b64d3); color:var(--blue,#0b64d3); }

/* rodape do modal */
.ip3d-wip-foot{
  margin-top:22px; padding-top:18px;
  border-top:1px solid var(--line,#d8e5f8);
  font-size:11.5px; color:var(--muted,#52647e);
  letter-spacing:.04em;
}
.ip3d-wip-foot a{
  color:var(--blue,#0b64d3); font-weight:900;
  text-decoration:none;
}
.ip3d-wip-foot a:hover{ text-decoration:underline; }

/* botao de fechar (X) no canto */
.ip3d-wip-close{
  position:absolute; right:14px; top:14px;
  width:34px; height:34px;
  display:grid; place-items:center;
  border:0; border-radius:50%;
  background:rgba(7,22,44,.06); color:var(--muted,#52647e);
  cursor:pointer; transition:.2s ease;
}
.ip3d-wip-close:hover{ background:rgba(7,22,44,.12); color:var(--ink,#07162c); }
.ip3d-wip-close svg{ width:16px; height:16px; }

/* responsivo */
@media (max-width:520px){
  .ip3d-wip-modal{ padding:34px 22px 24px; }
  .ip3d-wip-list{ max-width:100%; }
  .ip3d-wip-btn{ width:100%; }
}

/* respeito a usuarios com prefers-reduced-motion */
@media (prefers-reduced-motion: reduce){
  .ip3d-wip-overlay,
  .ip3d-wip-modal,
  .ip3d-wip-overlay.is-open .ip3d-wip-modal{
    transition:none !important;
  }
}
