.ip-panel { padding: 1rem 1.15rem 1.2rem; }
.ip-primary { min-height: 128px; display: flex; flex-direction: column; justify-content: center; padding: 1rem; background: var(--surface-2); border: 1px solid var(--border); border-radius: 15px; }
.ip-primary > span { color: var(--muted-2); font-size: .55rem; font-weight: 700; letter-spacing: .13em; }
.ip-primary > div { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem; }
.ip-primary strong { color: var(--orange); font-size: clamp(1.35rem, 3vw, 2rem); overflow-wrap: anywhere; }
.ip-primary p { margin: .38rem 0 0; color: var(--text); font-size: .78rem; }
.copy-button { padding: .28rem .6rem; border: 1px solid rgba(232,93,4,.35); color: var(--orange); background: var(--orange-soft); border-radius: 999px; cursor: pointer; font-size: .62rem; font-weight: 600; }
.copy-button:disabled { opacity: .45; cursor: not-allowed; }
.detail-grid { display: grid; grid-template-columns: repeat(2, 1fr); margin: .65rem 0 0; }
.detail-grid > div { min-width: 0; padding: .7rem .45rem; border-bottom: 1px solid var(--border); }
.detail-grid > div:nth-last-child(-n+2) { border-bottom: 0; }
.detail-grid dt { color: var(--muted-2); font-size: .58rem; }
.detail-grid dd { margin: .2rem 0 0; overflow-wrap: anywhere; color: var(--text); font-size: .72rem; }
.badge, .status-badge { display: inline-flex; align-items: center; min-height: 23px; padding: .18rem .52rem; border-radius: 999px; font-size: .61rem; font-weight: 700; }
.badge.muted, .status-badge.muted { color: var(--muted); background: var(--bg-alt); }
.badge.clean, .status-badge.clean { color: #13814a; background: rgba(27,154,90,.12); }
.badge.risk, .status-badge.risk { color: #8d6600; background: rgba(228,161,0,.14); }
.badge.caution, .status-badge.caution { color: var(--orange-deep); background: var(--orange-soft); }
.badge.flagged, .status-badge.flagged { color: #b82f2f; background: rgba(217,59,59,.12); }
html[data-theme="dark"] .badge.clean, html[data-theme="dark"] .status-badge.clean { color: #76dfaa; }
html[data-theme="dark"] .badge.risk, html[data-theme="dark"] .status-badge.risk { color: #f0ca62; }
html[data-theme="dark"] .badge.flagged, html[data-theme="dark"] .status-badge.flagged { color: #ff9797; }
.skeleton-text { position: relative; color: transparent!important; overflow: hidden; background: var(--bg-alt); border-radius: 5px; }
.is-loading .skeleton-text::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent); animation: skeleton 1.25s infinite; }
html[data-theme="dark"] .is-loading .skeleton-text::after { background: linear-gradient(90deg, transparent, rgba(255,255,255,.09), transparent); }
.ip-panel:not(.is-loading) .skeleton-text { color: inherit!important; background: transparent; }
@keyframes skeleton { from { transform: translateX(-100%); } to { transform: translateX(100%); } } }
.history-table-wrap { overflow: auto; background: var(--surface); border: 1px solid var(--border); border-radius: 16px; box-shadow: var(--shadow-sm); }
.history-table { width: 100%; min-width: 720px; border-collapse: collapse; }
.history-table th, .history-table td { padding: .82rem 1rem; text-align: left; border-bottom: 1px solid var(--border); font-size: .7rem; }
.history-table th { color: var(--muted-2); background: var(--surface-2); font-size: .56rem; letter-spacing: .1em; }
.history-table tr:last-child td { border-bottom: 0; }
.empty-cell { padding: 2rem!important; color: var(--muted); text-align: center!important; }

@media (max-width: 700px) {
  .detail-grid { grid-template-columns: 1fr; }
  .detail-grid > div:nth-last-child(2) { border-bottom: 1px solid var(--border); }
}

@media (max-width: 420px) {
}
