
/*
 * TripNestIQ Radar Dynamic Cinematic V1
 * Visual-only module for Radar search.
 * No Planner, Stripe, PDF, Email, API or result logic is changed.
 */
:root{
  --tnrd-green:#63efbd;
  --tnrd-blue:#64a9ff;
  --tnrd-text:#fff;
  --tnrd-muted:#d4dfeb;
}

#tnrd-overlay{
  position:fixed;
  inset:0;
  z-index:2147482000;
  overflow:hidden;
  color:var(--tnrd-text);
  background:#020914;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  opacity:0;
  visibility:hidden;
  transition:opacity .3s ease,visibility .3s ease;
}

#tnrd-overlay.tnrd-show{
  opacity:1;
  visibility:visible;
}

#tnrd-overlay .tnrd-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:brightness(.82) saturate(1.05) contrast(1.04);
}

#tnrd-overlay::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(2,8,16,.10),rgba(2,8,16,.30) 58%,rgba(2,8,16,.70)),
    linear-gradient(90deg,rgba(2,8,16,.48),rgba(2,8,16,.10) 48%,rgba(2,8,16,.40));
}

.tnrd-brand{
  position:absolute;
  z-index:3;
  top:30px;
  left:34px;
  display:flex;
  align-items:center;
  gap:12px;
}

.tnrd-logo{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#03131a;
  background:linear-gradient(135deg,var(--tnrd-green),#5ed9ff 60%,#766dff);
  box-shadow:0 0 35px rgba(95,230,204,.36);
  font-weight:1000;
}

.tnrd-brand strong{display:block;font-size:20px}
.tnrd-brand span{
  display:block;
  margin-top:3px;
  color:#c3d1df;
  font-size:10px;
  font-weight:800;
  letter-spacing:2px;
}

.tnrd-live{
  position:absolute;
  z-index:3;
  top:31px;
  right:34px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 14px;
  border:1px solid rgba(99,239,189,.34);
  border-radius:999px;
  background:rgba(3,17,27,.52);
  backdrop-filter:blur(12px);
  font-size:12px;
  font-weight:900;
  letter-spacing:1px;
}

.tnrd-live i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--tnrd-green);
  box-shadow:0 0 0 0 rgba(99,239,189,.55);
  animation:tnrdPulse 1.6s infinite;
}

.tnrd-radar{
  position:absolute;
  z-index:2;
  right:6%;
  top:11%;
  width:min(24vw,340px);
  aspect-ratio:1;
  overflow:hidden;
  border:1px solid rgba(99,239,189,.28);
  border-radius:50%;
  background:
    repeating-radial-gradient(circle,transparent 0 18%,rgba(99,239,189,.12) 18.5% 19%),
    linear-gradient(rgba(99,239,189,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(99,239,189,.10) 1px,transparent 1px);
  background-size:auto,50% 50%,50% 50%;
  box-shadow:inset 0 0 60px rgba(60,229,169,.08),0 0 55px rgba(60,229,169,.10);
}

.tnrd-radar::before{
  content:"";
  position:absolute;
  inset:50% 0 0 50%;
  transform-origin:0 0;
  background:conic-gradient(from 0deg,rgba(99,239,189,.62),rgba(99,239,189,.18) 18deg,transparent 60deg);
  animation:tnrdSweep 3.8s linear infinite;
}

.tnrd-blip{
  position:absolute;
  z-index:2;
  width:9px;
  height:9px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 8px #fff,0 0 18px var(--tnrd-green);
  animation:tnrdBlink 1.8s infinite;
}

.tnrd-b1{left:28%;top:57%}
.tnrd-b2{left:63%;top:24%;animation-delay:.4s}
.tnrd-b3{left:57%;top:68%;animation-delay:.8s}
.tnrd-b4{left:78%;top:49%;animation-delay:1.1s}

.tnrd-card{
  position:absolute;
  z-index:3;
  min-width:220px;
  padding:15px 16px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:17px;
  background:rgba(3,15,26,.60);
  backdrop-filter:blur(15px);
  box-shadow:0 18px 45px rgba(0,0,0,.24);
}

.tnrd-card small{
  display:block;
  margin-bottom:7px;
  color:var(--tnrd-green);
  font-size:9px;
  font-weight:1000;
  letter-spacing:1.5px;
}

.tnrd-card strong{display:block;font-size:14px}
.tnrd-card span{
  display:block;
  margin-top:5px;
  color:#b8c7d8;
  font-size:12px;
  line-height:1.45;
}

.tnrd-card-left{left:5.5%;top:40%}
.tnrd-card-right{right:5.5%;top:42%}

.tnrd-copy{
  position:absolute;
  z-index:3;
  left:50%;
  bottom:6%;
  width:min(940px,90vw);
  transform:translateX(-50%);
  text-align:center;
}

.tnrd-copy h1{
  margin:0;
  font-size:clamp(40px,4.8vw,72px);
  line-height:1;
  letter-spacing:-2.5px;
  text-shadow:0 8px 30px rgba(0,0,0,.55);
}

.tnrd-copy p{
  margin:14px auto 0;
  color:var(--tnrd-muted);
  font-size:17px;
  line-height:1.55;
}

.tnrd-progress{
  width:min(650px,80vw);
  height:7px;
  margin:24px auto 0;
  overflow:hidden;
  border-radius:99px;
  background:rgba(255,255,255,.15);
}

#tnrd-fill{
  height:100%;
  width:0;
  border-radius:99px;
  background:linear-gradient(90deg,var(--tnrd-green),#62dfff,var(--tnrd-blue));
  box-shadow:0 0 18px rgba(99,239,189,.48);
  transition:width 1s ease;
}

.tnrd-meta{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:14px;
}

.tnrd-chip{
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  background:rgba(4,15,27,.52);
  backdrop-filter:blur(12px);
  font-size:12px;
}

.tnrd-match{
  position:absolute;
  z-index:4;
  right:4%;
  bottom:13%;
  width:min(350px,88vw);
  padding:18px 20px;
  border:1px solid rgba(99,239,189,.30);
  border-radius:19px;
  background:rgba(3,15,26,.74);
  backdrop-filter:blur(17px);
  box-shadow:0 22px 60px rgba(0,0,0,.30);
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:.45s ease;
}

.tnrd-match.tnrd-show{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.tnrd-match small{
  display:block;
  margin-bottom:7px;
  color:var(--tnrd-green);
  font-size:9px;
  font-weight:1000;
  letter-spacing:1.6px;
}

.tnrd-match h2{
  margin:0;
  font-size:25px;
  letter-spacing:-.5px;
}

.tnrd-match p{
  margin:7px 0 0;
  color:#d0dce7;
  font-size:13px;
}

.tnrd-price{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:13px;
}

.tnrd-price span{
  padding:7px 9px;
  border-radius:10px;
  background:rgba(255,255,255,.07);
  color:#e9f2f8;
  font-size:11px;
  font-weight:700;
}

@keyframes tnrdSweep{to{transform:rotate(360deg)}}
@keyframes tnrdBlink{50%{opacity:.25;transform:scale(.7)}}
@keyframes tnrdPulse{70%{box-shadow:0 0 0 11px rgba(99,239,189,0)}}

@media(max-width:760px){
  .tnrd-brand{left:16px;top:16px}
  .tnrd-live{right:14px;top:17px;padding:8px 10px}
  .tnrd-radar{width:44vw;right:-5%;top:15%}
  .tnrd-card{min-width:155px;padding:11px}
  .tnrd-card-left{left:12px;top:42%}
  .tnrd-card-right{right:12px;top:29%}
  .tnrd-copy{bottom:4.5%;width:94vw}
  .tnrd-copy h1{font-size:39px;letter-spacing:-1.5px}
  .tnrd-copy p{font-size:14px}
  .tnrd-meta{gap:7px;flex-wrap:wrap}
  .tnrd-chip{padding:6px 9px;font-size:10px}
  .tnrd-match{right:12px;bottom:18%;width:calc(100% - 24px)}
}
