:root{--bg:#0b0f14;--panel:#121821;--text:#e8eef6;--muted:#9fb0c3;--line:#233042;--ok:#22c55e;--bad:#ef4444;--warn:#f59e0b}
*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--text)}
.wrap{max-width:1100px;margin:0 auto;padding:24px}
h1{margin:0 0 6px 0;font-size:22px}h2{margin:0 0 10px 0;font-size:16px}
.sub{margin:0 0 16px 0;color:var(--muted);font-size:13px}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0}
label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}
textarea{width:100%;min-height:120px;background:#0e141d;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:10px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}
.row{display:flex;align-items:center;gap:10px;margin-top:10px}
button{background:#1f2a3a;color:var(--text);border:1px solid var(--line);border-radius:8px;padding:8px 12px;cursor:pointer}
button:hover{background:#243247}
.status{font-size:12px;color:var(--muted)}
.hint{margin:10px 0 0 0;color:var(--muted);font-size:12px}
code{background:#0e141d;border:1px solid var(--line);padding:1px 6px;border-radius:6px}

table{width:100%;border-collapse:collapse}
th,td{border-bottom:1px solid var(--line);padding:10px;vertical-align:top;font-size:12px}
th{color:var(--muted);text-align:left;font-weight:600}
.domain{font-weight:600}
.badge{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:999px;border:1px solid var(--line);font-size:11px}
.badge.ok{border-color:rgba(34,197,94,.4);color:var(--ok)}
.badge.bad{border-color:rgba(239,68,68,.4);color:var(--bad)}
.badge.warn{border-color:rgba(245,158,11,.4);color:var(--warn)}
.small{color:var(--muted);font-size:11px}
.actions a{color:#7dd3fc;text-decoration:none}
.actions a:hover{text-decoration:underline}
.iprow{display:flex;flex-direction:column;gap:6px}
.ipmeta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

footer{margin-top:16px;color:var(--muted)}
