*{margin:0;padding:0;box-sizing:border-box}
body{
  background:#000;overflow:hidden;height:100vh;width:100vw;
  font-family:'VT323',monospace;color:#fff;
  cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 64 64'%3E%3Cpath d='M8 56L28 36L36 28L56 8' stroke='%23bbb' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3Ccircle cx='56' cy='8' r='6' fill='%23888'/%3E%3Ccircle cx='56' cy='8' r='2.5' fill='%23ff6b00'/%3E%3C/svg%3E") 4 28, auto;
}

/* CRT overlay */
.crt{
  position:fixed;inset:0;z-index:9999;pointer-events:none;
  background:
    linear-gradient(transparent 50%,rgba(0,0,0,.04) 50%),
    radial-gradient(ellipse at center,transparent 60%,rgba(0,0,0,.35) 100%);
  background-size:100% 2px,100% 100%;
}

/* CAMERA GRID */
.grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-template-rows:repeat(3,1fr);
  width:100vw;height:100vh;
  gap:2px;background:#111;
}

.cam{
  position:relative;overflow:hidden;background:#0a0a0a;
  border:1px solid #222;
}
.cam-feed{
  width:100%;height:100%;object-fit:cover;
  filter:contrast(1.2) saturate(.8);
  transition:filter .3s;
}
.cam:hover .cam-feed{
  filter:contrast(1.4) saturate(1.2) brightness(1.1);
}
.cam:hover{border-color:#39ff14;z-index:10}

.pit-feed{object-fit:contain;background:#111}

/* Camera UI overlay */
.cam-ui{
  position:absolute;top:6px;left:6px;z-index:5;
  display:flex;flex-direction:column;gap:1px;
}
.cam-label{
  font-family:'Press Start 2P',monospace;font-size:.4rem;
  color:#39ff14;text-shadow:0 0 6px #39ff14;
  letter-spacing:.1em;
}
.cam-loc{
  font-size:.7rem;color:rgba(255,255,255,.6);
}

/* REC indicator */
.cam-ts{
  position:absolute;top:6px;right:6px;z-index:5;
  font-family:'Press Start 2P',monospace;font-size:.35rem;
  color:#ff0000;animation:rec-blink 1s steps(1) infinite;
}
@keyframes rec-blink{0%,50%{opacity:1}51%,100%{opacity:0}}

/* Static noise on each cam */
.cam-static{
  position:absolute;inset:0;z-index:3;pointer-events:none;opacity:0;
  background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
  animation:static-flash 8s infinite;
}
@keyframes static-flash{0%,94%,100%{opacity:0}95%{opacity:.5}96%{opacity:0}97%{opacity:.3}98%{opacity:0}}

/* OVERLAY: RANSOM TITLE */
.overlay-title{
  position:fixed;z-index:100;
  top:50%;left:50%;transform:translate(-50%,-60%);
  display:flex;flex-wrap:wrap;justify-content:center;gap:3px;
  max-width:600px;
  filter:drop-shadow(0 4px 20px rgba(0,0,0,.8));
  pointer-events:none;
}
.overlay-title span{display:inline-block;padding:2px 10px;line-height:1}
.ot1{font-family:'Metal Mania',cursive;font-size:clamp(2.5rem,5vw,4rem);color:#000;background:#ff0;transform:rotate(-3deg);border:2px solid #000}
.ot2{font-family:'Special Elite',cursive;font-size:clamp(2rem,4vw,3rem);color:#fff;background:#c00;transform:rotate(2deg)}
.ot3{font-family:'Creepster',cursive;font-size:clamp(2.5rem,5vw,4rem);color:#000;background:#fff;transform:rotate(-1deg);border:2px solid #333}
.ot4{
  font-family:'Permanent Marker',cursive;font-size:clamp(3.5rem,8vw,6rem);
  color:#fff;background:#000;transform:rotate(2deg);
  text-shadow:0 0 15px #39ff14,0 0 30px #39ff14;
  animation:crack-glow 1.5s infinite alternate;
}
.ot5{font-family:'Press Start 2P',monospace;font-size:clamp(.7rem,1.5vw,1rem);color:#000;background:#39ff14;padding:5px 16px;transform:rotate(-2deg)}
@keyframes crack-glow{0%{text-shadow:0 0 15px #39ff14,0 0 30px #39ff14}100%{text-shadow:0 0 25px #ff6b00,0 0 50px #ff0000}}

/* CENTER INFO OVERLAY */
.center-info{
  position:fixed;z-index:150;
  top:50%;left:50%;transform:translate(-50%,-50%);
  margin-top:180px;
  display:flex;flex-direction:column;align-items:center;gap:10px;
  pointer-events:auto;
}
.ci-ca{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;
  background:rgba(0,0,0,.85);border:2px solid #39ff14;padding:8px 16px;
  box-shadow:0 0 20px rgba(57,255,20,.2);
}
.ca-lbl{color:#39ff14;font-weight:700;font-size:.9rem}
.ca-addr{color:#ff6b00;font-size:.75rem;word-break:break-all}
#caCopy{
  background:#c00;color:#fff;border:none;padding:4px 14px;
  font-family:'Press Start 2P',monospace;font-size:.35rem;cursor:pointer;
  transition:all .15s;
}
#caCopy:hover{background:#39ff14;color:#000}

.ci-stats{
  font-family:'Press Start 2P',monospace;font-size:clamp(.35rem,.7vw,.5rem);
  color:#39ff14;text-shadow:0 0 8px rgba(57,255,20,.5);
  letter-spacing:.1em;
}
.ci-quote{
  font-family:'Permanent Marker',cursive;font-size:clamp(.7rem,1.3vw,1rem);
  color:rgba(255,255,255,.7);text-shadow:0 0 10px rgba(255,107,0,.4);
  text-align:center;max-width:500px;
}
.ci-btns{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.ci-btn{
  display:inline-block;padding:10px 22px;text-decoration:none;
  font-family:'Permanent Marker',cursive;font-size:clamp(.8rem,1.3vw,1.1rem);
  border:2px solid;transition:all .15s;white-space:nowrap;
}
.cb-buy{background:#39ff14;color:#000;border-color:#39ff14;box-shadow:0 0 15px rgba(57,255,20,.3)}
.cb-buy:hover{background:#fff;box-shadow:0 0 25px #39ff14;transform:scale(1.05)}
.cb-tg{background:rgba(0,0,0,.6);color:#00bfff;border-color:#00bfff}
.cb-tg:hover{background:#00bfff;color:#000;box-shadow:0 0 15px rgba(0,191,255,.4)}
.cb-chart{background:rgba(0,0,0,.6);color:#ff6b00;border-color:#ff6b00}
.cb-chart:hover{background:#ff6b00;color:#000;box-shadow:0 0 15px rgba(255,107,0,.4)}

.ci-warn{
  font-family:'Press Start 2P',monospace;font-size:clamp(.3rem,.6vw,.45rem);
  color:#ff0000;animation:rec-blink 2s steps(1) infinite;
  text-shadow:0 0 8px rgba(255,0,0,.5);
}

/* SYSTEM TEXT */
.sys-text{
  position:fixed;z-index:150;pointer-events:none;
  font-family:'Press Start 2P',monospace;
}
.sys-1{top:8px;left:12px;font-size:.4rem;color:rgba(57,255,20,.5);letter-spacing:.1em}
.sys-2{top:8px;right:12px;font-size:.4rem;color:rgba(57,255,20,.5)}

/* RESPONSIVE */
@media(max-width:768px){
  body{cursor:auto;overflow-y:auto;height:auto}
  .grid{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;height:auto;min-height:100vh}
  .cam{min-height:25vh}
  .overlay-title{position:relative;top:auto;left:auto;transform:none;margin:10px auto;padding:10px}
  .overlay-title span{font-size:1.5rem!important}
  .ot4{font-size:2.5rem!important}
  .center-info{position:relative;top:auto;left:auto;transform:none;margin:10px auto;padding:10px}
  .ci-btn{font-size:.8rem;padding:8px 16px}
  .sys-text{display:none}
  .crt{display:none}
}
