.ip-page{max-width:1120px}
.ip-page h1{font-size:var(--size-h2);line-height:1.25}
.ip-result{border:1px solid var(--border)}
.ip-result-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.ip-result-head h2{font-size:var(--size-h3)}
.ip-status{margin-top:16px}
.ip-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}
.ip-facts>div{min-width:0;padding:20px;background:var(--panel-2);border-radius:var(--r-md);box-shadow:var(--groove)}
.ip-facts .ip-address{grid-column:1 / -1;background:var(--indigo);color:var(--on-dark);box-shadow:var(--hl-dark)}
.ip-facts dt{font-size:var(--size-small);color:var(--muted)}
.ip-address dt{color:var(--on-dark-muted)}
.ip-facts dd{margin:8px 0 0;font-weight:var(--weight-semibold);overflow-wrap:anywhere}
.ip-address dd{font-size:clamp(20px,4vw,32px)}
.ip-actions{display:flex;flex-wrap:wrap;gap:12px}
.ip-actions .btn{flex-shrink:0;white-space:nowrap}
.ip-copy-status{min-height:1.6em;margin-top:12px;font-size:var(--size-small)}
.ip-page .panel>p{margin-top:16px}
.ip-checklist{display:grid;gap:20px;margin-block:24px;padding-left:24px}
.ip-checklist li{padding-left:6px}
.ip-checklist strong{display:block;margin-bottom:6px}
.ip-privacy{margin-top:32px}
.ip-privacy p{margin-top:16px;color:var(--muted)}
.ip-text-link{color:var(--accent-dark);text-decoration:underline;text-underline-offset:4px}
@media(max-width:640px){
  .ip-facts{grid-template-columns:minmax(0,1fr)}
  .ip-facts>div{padding:16px}
  .ip-actions .btn{flex:1 1 auto}
}