* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Segoe UI',system-ui,sans-serif; background:linear-gradient(135deg,#0D1B3E 0%,#16294F 100%); min-height:100vh; display:flex; align-items:center; justify-content:center; }
.card { background:#fff; border-radius:16px; width:420px; padding:36px; box-shadow:0 20px 60px rgba(0,0,0,.4); }
.logo { text-align:center; font-size:22px; font-weight:700; color:#0D1B3E; margin-bottom:4px; }
.logo span { color:#C9A227; }
.tagline { text-align:center; color:#666; font-size:13px; margin-bottom:16px; }
.urlbar { text-align:center; background:#f2f2f2; border-radius:20px; padding:6px 14px; font-size:12px; color:#444; margin-bottom:16px; font-family:monospace; }
.guard { display:flex; align-items:center; gap:8px; border-radius:8px; padding:10px 12px; font-size:13px; margin-bottom:16px; }
.guard.checking { background:#FFF8E1; border:1px solid #E6C34A; color:#7A5E00; }
.guard.ok { background:#EAF7EE; border:1px solid #2E9E5B; color:#1B6E3A; }
.guard.bad { background:#FDECEA; border:1px solid #C0392B; color:#8c2f22; }
.guard b { font-weight:700; }
.spin { width:12px; height:12px; border:2px solid #E6C34A; border-top-color:transparent; border-radius:50%; animation:sp .8s linear infinite; flex-shrink:0; }
@keyframes sp { to { transform:rotate(360deg); } }
.guard.ok .dot, .guard.bad .dot { width:10px; height:10px; border-radius:50%; flex-shrink:0; }
.guard.ok .dot { background:#2E9E5B; }
.guard.bad .dot { background:#C0392B; }
form label { display:block; font-size:13px; font-weight:600; color:#333; margin:14px 0 6px; }
form input { width:100%; padding:12px; border:1px solid #ccc; border-radius:8px; font-size:15px; background:#f5f5f5; }
form button { width:100%; margin-top:20px; padding:13px; background:#0D1B3E; color:#fff; border:none; border-radius:8px; font-size:15px; font-weight:600; cursor:pointer; }
form button:hover:not(:disabled) { background:#16294F; }
form.locked input { background:#eee; color:#999; }
form.locked button { background:#9aa3b2; cursor:not-allowed; }
.foot { text-align:center; color:#999; font-size:11px; margin-top:18px; }
.debug { display:none; position:fixed; bottom:0; left:0; right:0; max-height:130px; overflow:auto; background:#111; color:#0f0; font-family:monospace; font-size:11px; padding:8px; white-space:pre-wrap; }
