:root{
  --bg: #f9f3f5; --panel: #ffffff; --panel-2: #f3e7ea; --line: #e5cdd3;
  --accent: #9d2545; --accent-soft: #e9ced5; --accent-dim: #f6f1f2;
  --text: #30181e; --muted: #7c505c; --muted-2: #b1959d; --bad: #b3402f;
}

.ip-card{ background: var(--panel-2); border: 1px solid var(--line); border-radius: 12px; padding: 26px; text-align: center; }
.ip-card .label{ font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: var(--muted); }
.ip-card .ip-value{ font-family: 'JetBrains Mono', monospace; font-size: 32px; font-weight: 800; color: var(--accent); margin: 10px 0; word-break: break-all; }
.ip-card .ip-value.loading{ font-size: 16px; color: var(--muted-2); font-weight: 400; }
.ip-card .ip-value.error{ font-size: 15px; color: var(--bad); font-weight: 600; }
.ip-card .copy-btn{ padding: 8px 18px; border: none; border-radius: 6px; cursor: pointer; font-weight: 600; font-size: 12.5px; color: #fff; background: var(--accent); }
.ip-card .copy-btn:hover{ filter: brightness(1.08); }

.sub-ip{ margin-top: 14px; font-size: 12.5px; color: var(--muted); }
.sub-ip b{ font-family: 'JetBrains Mono', monospace; color: var(--text); }

.section-title{ font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; color: var(--muted); margin: 24px 0 8px; }
.info-grid{ border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.info-row{ display: grid; grid-template-columns: 160px 1fr; gap: 12px; padding: 10px 14px; border-bottom: 1px solid var(--line); background: var(--panel); }
.info-row:last-child{ border-bottom: none; }
.info-row:nth-child(even){ background: var(--accent-dim); }
.info-row .k{ font-size: 11.5px; font-weight: 700; color: var(--muted); }
.info-row .v{ font-family: 'JetBrains Mono', monospace; font-size: 12.5px; word-break: break-word; }

.btns{ display: flex; justify-content: flex-end; gap: 10px; margin-top: 18px; flex-wrap: wrap; }
.app{ padding: 11px 20px; border: none; border-radius: 6px; cursor: pointer; font-weight: 600; font-size: 13.5px; font-family: 'Inter', sans-serif; color: #fff; background: var(--accent); transition: filter .15s ease; }
.app:hover{ filter: brightness(1.08); }

.note{ margin-top: 14px; font-size: 12px; color: var(--muted); line-height: 1.6; background: var(--panel-2); border: 1px solid var(--line); border-radius: 8px; padding: 10px 14px; }
