/* Silent Beacon — radar hero + full-height analyzer divider + night ops */
:root{
  --bg:#0f1115; --panel:#161a22; --text:#e6e9ef; --muted:#9aa4b2;
  --accent:#9bd; --accent-2:#8ad; --card:#1b2130; --card-border:#2a3242;
  --shadow:0 6px 20px rgba(0,0,0,.25); --radius:16px; --red:#ff4d4d;
  --ky-blue:#0033A0; --intl-orange:#FF4F00;
}
*{box-sizing:border-box}
html,body{margin:0; padding:0; background:var(--bg); color:var(--text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{color:inherit; text-decoration:none; cursor:pointer}
.container{width:min(1100px,92vw); margin:0 auto}

/* Header */
.site-header{position:sticky; top:0; z-index:1000;
  background:linear-gradient(180deg, rgba(22,26,34,.95), rgba(22,26,34,.75));
  backdrop-filter:blur(6px); border-bottom:1px solid #222a36}
.site-header .container{display:flex; align-items:center; justify-content:space-between; padding:14px 0}
.brand{font-weight:700; letter-spacing:.4px}
.nav a{margin-left:18px; color:var(--muted)} .nav a:hover{color:var(--text)}

/* SITREP */
.sitrep{border-bottom:1px solid #1e2632; background:linear-gradient(180deg,#141a22,#101722)}
.sitrep-row{display:flex; gap:18px; align-items:center; padding:8px 0; flex-wrap:wrap}
.sr-item{display:flex; gap:8px; align-items:baseline}
.sr-key{font-size:12px; letter-spacing:.14em; text-transform:uppercase; color:#cdd3de; opacity:.9}
.sr-val{font-weight:700}
.sr-link a{color:#9bd; text-decoration:underline}

/* Threat Condition */
.threatbar{border-bottom:1px solid #1e2632; background:#0e131d}
.threat-row{display:flex; gap:10px; align-items:center; padding:10px 0}
.th-label{font-size:12px; letter-spacing:.14em; color:#cdd3de; opacity:.9; margin-right:6px; text-transform:uppercase}
.th-light{
  font-size:11px; font-weight:800; letter-spacing:.08em; padding:6px 10px; border-radius:999px;
  border:1px solid #2a3242; box-shadow:inset 0 0 0 1px rgba(255,255,255,.03);
  opacity:.45;
}
.th-light.low{background:#0c2a12; color:#66ff9a}
.th-light.guarded{background:#0c1e2a; color:#74d0ff}
.th-light.elevated{background:#2a240c; color:#ffd25a}
.th-light.high{background:#2a160c; color:#ff9b5a}
.th-light.severe{background:#2a0e0e; color:#ff6b6b}
.threatbar[data-level="severe"] .severe{ opacity:1; box-shadow:0 0 14px currentColor; }

/* Hero */
.hero{padding:24px 0 6px; border-bottom:1px solid #1e2632}
.hero-grid{display:grid; grid-template-columns:1fr 1.2fr; gap:28px; align-items:start}
.hero-title{font-size:clamp(28px,5.2vw,46px); line-height:1.06; margin:0 0 6px}
.hero-tag{color:var(--muted); margin:0 0 14px}
.disclaimer{margin-top:12px; font-size:13px; color:var(--muted)}

/* Briefing CTA (text-only) */
.briefing-cta{
  display:flex; flex-direction:column; gap:4px;
  padding:12px 14px; border-radius:14px;
  background:linear-gradient(180deg,#1a2336,#141a28);
  border:2px solid #2a3b64;
  box-shadow:0 0 10px rgba(40,120,255,.20), inset 0 0 8px rgba(40,120,255,.10);
}
.briefing-cta .cta-title{font-weight:800; letter-spacing:.2px}
.briefing-cta .cta-desc{font-size:13px; color:var(--muted)}

/* Radar column */
.radar-column{display:flex; flex-direction:column; align-items:center}
.hero-art{
  position:relative; min-height:420px; border-radius:var(--radius);
  overflow:hidden; border:1px solid #22304a; box-shadow:var(--shadow);
  background:radial-gradient(1000px 600px at 30% 30%, #1f2740, #121623);
  width:100%;
}
.hero-art canvas{ position:absolute; display:block; }
#eq{
  top:0; bottom:0; left:0; width:72px; height:auto; pointer-events:none;
  border-right:1px solid rgba(90,110,150,.25);
  background:linear-gradient(180deg, rgba(10,14,20,.55), rgba(10,14,20,.7));
  box-shadow: inset 0 0 0 1px rgba(90,110,150,.15);
}
#radar{ inset:0; width:100%; height:100%; }
.radar-glass{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(12,14,20,.18), rgba(12,14,20,.55));
  pointer-events:none;
  box-shadow: inset 0 0 0 1px rgba(90,110,150,.18);
}
.searchlight{
  position:absolute; inset:0; pointer-events:none; mix-blend-mode:screen;
  --x:-20%; --w:18%;
  background:linear-gradient(90deg, rgba(255,255,255,0) 0%,
                                   rgba(255,255,255,0.08) 45%,
                                   rgba(255,255,255,0.14) 50%,
                                   rgba(255,255,255,0.08) 55%,
                                   rgba(255,255,255,0) 100%);
  transform:translateX(var(--x)); width:var(--w); animation:searchlight 16s linear infinite;
  filter:blur(2px) opacity(.35);
}
@keyframes searchlight{ 0%{--x:-25%} 50%{--x:107%} 100%{--x:-25%} }

/* Panel badges */
.br-badge,.target-badge{
  position:absolute; font-variant-numeric:tabular-nums; font-weight:700; font-size:14px;
  padding:6px 10px; border-radius:10px; background:rgba(10,12,18,.6); border:1px solid #2a3242; box-shadow:var(--shadow);
}
.br-badge{ left:12px; bottom:12px; }
.target-badge{ right:12px; bottom:12px; }

/* Function button rail under radar */
.ops-toggle-rail{ display:flex; justify-content:center; width:100%; padding:12px 0 6px; }
.ops-toggle.big{
  color:#ff4d4d; font-weight:800; letter-spacing:.06em;
  background:#0b0f18; border:3px solid #1da1ff; border-radius:999px; padding:10px 18px;
  box-shadow:0 0 8px rgba(29,161,255,.7), inset 0 0 8px rgba(29,161,255,.25);
  text-transform:uppercase;
}
.ops-toggle.big:hover{ filter:brightness(1.06) }

/* Sections + Cards */
.section{padding:26px 0 46px}
.section-title{margin:18px 0 18px; letter-spacing:.3px}
.section-title.center{text-align:center; font-size:clamp(24px,4.2vw,34px)}
.section-title.center.big{font-size:clamp(28px,5vw,40px)}
.card-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.card{background:var(--card); border:1px solid var(--card-border); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow)}
.card-link{display:block; height:100%}
.thumb{height:160px; background:#25304a; background-size:cover; background-position:center}
.card h3{margin:12px 14px 6px; font-size:18px}
.card p{margin:0 14px 16px; color:var(--muted); font-size:14px; line-height:1.35}

/* Time strip */
.time-strip{
  display:flex; gap:12px; align-items:stretch; justify-content:space-between;
  overflow-x:auto; padding-bottom:4px; -webkit-overflow-scrolling:touch; scrollbar-width:thin;
}
.tz-pill{
  flex:1 0 150px; max-width:220px;
  background:linear-gradient(180deg,#1a2030,#141a26);
  border:1px solid #2a3242; border-radius:14px; padding:12px 14px;
  box-shadow:var(--shadow); display:flex; flex-direction:column; align-items:center; justify-content:center;
}
.tz-label{font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:#cdd3de; opacity:.9}
.tz-time{
  margin:6px 0 4px; font-variant-numeric:tabular-nums; font-size:28px; text-align:center;
  color:var(--red);
  background:linear-gradient(180deg,#0e121a,#0a0e15);
  border:1px solid rgba(255,77,77,.35);
  box-shadow: inset 0 0 0 1px rgba(255,77,77,.12), 0 2px 8px rgba(0,0,0,.35);
  border-radius:10px; padding:6px 10px;
}
.tz-sub{color:#9aa4b2; font-size:12px}

/* Countdown */
.countdown-wrap{ margin-top:14px; }
.countdown-box{
  display:flex; align-items:center; justify-content:space-evenly; gap:10px; flex-wrap:wrap;
  background: var(--intl-orange);
  border: 1px solid rgba(0,0,0,.25);
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 6px 20px rgba(0,0,0,.25);
}
.cd-seg{ min-width:140px; text-align:center; }
.cd-num{
  display:block; font-variant-numeric:tabular-nums; font-weight:800;
  font-size:34px; line-height:1; margin-bottom:6px; color: var(--ky-blue);
  background: rgba(0,0,0,.06);
  border-radius: 10px; padding: 8px 10px;
}
.cd-lbl{ display:block; color:#0b0f18; font-size:12px; letter-spacing:.08em; text-transform:uppercase; font-weight:700; }
.center{text-align:center}

/* Mini cards & ledger */
.mini-card{background:var(--card); border:1px solid var(--card-border); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); margin:10px 0 8px}
.mini-link{display:flex; gap:12px; align-items:stretch}
.mini-thumb{width:88px; min-height:90px; background:#25304a; background-size:cover; background-position:center}
.mini-text{padding:10px 12px}
.mini-text h3{margin:2px 0 6px; font-size:16px}
.mini-text p{margin:0; color:var(--muted); font-size:13px; line-height:1.4}
.mini-card.ledger .ledger-icon{
  width:88px; min-height:90px;
  background:repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 2px, transparent 2px 22px),
             linear-gradient(180deg, #1b2232, #151c2a);
  border-right:1px solid #2a3242;
}

/* Night-ops overlay */
.night-wash{
  position:fixed; inset:0; pointer-events:none; z-index:0;
  background: radial-gradient(1000px 800px at 50% 20%, rgba(255,0,0,.06), rgba(0,0,0,0));
  opacity:0; transition:opacity .25s ease;
}
body.night-ops{ --bg:#0b0d12; --panel:#111622; }
body.night-ops .night-wash{ opacity:1; }
body.night-ops .hero-art{ background:radial-gradient(1000px 600px at 30% 30%, #131a30, #0d111b); }

/* Footer */
.site-footer{border-top:1px solid #1e2632; padding:22px 0; color:var(--muted)}

/* Responsive */
@media (max-width:900px){
  .hero-grid{grid-template-columns:1fr}
  .card-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){ .card-grid{grid-template-columns:1fr} }
