:root{
  --navy-0:#040f24;--navy-1:#061A3A;--navy-2:#0B2E63;--card:#0d2347;--card-2:#102a55;
  --line:#1E4C95;--red:#FF0000;--white:#eaf1ff;--muted:#9FB3D1;--muted-2:#6f86ad;
  --green:#22c55e;--amber:#f59e0b;
  --sans:'Segoe UI',system-ui,-apple-system,Arial,sans-serif;--mono:'Consolas',ui-monospace,monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--navy-1);color:var(--white);line-height:1.55;
  min-height:100vh;padding:env(safe-area-inset-top) 0 calc(env(safe-area-inset-bottom) + 20px)}
.wrap{max-width:560px;margin:0 auto;padding:0 16px}

/* HEADER */
.top{display:flex;align-items:center;justify-content:space-between;padding:18px 16px 8px;max-width:560px;margin:0 auto}
.brand{font-size:20px;font-weight:900;letter-spacing:.3px}
.brand span{color:var(--red)}
.soc{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--muted);
  border:1px solid var(--line);border-radius:20px;padding:5px 10px}

/* HERO TOOL (Scam Shield) */
.hero{background:linear-gradient(160deg,rgba(255,0,0,.10),var(--card));border:1px solid rgba(255,0,0,.45);
  border-radius:20px;padding:20px;margin-top:10px}
.hero .badge{display:inline-block;font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:#fff;
  background:var(--red);padding:3px 9px;border-radius:6px;margin-bottom:10px}
.hero h1{font-size:22px;font-weight:900;line-height:1.15}
.hero p{color:var(--muted);font-size:13.5px;margin-top:6px}
textarea,input[type=text],input[type=email],input[type=password],input[type=tel]{
  width:100%;background:#08193a;border:1px solid var(--line);border-radius:12px;color:var(--white);
  font-family:var(--sans);font-size:16px;padding:13px 14px;margin-top:12px;outline:none}
textarea{min-height:96px;resize:vertical}
textarea:focus,input:focus{border-color:var(--red)}
.btn{width:100%;background:var(--red);color:#fff;border:none;border-radius:12px;font-weight:800;
  font-size:16px;padding:14px;margin-top:12px;cursor:pointer;font-family:var(--sans)}
.btn:active{transform:translateY(1px)}
.btn[disabled]{opacity:.6}

/* TOOLS */
.tools{margin-top:18px;display:grid;gap:14px}
.tool{background:linear-gradient(160deg,var(--card-2),var(--card));border:1px solid rgba(30,76,149,.5);
  border-radius:18px;padding:18px}
.tool h2{font-size:16px;font-weight:800;display:flex;align-items:center;gap:9px}
.tool .ico{font-size:20px}
.tool .hint{color:var(--muted);font-size:12.5px;margin-top:4px}

/* RESULT */
.res{margin-top:12px;border-radius:12px;padding:13px 14px;font-size:14px;display:none}
.res.show{display:block}
.res.ok{background:rgba(34,197,94,.10);border:1px solid rgba(34,197,94,.45)}
.res.bad{background:rgba(255,0,0,.10);border:1px solid rgba(255,0,0,.5)}
.res.warn{background:rgba(245,158,11,.10);border:1px solid rgba(245,158,11,.45)}
.res.info{background:rgba(30,76,149,.18);border:1px solid var(--line)}
.res .verdict{font-weight:800;font-size:15px;display:flex;align-items:center;gap:8px}
.res .detail{color:#d7e2f7;margin-top:7px;font-size:13.5px}
.res .ai{margin-top:9px;padding-top:9px;border-top:1px solid rgba(255,255,255,.12);color:#eaf1ff;font-size:13.5px}
.res code{font-family:var(--mono);background:rgba(0,0,0,.25);padding:1px 6px;border-radius:5px;font-size:12px;word-break:break-all}
.spin{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);
  border-top-color:#fff;border-radius:50%;animation:sp .7s linear infinite;vertical-align:-2px}
@keyframes sp{to{transform:rotate(360deg)}}

/* INSTALL BANNER (iOS) */
.install{display:none;background:var(--card);border:1px dashed var(--line);border-radius:14px;
  padding:13px 15px;margin-top:16px;font-size:13px;color:#d7e2f7}
.install b{color:#fff}.install .x{float:right;color:var(--muted);cursor:pointer;font-size:18px;line-height:1}

/* FOOTER */
.foot{margin-top:26px;text-align:center;color:var(--muted-2);font-size:12px;padding:0 16px}
.foot a{color:var(--muted)}
.priv{font-size:11.5px;color:var(--muted-2);margin-top:10px}
