:root{--bg: #0d1117;--panel: #161b22;--raised: #21262d;--border: #30363d;--text: #f0f6fc;--text-2: #c9d1d9;--muted: #8b949e;--accent: #58a6ff;--accent-hover: #79c0ff;--good: #3fb950;--warn: #d29922;--bad: #f85149;--sans: "Segoe UI", system-ui, -apple-system, sans-serif;--mono: "Cascadia Mono", Consolas, ui-monospace, monospace;color-scheme:dark}@media(prefers-color-scheme:light){:root{--bg: #ffffff;--panel: #f6f8fa;--raised: #eaeef2;--border: #d0d7de;--text: #1f2328;--text-2: #424a53;--muted: #656d76;--accent: #0969da;--accent-hover: #0550ae;--good: #1a7f37;--warn: #9a6700;--bad: #cf222e;color-scheme:light}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 var(--sans)}.app{max-width:1200px;margin:0 auto;padding:32px 20px 64px;display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.masthead{display:flex;align-items:flex-start;gap:16px}.masthead-title{flex:1;min-width:0;text-align:center}.masthead h1{margin:0 0 4px;font-size:1.75rem;font-weight:700;color:var(--accent)}.masthead p{margin:0 auto;color:var(--muted);max-width:70ch}.masthead button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}@media(max-width:640px){.masthead{flex-wrap:wrap;justify-content:space-between}.masthead-title{order:-1;flex-basis:100%}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:16px}textarea{width:100%;min-height:150px;resize:vertical;padding:12px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font:14px/1.6 var(--mono)}textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.actions,.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.actions{margin-top:12px}.toolbar{justify-content:space-between;margin-bottom:12px;color:var(--muted)}.toolbar div{display:flex;flex-wrap:wrap;gap:8px}.toolbar h2{margin:0;font-size:1.1rem;color:var(--text)}.toolbar .count{font-size:.85rem;font-weight:600;color:var(--muted);background:var(--raised);border-radius:10px;padding:1px 8px;margin-left:4px}.toolbar.summary{margin:0}.progress{color:var(--muted);margin-left:auto}button{font:inherit;font-size:14px;padding:7px 14px;border-radius:6px;cursor:pointer;background:var(--raised);color:var(--text-2);border:1px solid var(--border)}button:hover:not(:disabled){border-color:var(--muted)}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.small{padding:3px 10px;font-size:13px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-weight:600;color:var(--text-2);padding:8px 10px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:9px 10px;border-bottom:1px solid var(--border);vertical-align:top}tbody tr:not(.whois){cursor:pointer}tbody tr:not(.whois):hover,tr.open{background:var(--raised)}.mono{font-family:var(--mono);white-space:nowrap}a{color:var(--accent)}.status{font-weight:600;white-space:nowrap}.status:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:currentColor}.status.malicious{color:var(--bad)}.status.suspicious{color:var(--warn)}.status.clean{color:var(--good)}.status.info{color:var(--accent)}.status.unrated,.status.private,.status.error{color:var(--muted)}tr.whois td{background:var(--bg)}tr.whois pre{margin:0;font:13px/1.5 var(--mono);color:var(--text-2);white-space:pre-wrap}tr.whois .details{display:grid;gap:12px}.details h4{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--text-2)}.vendors{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:4px 16px;font-size:13px}.muted{color:var(--muted)}.tag{margin-left:8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:0 5px}.notice{margin:0;padding:10px 14px;border-radius:8px;background:var(--raised);border-left:3px solid var(--warn);color:var(--text-2)}.panel .notice{margin-top:12px}.template-editor{display:grid;gap:8px;margin-bottom:14px;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:8px}.template-editor label{font-weight:600;font-size:14px}.template-editor textarea{min-height:0}.chips{display:flex;flex-wrap:wrap;gap:6px}button.chip{padding:2px 8px;font:12px/1.6 var(--mono)}.template-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.template-foot code{font-family:var(--mono);color:var(--text-2);overflow-wrap:anywhere}.drawer{position:fixed;top:0;bottom:0;z-index:10;width:min(340px,92vw);overflow-y:auto;padding:calc(16px + env(safe-area-inset-top,0px)) 18px calc(24px + env(safe-area-inset-bottom,0px));background:var(--panel);border:0 solid var(--border);box-shadow:0 0 24px #00000059;display:grid;align-content:start;gap:14px}.drawer.left{left:0;border-right-width:1px;animation:slide-left .18s ease-out}.drawer.right{right:0;border-left-width:1px;animation:slide-right .18s ease-out}@keyframes slide-left{0%{transform:translate(-100%)}}@keyframes slide-right{0%{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.drawer{animation:none!important}}@media(min-width:1100px){.app.with-thresholds{margin-left:340px}.app.with-keys{margin-right:340px}}.drawer-head{display:flex;align-items:center;justify-content:space-between}.drawer h2{margin:0;font-size:1.2rem}.drawer-note{margin:0;color:var(--muted);font-size:13px}.drawer fieldset{margin:0;padding:12px;border:1px solid var(--border);border-radius:8px;display:grid;gap:14px}.drawer legend{padding:0 6px;font-weight:700;color:var(--accent)}.drawer form{display:grid;gap:14px}.field{display:grid;gap:4px;font-size:14px}.field-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.field small{color:var(--muted);font-size:12px}.field output{font-weight:600;font-variant-numeric:tabular-nums}.field input[type=number]{width:80px}.field input[type=number],.field input[type=text],.field input[type=password]{padding:6px 8px;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;font:14px var(--mono)}.field input:focus{outline:2px solid var(--accent);outline-offset:-1px}.field input[type=range]{width:100%;accent-color:var(--accent)}.check{display:flex;align-items:center;gap:8px;font-size:14px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.drawer .sources{gap:10px}.select-all{font-weight:600}.source-group{display:grid;gap:8px;padding:8px;border-radius:6px;border:1px solid transparent}.source-group.on{border-color:var(--border);background:var(--bg)}.source{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:start;font-size:14px;cursor:pointer}.source input{margin-top:3px}.source>span{display:grid;gap:2px}.source-name{font-weight:600}.source .types{font-size:12px;color:var(--accent)}.source small,.key-field small{color:var(--muted);font-size:12px}.key-field small.warn{color:var(--warn)}.key-field a{font-size:12px}.details p{margin:0;font-size:13px}button.countdown{font-variant-numeric:tabular-nums}
