.ip-intro{text-align:center}
.ip-title-accent{color:var(--accent)}
.ip-intro-copy{max-width:660px;margin-inline:auto;color:var(--text-muted)}
.ip-result{max-width:880px;margin:36px auto 0;text-align:left}
.ip-result-body{padding:32px}
.ip-result-top{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.ip-result-top h2{margin:0;font-size:28px}
.ip-status{margin-top:14px;color:var(--text-muted)}
.ip-status[data-state="error"]{color:var(--error)}
.ip-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:24px 0}
.ip-fields>div{min-width:0;padding:20px 16px;border-top:1px solid var(--border)}
.ip-fields .ip-address-field{grid-column:1 / -1;padding:24px 16px;border-radius:var(--r-md);border-top:0;background:var(--accent-faint)}
.ip-fields dt{font-size:13px;color:var(--text-muted)}
.ip-fields dd{margin:8px 0 0;font-weight:600;overflow-wrap:anywhere}
.ip-address-field dd{font-family:var(--f-mono);font-size:clamp(22px,3.2vw,34px);color:var(--accent-dark);line-height:1.5}
.ip-actions{display:flex;flex-wrap:wrap;gap:12px}
.ip-copy-status{min-height:26px;margin-top:12px;font-size:14px;color:var(--text-muted)}
.ip-result-note{padding-top:16px;border-top:1px solid var(--border);font-size:13px;color:var(--text-muted)}
.ip-reading{display:grid;gap:64px;max-width:928px}
.ip-reading>*{min-width:0}
.ip-reading .section-head .tag{margin-bottom:16px}
.ip-checklist{padding-left:24px}
.ip-checklist li{padding-left:6px;margin-bottom:20px}
.ip-checklist strong{color:var(--text)}
.ip-privacy{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;background:var(--bg)}
.ip-privacy>div{min-width:0}
.ip-privacy .badge{margin-bottom:16px}
.ip-privacy h2{font-size:28px}
.ip-privacy p{color:var(--text-muted)}
.ip-privacy>a{flex-shrink:0}
@media(max-width:768px){
  .ip-result-body{padding:24px}
  .ip-fields{grid-template-columns:1fr}
  .ip-fields>div{padding-inline:0}
  .ip-fields .ip-address-field{padding-inline:16px}
  .ip-reading{gap:44px}
  .ip-privacy{flex-direction:column;gap:16px}
}
@media(max-width:640px){
  .ip-result-body{padding:20px}
  .ip-result-top h2{font-size:26px}
  .ip-actions .btn{flex:1;min-width:0}
}