#ip-check {
  --ip-card:rgba(255,255,255,.86);
  --ip-border:rgba(84,108,141,.12);
  --ip-muted:#5f6b81;
  --ip-link:#325bd6;
  padding:36px 28px 28px;
  border:1px solid var(--ip-border);
  border-radius:24px;
  background:radial-gradient(ellipse at 100% 0%,rgba(168,236,215,.42),transparent 65%),radial-gradient(ellipse at 0% 100%,rgba(245,225,205,.3),transparent 60%),#f5f8ff;
  scroll-margin-top:76px;
}
.ip-check-head { text-align:center; max-width:730px; margin:0 auto 32px; }
.ip-check-head h2 { margin:8px 0 14px; font-size:32px; line-height:1.25; letter-spacing:-.6px; }
.ip-check-head p { color:var(--ip-muted); font-size:15px; line-height:1.7; }
.ip-check-hint { display:block; margin-top:8px; color:var(--ip-muted); font-size:12px; }
.ip-tools-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
#ip-check .ip-tool-card {
  position:relative; min-width:0; padding:22px; border:1px solid var(--ip-border);
  border-radius:18px; background:var(--ip-card);
  box-shadow:0 7px 18px rgba(34,54,81,.05); transition:border-color .2s,box-shadow .2s,opacity .4s,transform .4s;
}
#ip-check .ip-tool-card:hover { border-color:var(--ip-link); box-shadow:0 10px 24px rgba(34,54,81,.09); }
#ip-check .ip-tool-card:focus-within { outline:3px solid var(--ip-link); outline-offset:3px; }
.ip-tool-card h3 { margin:0; font-size:16px; line-height:1.3; }
.ip-tool-link { display:flex; align-items:center; gap:10px; }
.ip-tool-link::after { content:""; position:absolute; inset:0; border-radius:18px; }
.ip-tool-link:focus-visible { outline:none; }
.ip-tool-icon { display:inline-flex; align-items:center; justify-content:center; flex:0 0 34px; width:34px; height:34px; border-radius:9px; background:#edf5ff; color:#147dd4; }
.ip-tool-icon svg { width:23px; height:23px; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ip-tool-icon.indigo { color:#4c64b8; background:#eef0ff; }
.ip-tool-icon.green { color:#139552; background:#e9f8ef; }
.ip-tool-icon.amber { color:#aa711c; background:#fff4df; }
.ip-external { flex:0 0 15px; width:15px; height:15px; margin-left:auto; color:var(--ip-muted); stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.ip-tool-domain { margin-top:5px; color:var(--ip-link); font-size:12px; letter-spacing:0; }
.ip-entry-status { display:inline-block; margin-left:5px; padding:1px 5px; border:1px solid var(--ip-border); border-radius:5px; color:var(--ip-muted); font-size:11px; }
.ip-tool-description { flex:1; margin:14px 0 20px; color:var(--ip-muted); font-size:14px; line-height:1.75; }
.ip-tool-focus { margin-top:auto; padding-top:13px; border-top:1px solid var(--ip-border); color:var(--ip-muted); font-size:12px; line-height:1.65; }
.ip-tool-focus strong { color:var(--ink); font-weight:600; }
.ip-check-note { margin-top:16px; padding:22px; border:1px solid var(--ip-border); border-radius:18px; background:var(--ip-card); }
.ip-check-note h3 { display:flex; align-items:center; gap:9px; font-size:15px; font-weight:600; }
.ip-check-note h3 svg { width:19px; height:19px; stroke:var(--ip-link); stroke-width:1.8; stroke-linecap:round; }
.ip-check-note ul { margin:12px 0 0; padding-left:20px; color:var(--ip-muted); font-size:13px; line-height:1.8; }
.ip-check-note li+li { margin-top:5px; }
.auxiliary-tools { margin-top:32px; }
.auxiliary-title { margin-bottom:16px; font-size:20px; }
.auxiliary-tool-card { display:grid; grid-template-columns:minmax(0,1fr) minmax(230px,.7fr); column-gap:36px; align-items:center; }
.auxiliary-tool-card .tool-head { grid-column:1; grid-row:1; }
.auxiliary-tool-card .desc { grid-column:1; grid-row:2; }
.auxiliary-tool-card .code-bar { grid-column:2; grid-row:1; margin:0; }
.auxiliary-tool-card .card-footer { grid-column:2; grid-row:2; margin-top:16px; padding-top:0; border-top:0; }
html[data-theme="dark"] #ip-check {
  --ip-card:rgba(27,37,51,.94);
  --ip-border:rgba(145,172,199,.18);
  --ip-muted:#adb9ca;
  --ip-link:#8dbcff;
  background:radial-gradient(ellipse at 100% 0%,rgba(39,118,101,.19),transparent 65%),radial-gradient(ellipse at 0% 100%,rgba(100,80,138,.13),transparent 60%),#151e2b;
}
html[data-theme="dark"] .ip-tool-icon { background:#1b3850; color:#8ac9ff; }
html[data-theme="dark"] .ip-tool-icon.indigo { background:#2a3355; color:#aebaff; }
html[data-theme="dark"] .ip-tool-icon.green { background:#193d30; color:#86dcaf; }
html[data-theme="dark"] .ip-tool-icon.amber { background:#443624; color:#e7c78b; }
@media (max-width:1150px) { .ip-tools-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) {
  #ip-check { padding:26px 16px 16px; border-radius:20px; scroll-margin-top:100px; }
  .ip-check-head { margin-bottom:24px; }
  .ip-check-head h2 { font-size:26px; }
  .ip-check-head p { font-size:14px; }
  .ip-tools-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  #ip-check .ip-tool-card { padding:20px; }
  .ip-tool-description { margin:12px 0 16px; }
  .ip-check-note { padding:20px; }
  .auxiliary-tool-card { display:flex; }
  .auxiliary-tool-card .code-bar { margin-top:16px; }
  .auxiliary-tool-card .card-footer { margin-top:16px; }
}
