:root{--bg:#050a18;--card:rgba(14,24,50,.72);--card2:#0f1d3d;--txt:#dce7ff;--mut:#8aa0c8;--acc:#2f7bff;--cyan:#4cc2ff;--ok:#37e0a0;--bd:#1d2c52;--r:14px;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
*{box-sizing:border-box;margin:0;padding:0}
body{background:radial-gradient(1200px 600px at 50% -10%,#0a1738,#050a18 60%);color:var(--txt);font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;min-height:100vh}
a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:860px;margin:0 auto;padding:0 18px;position:relative;z-index:1}
.hd{border-bottom:1px solid var(--bd);background:rgba(5,10,24,.6);position:relative;z-index:2}
.hdin{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 0}
.logo{font-family:var(--mono);font-size:1.15rem;font-weight:700;color:var(--txt)}.logo span{color:var(--acc)}
.langs{display:flex;flex-wrap:wrap;gap:4px}
.langs a{color:var(--mut);font-size:.72rem;font-weight:700;padding:3px 6px;border-radius:5px}
.langs a:hover{color:var(--txt);text-decoration:none}
.langs a.on{background:#163fa0;color:#fff}
main{padding:26px 0 50px}
.hero{text-align:center;padding:14px 0 6px}
.hero h1{font-size:1.8rem;margin-bottom:6px;text-shadow:0 0 18px rgba(47,123,255,.35)}
.sub{color:var(--mut)}
.bigip{font-family:var(--mono);font-size:2.5rem;font-weight:800;letter-spacing:1px;margin:12px 0;word-break:break-all;color:#fff;text-shadow:0 0 22px rgba(76,194,255,.55)}
.install{background:transparent;border:1px solid var(--cyan);color:var(--cyan);border-radius:10px;padding:9px 18px;font-weight:700;cursor:pointer}
.install:hover{background:var(--cyan);color:#04122b}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.card{background:var(--card);backdrop-filter:blur(6px);border:1px solid var(--bd);border-radius:var(--r);padding:18px 20px;margin:18px 0}
.grid2 .card{margin:0}
.card h2{font-size:1.05rem;margin-bottom:12px;color:var(--cyan);font-family:var(--mono)}
.geo{display:grid;grid-template-columns:auto 1fr;gap:8px 14px}
.geo dt{color:var(--mut);white-space:nowrap}
.geo dd{font-weight:600;word-break:break-word}
.map{border-radius:10px;overflow:hidden;border:1px solid var(--bd)}
.map iframe{width:100%;height:320px;border:0;display:block;filter:saturate(.9) contrast(1.05)}
.lookup{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.lookup input[type=text]{background:var(--card2);border:1px solid var(--bd);color:var(--txt);border-radius:10px;padding:11px 14px;font-size:1rem;font-family:var(--mono)}
.lookup input[name=ip]{flex:1;min-width:200px}
.cap{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--mut)}
.cap input{width:120px}
.lookup button{background:#163fa0;color:#fff;border:0;border-radius:10px;padding:11px 22px;font-weight:700;font-size:1rem;cursor:pointer}
.lookup button:hover{filter:brightness(1.12)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.result{margin-top:18px;padding-top:16px;border-top:1px solid var(--bd)}
.result h3{font-size:1rem;margin-bottom:10px;color:var(--ok);font-family:var(--mono)}
.err{color:#ff8080;margin-bottom:10px}
.seo{margin-top:30px;color:var(--mut)}
.seo h2{color:var(--txt);font-size:1.2rem;margin:26px 0 8px;border-left:3px solid var(--acc);padding-left:10px}
.seo p{margin-bottom:10px}.seo strong{color:var(--txt)}
.seo ul{margin:8px 0 12px 20px}.seo li{margin-bottom:4px}
.seo details{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:10px 14px;margin:8px 0}
.seo summary{cursor:pointer;font-weight:600;color:var(--txt)}
.seo code{background:var(--card2);padding:2px 6px;border-radius:5px;color:var(--cyan);font-family:var(--mono)}
.ft{border-top:1px solid var(--bd);padding:22px 0;color:var(--mut);font-size:.85rem;text-align:center;background:rgba(5,10,24,.6);position:relative;z-index:1}
.ft-tag{margin-bottom:8px}
.ft-langs{justify-content:center;margin:8px 0}
@media(max-width:640px){.bigip{font-size:1.8rem}.grid2{grid-template-columns:1fr}.geo{grid-template-columns:1fr;gap:2px 0}.geo dd{margin-bottom:8px}.map iframe{height:240px}}
