:root{--bg:#050505;--panel:#0d0d0f;--panel2:#111114;--line:#242429;--text:#f6f6f7;--muted:#909099;--accent:#168bff;--good:#66e39b;--bad:#ff6577;--warn:#ffc857;--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;min-height:100vh;overflow-x:hidden}.shell{width:min(1180px,calc(100% - 36px));margin-inline:auto}.ambient{position:fixed;width:480px;height:480px;border-radius:50%;filter:blur(140px);opacity:.08;pointer-events:none;z-index:-1}.ambient-a{background:var(--accent);top:-180px;right:-130px}.ambient-b{background:#5666ff;bottom:-220px;left:-180px}.topbar{height:98px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:13px;color:inherit;text-decoration:none}.brand-logo{width:50px;height:50px;object-fit:contain}.brand strong{display:block;font-size:14px;letter-spacing:.13em}.brand span{font-size:11px;color:var(--muted)}.live{font-size:12px;color:#c7c7cd;border:1px solid var(--line);background:#0b0b0d;padding:9px 13px;border-radius:999px}.live span{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 12px var(--good);margin-right:7px}.panel,.card{border:1px solid var(--line);background:linear-gradient(145deg,rgba(20,20,23,.96),rgba(10,10,12,.96));box-shadow:0 18px 60px rgba(0,0,0,.25)}.panel{border-radius:var(--radius)}.hero{padding:56px;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;min-height:350px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(22,139,255,.18);border-radius:50%;right:-70px;top:-110px;box-shadow:0 0 0 48px rgba(22,139,255,.04),0 0 0 96px rgba(22,139,255,.025)}.eyebrow{font-size:11px;letter-spacing:.24em;color:var(--accent);font-weight:800}.hero h1{font-size:clamp(38px,6vw,68px);line-height:1.02;letter-spacing:-.055em;margin:17px 0 22px;max-width:780px}.hero h1 em{font-style:normal;color:#777780}.hero p{max-width:650px;color:var(--muted);line-height:1.65;margin:0}.hero-status{display:flex;align-items:center;gap:16px;position:relative;z-index:2;min-width:220px}.score-ring{width:88px;height:88px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--accent) 0deg,#222 0deg);position:relative}.score-ring:before{content:"";position:absolute;inset:7px;background:#0b0b0d;border-radius:50%}.score-ring b,.score-ring span{position:relative}.score-ring b{font-size:24px}.score-ring span{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.1em}.hero-status strong,.hero-status small{display:block}.hero-status strong{font-size:14px}.hero-status small{color:var(--muted);margin-top:5px}.owner{margin-top:18px;padding:24px 28px;display:flex;align-items:center;gap:18px}.owner-icon{width:46px;height:46px;border-radius:14px;background:var(--accent);color:#080808;display:grid;place-items:center;font-size:22px;font-weight:800}.owner-copy{flex:1}.owner-copy>span,.label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.12em}.owner h2{font-size:21px;margin:5px 0 12px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid rgba(102,227,155,.24);background:rgba(102,227,155,.08);color:var(--good);padding:6px 9px;border-radius:7px;font-size:10px}.chip.neutral{border-color:var(--line);background:#111;color:#aaa}.icon-button{width:44px;height:44px;border-radius:13px;border:1px solid var(--line);background:#151518;color:white;font-size:20px;cursor:pointer}.icon-button:hover{border-color:#555}.section-title{display:flex;align-items:center;gap:12px;margin:46px 2px 18px}.section-title span{color:var(--accent);font:700 11px/1 Inter;letter-spacing:.1em}.section-title h3{font-size:14px;text-transform:uppercase;letter-spacing:.15em;margin:0;color:#d8d8dc}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(3,1fr)}.card{border-radius:19px;padding:27px;min-height:164px}.card-head{display:flex;justify-content:space-between;align-items:center;color:#b9b9c0;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.card-head small{color:#686870;text-transform:none;letter-spacing:0}.status-dot{width:8px;height:8px;border-radius:50%;background:#555}.status-dot.loading{animation:blink 1s infinite}.status-dot.good{background:var(--good);box-shadow:0 0 10px rgba(102,227,155,.5)}.status-dot.bad{background:var(--bad);box-shadow:0 0 10px rgba(255,101,119,.45)}.status-dot.warn{background:var(--warn)}@keyframes blink{50%{opacity:.25}}.big-value{display:block;font-size:clamp(18px,2.5vw,30px);letter-spacing:-.04em;margin:26px 0 13px;overflow-wrap:anywhere}.medium-value{display:block;font-size:20px;margin:25px 0 12px;overflow-wrap:anywhere}.card p{color:var(--muted);font-size:12px;line-height:1.55;margin:0}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.wrap{word-break:break-all}.split-card{display:grid;grid-template-columns:1fr 1fr;gap:22px}.split-card>div+div{border-left:1px solid var(--line);padding-left:24px}.split-card strong{display:block;margin-top:18px;font-size:19px;overflow-wrap:anywhere}.data-row{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:14px 0;font-size:12px}.data-row:first-of-type{margin-top:22px}.data-row span{color:var(--muted)}.text-link{display:inline-block;color:var(--accent);font-size:12px;margin-top:15px;text-decoration:none}.hidden{display:none}.operational{margin-top:45px;padding:22px 27px;display:flex;align-items:center;justify-content:space-between;gap:20px}.operational>div{display:flex;align-items:center;gap:11px;font-size:13px}.pulse{width:9px;height:9px;background:var(--accent);border-radius:50%;box-shadow:0 0 14px var(--accent)}.operational ul{display:flex;gap:22px;list-style:none;margin:0;padding:0;flex-wrap:wrap}.operational li{font-size:11px;color:var(--muted)}.operational li i{display:inline-block;width:6px;height:6px;background:#555;border-radius:50%;margin-right:7px}.operational li i.good{background:var(--good)}.operational li i.bad{background:var(--bad)}.actions{display:flex;justify-content:center;gap:12px;margin:26px 0 55px}.button{border-radius:12px;padding:13px 18px;font-weight:700;font-size:12px;cursor:pointer}.button.primary{border:1px solid var(--accent);background:var(--accent);color:#090909}.button.secondary{border:1px solid var(--line);background:#101012;color:#ddd}footer{border-top:1px solid var(--line);min-height:130px;display:flex;align-items:center;gap:18px;color:var(--muted);font-size:11px}.footer-logo{width:36px;height:36px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#ededee;color:#080808;border-radius:10px;padding:11px 16px;font-size:12px;font-weight:700;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:850px){.hero{padding:35px;display:block}.hero-status{margin-top:35px}.grid.three{grid-template-columns:1fr}.grid.two{grid-template-columns:1fr}.operational{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.shell{width:min(100% - 22px,1180px)}.topbar{height:82px}.brand div{display:none}.live{font-size:10px}.hero{padding:28px 23px;min-height:auto}.owner{padding:20px}.owner-icon{display:none}.owner h2{font-size:17px}.split-card{grid-template-columns:1fr}.split-card>div+div{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.actions{display:grid}.operational ul{gap:13px}.card{padding:22px}}
@media print{body{background:#fff;color:#000}.ambient,.topbar .live,.actions,.icon-button{display:none}.panel,.card{box-shadow:none;background:white;border-color:#ddd}.hero h1 em,.card p,.label,.owner-copy>span{color:#555}}

/* Ajustes de leitura e estados positivos */
#ipv6{font-size:clamp(14px,1.75vw,22px);line-height:1.35;letter-spacing:-.035em;word-break:break-all}
#ipv4{font-size:clamp(18px,2.5vw,30px)}
.positive-value{color:var(--good)}
.chip.good{border-color:rgba(102,227,155,.34);background:rgba(102,227,155,.12);color:var(--good)}
@media(max-width:520px){#ipv6{font-size:14px}.big-value{margin-top:22px}}

/* Campos longos: localização e PTR */
#location{font-size:clamp(14px,1.5vw,17px);line-height:1.35;letter-spacing:-.02em;word-break:break-word;overflow-wrap:anywhere}
#ptr{font-size:clamp(13px,1.45vw,17px);line-height:1.4;letter-spacing:-.025em;word-break:break-all;overflow-wrap:anywhere}
@media(max-width:520px){#location{font-size:14px}#ptr{font-size:13px}}

/* Painel detalhado da Spamhaus */
.blacklist-card{min-height:auto;padding:30px}
.blacklist-provider{margin-top:24px;color:#dcdce2;font-size:14px;font-weight:800;letter-spacing:.02em}
.blacklist-main{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:18px 0;border-bottom:1px solid var(--line)}
.blacklist-main strong{font-size:clamp(17px,2vw,24px);line-height:1.35;overflow-wrap:anywhere}
.blacklist-badge{flex:0 0 auto;padding:8px 11px;border-radius:9px;font-size:11px;font-weight:800;border:1px solid var(--line);background:#151518;color:#aaa}
.blacklist-badge.listed{border-color:rgba(255,101,119,.35);background:rgba(255,101,119,.1);color:var(--bad)}
.blacklist-badge.clean{border-color:rgba(102,227,155,.34);background:rgba(102,227,155,.1);color:var(--good)}
.blacklist-api-note{margin-top:13px!important}
.blacklist-details-title{margin-top:24px;color:#dcdce2;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.blacklist-details{margin-top:10px;padding:15px 17px;border:1px solid var(--line);background:#0b0b0d;border-radius:12px;color:#bcbcc4;font:600 13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-wrap:anywhere}
.delist-button{display:inline-block;margin-top:18px;text-decoration:none;border:1px solid rgba(255,101,119,.35);background:rgba(255,101,119,.1);color:#ff8290}
.delist-button:hover{background:rgba(255,101,119,.16)}
.delist-button.hidden{display:none}
@media(max-width:600px){.blacklist-main{align-items:flex-start;flex-direction:column}.blacklist-card{padding:23px}.blacklist-badge{font-size:10px}}

.location-source{display:block;margin-top:7px;color:var(--muted);font-size:10px;line-height:1.35}
