/* base */
*{box-sizing:border-box}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, Arial;
  background: linear-gradient(180deg,#061028,#041025);
  color:#e8f1ff;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.5;
}
a{color:#9ecbff;text-decoration:none}
.container{max-width:1100px;margin:28px auto;padding:16px}

/* header */
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#061632;border-bottom:1px solid rgba(255,255,255,0.02)}
.brand{display:flex;align-items:center;gap:12px}
.logo-small{width:44px;height:44px;border-radius:8px;object-fit:contain}
.title strong{display:block;font-size:16px}
.title span{display:block;font-size:12px;color:#9bbcff}
nav a{margin-left:12px;font-size:14px;color:#bcd9ff}

/* hero */
.hero{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;padding:20px}
.big-shield{width:160px;height:auto;border-radius:10px;display:block}
.hero-right h1{font-size:26px;margin:0}
.hero-right p{color:#b8d3ff;margin-top:8px}
/* cta */
.cta{display:inline-block;margin-top:12px;padding:10px 16px;background:linear-gradient(90deg,#1a75ff,#00c0ff);color:#fff;border-radius:10px;font-weight:700}

/* stats */
.stats{display:flex;gap:12px;margin:20px 0;flex-wrap:wrap}
.stat{flex:1 1 180px;background:rgba(8,36,59,0.35);padding:16px;border-radius:12px;text-align:center}
.stat h3{margin:0;font-size:20px}

/* panel / content */
.panel{background:linear-gradient(180deg,rgba(255,255,255,0.02),rgba(255,255,255,0.01));padding:18px;border-radius:12px;border:1px solid rgba(255,255,255,0.02)}
.summary{padding:16px}

/* form & report page shared */
form label{display:block;margin-top:12px;font-weight:700;color:#9fbfff}
input[type="text"], input[type="email"], select, textarea{
  width:100%;padding:12px;margin-top:8px;border-radius:10px;border:1px solid rgba(255,255,255,0.03);background:#08243b;color:#e8f1ff
}
textarea{min-height:140px;resize:vertical}
button{cursor:pointer}

/* footer */
footer{padding:20px 24px;background:#040c1c;color:#9fbfff;display:flex;justify-content:space-between;align-items:center;gap:12px}

/* responsive */
@media (max-width:900px){
  .hero{grid-template-columns:120px 1fr}
}
@media (max-width:600px){
  .hero{grid-template-columns:1fr; text-align:center}
  nav{display:none}
  footer{flex-direction:column;align-items:flex-start}
}