.ip-page{max-width:1000px}
.ip-intro{max-width:800px;margin-bottom:32px}
.ip-intro h1{margin-top:20px}
.ip-lead{margin-top:20px;max-width:680px;font-size:18px;color:var(--muted);line-height:1.8}
.ip-result{background:linear-gradient(150deg,var(--panel),var(--hero-bottom))}
.ip-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ip-result-head h2{font-size:24px}
.ip-query-status{margin-top:16px;color:var(--muted)}
.ip-result[data-state="error"] .ip-query-status{color:var(--ink-peach)}
.ip-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.ip-field{min-width:0;padding:20px;background:var(--panel);border:1px solid var(--border);border-radius:var(--r-card)}
.ip-field-address{grid-column:1 / -1;background:var(--col-side)}
.ip-field dt{color:var(--muted);font-size:13px}
.ip-field dd{margin-top:8px;font-size:17px;font-weight:700;overflow-wrap:anywhere}
.ip-field-address dd{font-size:clamp(22px,3.4vw,36px);line-height:1.5}
.ip-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.ip-copy-status{margin-top:12px}
.ip-copy-status:empty{display:none}
.ip-result-note{margin-top:20px;font-size:13px;line-height:1.8}
.ip-reading{margin-top:28px}
.ip-reading h2{font-size:clamp(24px,3vw,32px);margin-bottom:24px}
.ip-reading p+p{margin-top:16px}
.ip-reading>p{color:var(--text-2);line-height:1.9}
.ip-explanations{display:grid;gap:24px}
.ip-explanations>div+div{border-top:1px solid var(--border);padding-top:24px}
.ip-explanations dt{font-weight:800}
.ip-explanations dd{margin-top:10px;color:var(--muted);line-height:1.9}
.ip-checklist{padding-left:24px;line-height:1.9;color:var(--muted)}
.ip-checklist li+li{margin-top:18px}
.ip-checklist strong{color:var(--text)}
.ip-reading .callout{margin-top:24px}
.ip-related{display:flex;gap:12px 28px;flex-wrap:wrap;margin-top:20px}
.ip-inline-link{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){
  .ip-fields{grid-template-columns:1fr}
  .ip-field{padding:16px}
  .ip-intro h1{font-size:38px}
  .ip-lead{font-size:16px}
  .ip-result-head{align-items:flex-start}
}