/* Egytag Advanced Tool Lab — browser, privacy, proxy, data and API workspaces. */

.lab-controls,
.proxy-controls,
.converter-controls,
.api-client{
  gap:1rem;
}
.lab-actionbar{
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
  align-items:center;
}
.tool-controls .secondary-action{
  background:var(--surface-raised);
  color:var(--text-primary);
  border-color:var(--quality-surface-border-strong);
  box-shadow:none;
}
.tool-controls .secondary-action:hover,
.tool-controls .secondary-action:focus-visible{
  border-color:var(--accent);
  color:var(--accent);
}
.tool-controls .text-action{
  min-height:auto;
  padding:.15rem .35rem;
  border:0;
  background:transparent;
  color:var(--accent);
  box-shadow:none;
  font-size:.76rem;
}
.lab-report{
  min-width:0;
  display:grid;
  gap:.85rem;
  padding:1rem;
  border:1px solid var(--quality-surface-border);
  border-radius:var(--quality-radius-panel);
  background:var(--quality-surface-bg);
  box-shadow:var(--quality-surface-shadow);
}
.lab-report--empty{
  min-height:8rem;
  place-items:center;
}
.lab-empty{
  color:var(--text-muted);
  text-align:center;
  line-height:1.8;
}
.lab-report__section{
  min-width:0;
  padding:.95rem;
  border:1px solid color-mix(in srgb,var(--quality-surface-border) 82%,transparent);
  border-radius:14px;
  background:var(--surface-raised);
}
.lab-report__section h2{
  margin:0 0 .7rem;
  font-size:1rem;
  line-height:1.4;
}
.lab-kv{
  margin:0;
  display:grid;
  gap:0;
}
.lab-kv>div{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(9rem,.72fr) minmax(0,1.28fr);
  gap:.9rem;
  padding:.55rem 0;
  border-block-end:1px solid color-mix(in srgb,var(--border-subtle) 72%,transparent);
}
.lab-kv>div:last-child{border-block-end:0}
.lab-kv dt{
  color:var(--text-muted);
  font-size:.75rem;
  font-weight:750;
}
.lab-kv dd{
  min-width:0;
  margin:0;
  color:var(--text-primary);
  font-size:.82rem;
  font-weight:750;
  overflow-wrap:anywhere;
  direction:auto;
}
.lab-kv dd[data-tone="good"]{color:var(--success-text)}
.lab-kv dd[data-tone="bad"]{color:var(--danger-text)}
.lab-signature{
  display:grid;
  gap:.35rem;
  margin-block-end:.75rem;
}
.lab-signature span{
  color:var(--text-muted);
  font-size:.7rem;
  font-weight:800;
}
.lab-signature code{
  display:block;
  max-width:100%;
  overflow-wrap:anywhere;
  padding:.7rem .8rem;
  border:1px solid var(--border-subtle);
  border-radius:10px;
  background:var(--surface-soft);
  direction:ltr;
  text-align:left;
  font-size:.74rem;
}
.lab-chip-list{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem;
}
.lab-chip-list span{
  padding:.28rem .48rem;
  border:1px solid var(--border-subtle);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--text-secondary);
  font-size:.68rem;
  direction:ltr;
}
.lab-callout{
  padding:.8rem .9rem;
  border-inline-start:3px solid var(--accent);
  border-radius:10px;
  background:var(--surface-soft);
  color:var(--text-secondary);
  font-size:.8rem;
  line-height:1.7;
}
.lab-callout--warning{border-inline-start-color:var(--warning-text)}
.lab-progress{
  min-height:1.4rem;
  color:var(--text-muted);
  font-size:.78rem;
}
.fingerprint-overview{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));
  gap:.5rem;
}
.fingerprint-overview[hidden]{display:none}
.fingerprint-overview>span{
  min-width:0;
  display:grid;
  gap:.08rem;
  padding:.6rem .7rem;
  border:1px solid var(--border-subtle);
  border-radius:10px;
  background:var(--surface-soft);
}
.fingerprint-overview strong{
  min-width:0;
  overflow-wrap:anywhere;
  color:var(--text-primary);
  font-size:.88rem;
  direction:auto;
}
.fingerprint-overview small{
  color:var(--text-muted);
  font-size:.65rem;
  font-weight:750;
  line-height:1.45;
}
.fingerprint-overview>span[data-tone="good"] strong{color:var(--success-text)}
.fingerprint-overview>span[data-tone="bad"] strong{color:var(--danger-text)}
.canvas-lab-preview{
  overflow:hidden;
  padding:.75rem;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:
    linear-gradient(45deg,var(--surface-soft) 25%,transparent 25%) 0 0/16px 16px,
    linear-gradient(-45deg,var(--surface-soft) 25%,transparent 25%) 0 8px/16px 16px,
    linear-gradient(45deg,transparent 75%,var(--surface-soft) 75%) 8px -8px/16px 16px,
    linear-gradient(-45deg,transparent 75%,var(--surface-soft) 75%) -8px 0/16px 16px,
    var(--surface-raised);
}
.canvas-lab-preview canvas{
  display:block;
  width:100%;
  height:auto;
  border-radius:8px;
}
.converter-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:.7rem;
  align-items:end;
}
.converter-swap{
  min-width:3rem;
  align-self:end;
}
.converter-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;
}
.field-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.7rem;
  margin-block-end:.4rem;
}
.field-head strong{font-size:.82rem}
.converter-grid textarea{
  min-height:25rem;
  resize:vertical;
}
.proxy-config-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.7rem;
}
.proxy-check-config-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.proxy-result-tools{
  display:grid;
  gap:.65rem;
  padding:.75rem;
  border:1px solid var(--border-subtle);
  border-radius:12px;
  background:var(--surface-soft);
}
.proxy-result-tools[hidden]{display:none}
.proxy-result-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));
  gap:.45rem;
}
.proxy-result-stats>span{
  display:grid;
  gap:.08rem;
  min-width:0;
  padding:.48rem .58rem;
  border:1px solid var(--border-subtle);
  border-radius:9px;
  background:var(--surface-raised);
}
.proxy-result-stats strong{
  direction:ltr;
  font-size:.82rem;
  color:var(--text-primary);
}
.proxy-result-stats small{
  color:var(--text-muted);
  font-size:.64rem;
  font-weight:750;
}
.proxy-result-filters{
  display:grid;
  grid-template-columns:minmax(8rem,.7fr) minmax(8rem,.7fr) minmax(12rem,1.4fr);
  gap:.6rem;
}
.proxy-result-table{
  min-width:0;
  display:grid;
  overflow:hidden;
  border:1px solid var(--border-subtle);
  border-radius:12px;
}
.proxy-result-row{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(10rem,1.5fr) .75fr .7fr .7fr 1fr .7fr;
  gap:.55rem;
  align-items:center;
  padding:.6rem .7rem;
  border-block-end:1px solid var(--border-subtle);
  font-size:.72rem;
}
.proxy-result-table--target .proxy-result-row{
  grid-template-columns:minmax(9rem,1.35fr) .8fr .65fr .65fr .9fr .9fr .85fr .7fr;
}
.proxy-target-field{
  display:grid;
  gap:.35rem;
}
.proxy-target-field input{
  direction:ltr;
  text-align:left;
}
.proxy-result-row:last-child{border-block-end:0}
.proxy-result-row--head{
  background:var(--surface-soft);
  color:var(--text-muted);
}
.proxy-result-row span,
.proxy-result-row strong{
  min-width:0;
  overflow-wrap:anywhere;
}
.proxy-result-row span[data-tone="good"]{color:var(--success-text);font-weight:850}
.proxy-result-row span[data-tone="bad"]{color:var(--danger-text);font-weight:850}
.proxy-finder-list{
  display:grid;
  gap:.35rem;
}
.proxy-finder-row{
  display:grid;
  grid-template-columns:minmax(12rem,1fr) minmax(0,1fr);
  gap:.8rem;
  align-items:center;
  padding:.6rem .7rem;
  border:1px solid var(--border-subtle);
  border-radius:10px;
  background:var(--surface-raised);
}
.proxy-finder-row code{
  direction:ltr;
  text-align:left;
  overflow-wrap:anywhere;
}
.proxy-finder-row__meta{
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  gap:.28rem;
  align-items:center;
}
.proxy-finder-chip{
  display:inline-flex;
  align-items:center;
  min-height:1.55rem;
  padding:.16rem .42rem;
  border:1px solid var(--border-subtle);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--text-secondary);
  font-size:.66rem;
  font-weight:750;
  line-height:1.3;
  white-space:nowrap;
}
.proxy-finder-chip--tech,
.proxy-finder-chip--latency,
.proxy-finder-chip--uptime{
  direction:ltr;
  unicode-bidi:isolate;
}
.api-request-line{
  display:grid;
  grid-template-columns:7.2rem minmax(0,1fr) auto;
  gap:.55rem;
}
.api-request-line select,
.api-request-line input,
.api-request-line button{
  min-height:3rem;
}
.api-panels{
  display:grid;
  gap:.5rem;
}
.api-panels details{
  overflow:hidden;
  border:1px solid var(--quality-surface-border);
  border-radius:12px;
  background:var(--quality-surface-bg);
}
.api-panels summary{
  cursor:pointer;
  padding:.7rem .85rem;
  background:var(--surface-soft);
  color:var(--text-primary);
  font-size:.78rem;
  font-weight:850;
}
.api-panels details>*:not(summary){
  margin:.8rem;
}
.api-auth-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.7rem;
}
.api-response-head{
  display:flex;
  flex-wrap:wrap;
  gap:.7rem;
  align-items:center;
  justify-content:space-between;
  padding-block-start:.8rem;
  border-block-start:1px solid var(--border-subtle);
}
.api-metrics{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
}
.api-metrics>span{
  display:grid;
  min-width:5.5rem;
  padding:.45rem .6rem;
  border:1px solid var(--border-subtle);
  border-radius:10px;
  background:var(--surface-soft);
}
.api-metrics strong{
  font-size:.85rem;
  direction:ltr;
}
.api-metrics small{
  color:var(--text-muted);
  font-size:.62rem;
}
.api-response-grid{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(16rem,.6fr);
  gap:.75rem;
}
.api-response-grid h3{
  margin:0 0 .35rem;
  font-size:.76rem;
}
.api-response-grid textarea{
  min-height:23rem;
}

@media(max-width:820px){
  .proxy-check-config-grid,
  .proxy-result-filters{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .proxy-result-filters label:last-child{
    grid-column:1/-1;
  }
  .converter-grid,
  .api-response-grid{
    grid-template-columns:1fr;
  }
  .converter-grid textarea,
  .api-response-grid textarea{
    min-height:16rem;
  }
  .proxy-result-table{
    overflow-x:auto;
  }
  .proxy-result-row{
    min-width:48rem;
  }
}
@media(max-width:640px){
  .proxy-result-table{
    overflow:visible;
    border:0;
    background:transparent;
  }
  .proxy-result-row--head{
    display:none;
  }
  .proxy-result-row:not(.proxy-result-row--head){
    min-width:0;
    grid-template-columns:1fr;
    gap:0;
    margin-block-end:.65rem;
    padding:0;
    overflow:hidden;
    border:1px solid var(--border-subtle);
    border-radius:10px;
    background:var(--surface-raised);
  }
  .proxy-result-row:not(.proxy-result-row--head):last-child{
    margin-block-end:0;
    border-block-end:1px solid var(--border-subtle);
  }
  .proxy-result-row:not(.proxy-result-row--head) span{
    display:grid;
    grid-template-columns:minmax(5.8rem,.7fr) minmax(0,1.3fr);
    gap:.65rem;
    align-items:start;
    padding:.52rem .62rem;
    border-block-end:1px solid var(--border-subtle);
    overflow-wrap:anywhere;
  }
  .proxy-result-row:not(.proxy-result-row--head) span:last-child{
    border-block-end:0;
  }
  .proxy-result-row:not(.proxy-result-row--head) span::before{
    content:attr(data-label);
    color:var(--text-muted);
    font-size:.64rem;
    font-weight:800;
  }
  .lab-kv>div{
    grid-template-columns:1fr;
    gap:.2rem;
  }
  .converter-toolbar{
    grid-template-columns:1fr auto 1fr;
  }
  .proxy-config-grid,
  .proxy-check-config-grid,
  .proxy-result-filters,
  .api-auth-grid{
    grid-template-columns:1fr;
  }
  .proxy-result-filters label:last-child{
    grid-column:auto;
  }
  .api-request-line{
    grid-template-columns:6.3rem minmax(0,1fr);
  }
  .api-request-line button{
    grid-column:1/-1;
  }
  .proxy-finder-row{
    grid-template-columns:1fr;
  }
}

/* Tool Lab V4.1 — local API environments/history and curated proxy selection. */
.api-localbar{
  display:grid;
  grid-template-columns:minmax(11rem,.75fr) minmax(12rem,1fr) auto;
  gap:.65rem;
  align-items:end;
}
.api-collectionbar{
  display:grid;
  grid-template-columns:minmax(12rem,.8fr) minmax(12rem,1fr) auto;
  gap:.65rem;
  align-items:end;
}
.api-request-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(9rem,12rem));
  gap:.65rem;
  justify-content:end;
}
.api-safe-template-note{margin:0}
.api-response-toolbar{
  display:grid;
  grid-template-columns:auto minmax(12rem,1fr) auto;
  gap:.75rem;
  align-items:end;
  padding:.7rem .8rem;
  border:1px solid var(--border-subtle);
  border-radius:12px;
  background:var(--surface-soft);
}
.api-response-tabs{display:flex;gap:.35rem}
.tool-controls .api-response-tabs button{min-height:2.55rem}
.tool-controls .api-response-tabs .is-active{
  border-color:var(--accent);
  color:var(--accent);
  background:color-mix(in srgb,var(--accent) 7%,var(--surface-raised));
}
.api-response-search{
  display:grid;
  grid-template-columns:auto minmax(10rem,1fr) auto;
  gap:.45rem;
  align-items:center;
}
.api-response-search small{min-width:4.8rem;color:var(--text-muted);font-size:.65rem}
.api-response-panes textarea{
  min-height:28rem;
  resize:vertical;
  direction:ltr;
  text-align:left;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
}
.api-panel-note{
  margin:.7rem .85rem 0;
  color:var(--text-muted);
  font-size:.72rem;
  line-height:1.65;
}
.api-panel-note code{
  padding:.1rem .28rem;
  border-radius:5px;
  background:var(--surface-soft);
  direction:ltr;
}
.api-code-actions{
  display:flex;
  gap:.3rem;
  align-items:center;
}
.api-history-head{
  display:flex;
  gap:.7rem;
  align-items:center;
  justify-content:space-between;
  margin:.75rem .85rem .4rem;
  color:var(--text-muted);
  font-size:.68rem;
}
.api-history{
  display:grid;
  gap:.35rem;
  padding:0 .85rem .85rem;
}
.tool-controls .api-history-item{
  min-height:auto;
  display:grid;
  grid-template-columns:4.5rem minmax(0,1fr) auto;
  gap:.65rem;
  align-items:center;
  padding:.55rem .65rem;
  border:1px solid var(--border-subtle);
  border-radius:9px;
  background:var(--surface-raised);
  color:var(--text-primary);
  box-shadow:none;
  text-align:start;
}
.tool-controls .api-history-item:hover{
  transform:none;
  border-color:var(--accent);
  box-shadow:none;
}
.api-history-item strong{
  color:var(--accent);
  font-size:.72rem;
  direction:ltr;
}
.api-history-item span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  direction:ltr;
  text-align:left;
  font-size:.72rem;
}
.api-history-item small{
  color:var(--text-muted);
  font-size:.62rem;
  white-space:nowrap;
}
.api-redirects{
  padding:.7rem .85rem;
  border:1px solid var(--border-subtle);
  border-radius:10px;
  background:var(--surface-soft);
}
.api-redirects strong{
  display:block;
  margin-block-end:.35rem;
  font-size:.72rem;
}
.api-redirects ol{
  margin:0;
  padding-inline-start:1.15rem;
  color:var(--text-muted);
  font-size:.68rem;
  line-height:1.65;
  direction:ltr;
  text-align:left;
}
.proxy-finder-config-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.proxy-export-bar{
  display:flex;
  justify-content:flex-end;
}
.proxy-export-bar label{
  min-width:12rem;
}
.proxy-finder-meta{
  min-height:1.35rem;
  color:var(--text-muted);
  font-size:.68rem;
  line-height:1.6;
}
.proxy-finder-row{
  grid-template-columns:auto minmax(12rem,1fr) minmax(0,1fr);
  cursor:pointer;
}
.proxy-finder-row input{
  inline-size:1rem;
  block-size:1rem;
  min-height:0;
  accent-color:var(--accent);
}
.proxy-finder-row:has(input:checked){
  border-color:color-mix(in srgb,var(--accent) 42%,var(--border-subtle));
  background:color-mix(in srgb,var(--accent) 4%,var(--surface-raised));
}

@media(max-width:820px){
  .proxy-finder-config-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .api-localbar,
  .api-collectionbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .api-localbar .lab-actionbar,
  .api-collectionbar .lab-actionbar{
    grid-column:1/-1;
  }
  .api-response-toolbar{
    grid-template-columns:1fr;
    align-items:stretch;
  }
}
@media(max-width:640px){
  .proxy-finder-config-grid{
    grid-template-columns:1fr;
  }
  .proxy-export-bar{
    justify-content:stretch;
  }
  .proxy-export-bar label{
    min-width:0;
    width:100%;
  }
  .api-localbar,
  .api-collectionbar,
  .api-request-options{
    grid-template-columns:1fr;
    justify-content:stretch;
  }
  .api-localbar .lab-actionbar,
  .api-collectionbar .lab-actionbar{
    grid-column:auto;
  }
  .api-response-tabs,
  .api-response-toolbar .lab-actionbar{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .api-response-search{
    grid-template-columns:1fr;
  }
  .tool-controls .api-history-item{
    grid-template-columns:3.7rem minmax(0,1fr);
  }
  .api-history-item small{
    grid-column:1/-1;
  }
  .api-history-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .proxy-finder-row{
    grid-template-columns:auto minmax(0,1fr);
  }
  .proxy-finder-row__meta{
    grid-column:2;
  }
}

/* Tool Lab — isolated, local-only API assertions. */
.api-assertions{border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-soft);padding:.8rem 1rem;}
.api-assertions>summary{cursor:pointer;font-weight:800;}
.api-assertions__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;padding:.75rem 0;}
.api-assertions__fields label{display:grid;gap:.35rem;min-width:0;color:var(--text-muted);font-size:.82rem;}
.api-assertions__fields input{width:100%;min-width:0;box-sizing:border-box;direction:ltr;text-align:left;}
.api-assertions__report:empty{display:none;}
.api-assertions__report{border-top:1px solid var(--border-subtle);padding-top:.8rem;}
.api-assertions__report strong{font-size:.92rem;}
.api-assertions__report ul{list-style:none;display:grid;gap:.35rem;padding:0;margin:.6rem 0 0;}
.api-assertions__report li{padding:.55rem .7rem;border:1px solid var(--border-subtle);border-radius:7px;overflow-wrap:anywhere;font-size:.8rem;}
.api-assertions__pass{color:var(--ink-0);border-inline-start:3px solid #35b886!important;}
.api-assertions__fail{color:var(--ink-0);border-inline-start:3px solid #d86b6b!important;}
@media(max-width:650px){.api-assertions__fields{grid-template-columns:1fr;}}

/* IP and Browser Check V2 — compact, diagnostic-first and accessible. */
.tool-detail[data-tool="ip-browser-check"]{
  --ip-panel-border:color-mix(in srgb,var(--accent) 14%,var(--quality-surface-border));
}
.tool-detail[data-tool="ip-browser-check"] .tool-heading{
  max-width:1050px;
}
.tool-detail[data-tool="ip-browser-check"] .tool-heading h1{
  font-size:clamp(2.15rem,4.2vw,3.75rem);
  letter-spacing:-.025em;
  line-height:1.2;
}
.tool-detail[data-tool="ip-browser-check"] .tool-heading p{
  max-width:73ch;
  font-size:clamp(1rem,1.15vw,1.16rem);
}
.tool-detail[data-tool="ip-browser-check"] .tool-workspace{
  padding:clamp(14px,2.4vw,26px);
}
.ip-inspector{
  min-width:0;
  gap:21px;
  font-size:1.06rem;
}
.ip-inspector [hidden]{display:none!important}
.ip-inspector__intro{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.ip-inspector__intro>div{min-width:0;flex:1 1 350px}
.ip-inspector__intro h2{
  margin:7px 0 8px;
  font-size:clamp(1.5rem,2.2vw,2rem);
  color:var(--text-primary);
  line-height:1.4;
}
.ip-inspector__intro p{
  margin:0;
  max-width:75ch;
  color:var(--text-secondary);
  font-size:1.08rem;
  line-height:1.9;
}
.ip-inspector__privacy{
  display:inline-flex;
  align-items:center;
  gap:8px;
  max-width:100%;
  padding:8px 11px;
  border:1px solid var(--ip-panel-border);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--text-secondary);
  font-size:.95rem;
  font-weight:750;
}
.ip-inspector__privacy::before{
  content:'✓';
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:color-mix(in srgb,var(--accent) 13%,var(--surface-raised));
  color:var(--accent);
  font-size:1rem;
}
.tool-controls .ip-inspector__actions{gap:10px}
.ip-inspector__actions button{
  min-height:48px;
  padding:11px 17px;
  font-size:1rem;
}
.ip-inspector__actions button:disabled{
  opacity:.58;
  cursor:not-allowed;
  transform:none;
  box-shadow:none;
}
.tool-controls label.ip-inspector__privacy-option{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:11px 14px;
  border:1px solid var(--quality-surface-border);
  border-radius:11px;
  background:color-mix(in srgb,var(--surface-soft) 76%,transparent);
  font-weight:600;
  color:var(--text-secondary);
  font-size:1rem;
  line-height:1.7;
}
.tool-controls .ip-inspector__privacy-option input{
  flex:0 0 18px;
  min-width:18px;
  min-height:18px;
  width:18px;
  height:18px;
  margin:4px 0 0;
  padding:0;
  accent-color:var(--accent);
}
.ip-inspector #browserProgress{
  margin:0;
  font-size:1.02rem;
}
.ip-inspector__verdict{
  padding:18px 20px;
  border:1px solid var(--ip-panel-border);
  border-inline-start:4px solid var(--accent);
  border-radius:14px;
  background:color-mix(in srgb,var(--accent) 7%,var(--quality-surface-bg));
}
.ip-inspector__verdict[data-tone="bad"]{border-inline-start-color:var(--danger-text)}
.ip-inspector__verdict[data-tone="neutral"]{border-inline-start-color:var(--warning-text)}
.ip-inspector__verdict strong{
  color:var(--text-primary);
  font-size:clamp(1.18rem,1.4vw,1.36rem);
  line-height:1.5;
}
.ip-inspector__verdict p{
  margin:8px 0 0;
  line-height:1.8;
  font-size:1.03rem;
  color:var(--text-secondary);
}
.ip-inspector .ip-inspector__overview{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
/* Lead with the observed IP and preserve accessible text contrast. */
.ip-inspector__overview>span:first-child{
  background:color-mix(in srgb,var(--accent) 9%,var(--surface-raised));
  border-color:color-mix(in srgb,var(--accent) 31%,var(--quality-surface-border));
}
.ip-inspector__overview>span:first-child strong{
  direction:ltr;
  text-align:start;
  unicode-bidi:isolate;
}
.ip-inspector .lab-kv>div:hover{
  background:color-mix(in srgb,var(--accent) 4%,transparent);
}
.ip-inspector .lab-kv dd[data-tone="neutral"]{color:var(--text-secondary)}
.ip-inspector__overview>span{
  padding:15px;
  min-height:118px;
  align-content:center;
  border:1px solid var(--ip-panel-border);
  border-radius:13px;
  background:var(--surface-raised);
}
.ip-inspector__overview strong{
  font-size:clamp(1.14rem,1.6vw,1.5rem);
  font-weight:900;
  line-height:1.4;
  font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;
}
.ip-inspector__overview small{
  font-size:.94rem;
  line-height:1.65;
}
.ip-inspector__details-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,310px) auto;
  align-items:end;
  gap:14px;
  padding-top:5px;
}
.ip-inspector__details-controls h3{
  color:var(--text-primary);
  margin:0 0 5px;
  font-size:1.48rem;
}
.ip-inspector__details-controls p{
  color:var(--text-secondary);
  margin:0;
  font-size:.98rem;
  line-height:1.75;
}
.tool-controls .ip-inspector__details-controls label{
  font-size:.96rem;
}
.tool-controls .ip-inspector__details-controls input{
  font-size:1.02rem;
  min-height:46px;
  width:100%;
}
.ip-inspector__expand{display:flex;gap:7px;align-items:end}
.tool-controls .ip-inspector__expand button{
  padding:9px 11px;
  min-height:43px;
  font-size:.96rem;
  white-space:nowrap;
}
.ip-inspector #browserReport.lab-report{
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  gap:12px;
}
.ip-inspector .ip-inspector__group{
  min-width:0;
  overflow:hidden;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--quality-surface-bg);
}
.ip-inspector .ip-inspector__group>summary{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:66px;
  padding:15px 19px;
  cursor:pointer;
  font-size:1.16rem;
  color:var(--text-primary);
  list-style:none;
  background:var(--surface-raised);
}
.ip-inspector .ip-inspector__group>summary::-webkit-details-marker{display:none}
.ip-inspector .ip-inspector__group>summary:hover{
  background:color-mix(in srgb,var(--accent) 7%,var(--surface-raised));
}
.ip-inspector .ip-inspector__group>summary:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:-3px;
}
.ip-inspector .ip-inspector__group>summary strong{
  font-weight:850;
  flex:1;
  min-width:0;
}
.ip-inspector__count{
  min-width:28px;
  padding:4px 9px;
  text-align:center;
  border:1px solid var(--quality-surface-border);
  border-radius:999px;
  color:var(--text-secondary);
  font-size:.94rem;
  font-weight:800;
}
.ip-inspector__chevron{
  font-size:1.3rem;
  color:var(--accent);
  transition:transform .15s ease;
}
.ip-inspector .ip-inspector__group[open] .ip-inspector__chevron{transform:rotate(180deg)}
.ip-inspector .ip-inspector__group>.lab-report__section{
  border:0;
  border-top:1px solid var(--quality-surface-border);
  border-radius:0;
  background:transparent;
  padding:8px 22px 14px;
}
.ip-inspector .lab-kv>div{
  grid-template-columns:minmax(155px,36%) minmax(0,1fr);
  gap:18px;
  padding:14px 0;
  align-items:start;
}
.ip-inspector .lab-kv>div[hidden]{display:none}
.ip-inspector .lab-kv dt{
  font-size:1.02rem;
  line-height:1.7;
  color:var(--text-secondary);
}
.ip-inspector .lab-kv dd{
  font-size:1.1rem;
  line-height:1.8;
  font-weight:750;
  color:var(--text-primary);
  unicode-bidi:plaintext;
  word-break:normal;
  white-space:normal;
}
.ip-inspector__matches{
  color:var(--text-secondary);
  font-size:.96rem;
  margin:0;
}
.ip-inspector__disclaimer{
  border:1px solid var(--quality-surface-border);
  border-radius:11px;
  background:var(--surface-soft);
  color:var(--text-secondary);
  padding:13px 16px;
  font-size:.99rem;
  line-height:1.85;
}
@media(max-width:1050px){
  .ip-inspector__details-controls{
    grid-template-columns:minmax(0,1fr) minmax(210px,1fr);
  }
  .ip-inspector__expand{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:760px){
  .ip-inspector .ip-inspector__overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .ip-inspector__details-controls{grid-template-columns:1fr}
  .ip-inspector__actions button{flex:1 1 135px}
  .ip-inspector .lab-kv>div{
    grid-template-columns:minmax(110px,36%) minmax(0,1fr);
    gap:10px;
  }
}
@media(max-width:470px){
  .tool-detail[data-tool="ip-browser-check"] .tool-workspace{padding:12px}
  .ip-inspector{gap:14px}
  .ip-inspector .ip-inspector__overview{gap:8px}
  .ip-inspector__overview>span{min-height:90px;padding:11px}
  .ip-inspector__overview strong{font-size:1.07rem}
  .ip-inspector .ip-inspector__group>summary{padding:12px;min-height:53px}
  .ip-inspector .ip-inspector__group>.lab-report__section{padding:5px 12px}
  .ip-inspector .lab-kv>div{
    grid-template-columns:1fr;
    gap:3px;
    padding:11px 0;
  }
  .ip-inspector .lab-kv dt{font-size:.98rem}
  .ip-inspector .lab-kv dd{font-size:1.06rem}
}
@media(prefers-reduced-motion:reduce){
  .ip-inspector__chevron{transition:none}
}

/* Default-private WebRTC diagnostic exports. */
.tool-controls label.tool-privacy-control{
  display:flex;align-items:flex-start;gap:.7rem;
  padding:.85rem 1rem;border:1px solid var(--quality-surface-border);
  border-radius:var(--quality-radius-control);background:var(--quality-surface-soft);
  color:var(--text-secondary);font-size:clamp(.96rem,1vw,1.06rem);line-height:1.65;
}
.tool-controls .tool-privacy-control input[type=checkbox]{
  box-sizing:border-box;flex:0 0 19px;width:19px;height:19px;
  margin:.22rem 0 0;padding:0;accent-color:var(--accent);
}

/* Egytag Lab 3.0 — diagnostic-first visual hierarchy.
   Uses theme tokens; no fabricated fingerprint risk/uniqueness scores. */
.tool-detail[data-tool="browser-fingerprint"],
.tool-detail[data-tool="ip-browser-check"],
.tool-detail[data-tool="webrtc-leak-test"],
.tool-detail[data-tool="proxy-checker"]{
  --lab3-frame:color-mix(in srgb,var(--accent) 15%,var(--quality-surface-border));
}
.tool-detail[data-tool="browser-fingerprint"] .tool-workspace,
.tool-detail[data-tool="webrtc-leak-test"] .tool-workspace,
.tool-detail[data-tool="canvas-fingerprint"] .tool-workspace,
.tool-detail[data-tool="webgl-report"] .tool-workspace,
.tool-detail[data-tool="web-permissions"] .tool-workspace,
.tool-detail[data-tool="proxy-checker"] .tool-workspace{
  padding:clamp(16px,2.7vw,30px);
}
.lab3-diagnostic,.lab3-diagnostic .lab3-metrics{min-width:0}
.lab3-intro{
  padding:clamp(17px,2.2vw,27px);
  background:linear-gradient(115deg,color-mix(in srgb,var(--accent) 9%,var(--quality-surface-bg)),var(--quality-surface-bg) 64%);
  border:1px solid var(--lab3-frame,var(--quality-surface-border));
  border-radius:18px;
}
.lab3-intro h2{
  margin:.35rem 0 .45rem;
  color:var(--text-primary);
  font-size:clamp(1.55rem,2.5vw,2.3rem);
  line-height:1.35;
  font-weight:900;
}
.lab3-intro p{
  max-width:74ch;
  margin:0;
  font-size:clamp(1rem,1.13vw,1.13rem);
  line-height:1.9;
  color:var(--text-secondary);
}
.lab3-kicker{
  display:inline-block;
  font-size:.86rem;
  font-weight:850;
  letter-spacing:.03em;
  color:var(--accent);
}
.tool-detail .lab-controls .lab-actionbar button{
  min-height:46px;
  padding:10px 16px;
  border-radius:10px;
  font-size:clamp(.96rem,1vw,1.08rem);
  line-height:1.5;
}
.tool-detail .lab-controls .lab-actionbar button[data-action$="-scan"],
.tool-detail .lab-controls .lab-actionbar button[data-action="webrtc-local"],
.tool-detail .lab-controls .lab-actionbar button[data-action="proxy-check"]{
  background:var(--accent);
  color:var(--accent-contrast,var(--surface-raised));
}
.lab3-metrics.fingerprint-overview,
.tool-detail[data-tool="browser-fingerprint"] .fingerprint-overview{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.lab3-metrics.fingerprint-overview>span,
.tool-detail[data-tool="browser-fingerprint"] .fingerprint-overview>span{
  min-height:104px;
  padding:15px 17px;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--surface-raised);
  align-content:center;
  gap:6px;
}
.lab3-metrics.fingerprint-overview strong,
.tool-detail[data-tool="browser-fingerprint"] .fingerprint-overview strong{
  font-size:clamp(1.15rem,1.65vw,1.55rem);
  font-weight:900;
  line-height:1.3;
  font-variant-numeric:tabular-nums;
}
.lab3-metrics.fingerprint-overview small,
.tool-detail[data-tool="browser-fingerprint"] .fingerprint-overview small{
  font-size:clamp(.88rem,.98vw,1rem);
  line-height:1.65;
  color:var(--text-secondary);
}
.lab3-verdict{
  padding:19px 22px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--quality-surface-border));
  border-inline-start:4px solid var(--accent);
  border-radius:14px;
  background:color-mix(in srgb,var(--accent) 7%,var(--quality-surface-bg));
}
.lab3-verdict[hidden],.lab3-explorer[hidden],
.lab3-report .lab3-group[hidden],
.lab3-report .lab-kv>div[hidden],
.lab3-report .lab-chip-list>span[hidden],
.lab3-report .lab-signature[hidden]{display:none!important}
.lab3-verdict strong{
  display:block;
  color:var(--text-primary);
  font-size:clamp(1.17rem,1.4vw,1.4rem);
  font-weight:900;
  line-height:1.55;
}
.lab3-verdict p{
  margin:.5rem 0 0;
  color:var(--text-secondary);
  font-size:clamp(1rem,1.08vw,1.1rem);
  line-height:1.85;
}
.lab3-explorer{
  display:grid;
  gap:13px;
  padding:16px;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--quality-surface-bg);
}
.lab3-explorer__head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,360px);
  align-items:end;
  gap:16px;
}
.lab3-explorer__head h3{
  margin:0;
  font-size:clamp(1.15rem,1.45vw,1.42rem);
  color:var(--text-primary);
}
.lab3-explorer__head p{
  margin:6px 0 0;
  color:var(--text-secondary);
  line-height:1.7;
  font-size:1rem;
}
.tool-controls .lab3-explorer__head label{
  display:grid;
  gap:6px;
  color:var(--text-secondary);
  font-size:.95rem;
}
.tool-controls .lab3-search{
  min-height:45px;
  border-radius:9px;
  padding:9px 13px;
  font-size:1.03rem;
  border-color:var(--quality-surface-border-strong);
}
.lab3-explorer__actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}
.tool-controls .lab3-explorer__actions button{
  min-height:42px;
  padding:9px 12px;
  font-size:.98rem;
  border-radius:9px;
}
.lab3-explorer__matches{
  color:var(--text-secondary);
  font-size:.95rem;
  margin-inline-start:auto;
}
.lab3-report.lab-report{
  display:grid;
  padding:0;
  gap:12px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.lab3-report .lab3-group{
  overflow:hidden;
  min-width:0;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--quality-surface-bg);
}
.lab3-report .lab3-group>summary{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:64px;
  padding:15px clamp(14px,2vw,22px);
  background:var(--surface-raised);
  cursor:pointer;
  list-style:none;
}
.lab3-report .lab3-group>summary::-webkit-details-marker{display:none}
.lab3-report .lab3-group>summary:hover{
  background:color-mix(in srgb,var(--accent) 6%,var(--surface-raised));
}
.lab3-report .lab3-group>summary:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:-3px;
}
.lab3-report .lab3-group>summary strong{
  flex:1;
  font-size:clamp(1.03rem,1.18vw,1.2rem);
  font-weight:900;
  color:var(--text-primary);
}
.lab3-group__count{
  padding:3px 11px;
  border:1px solid var(--quality-surface-border);
  border-radius:999px;
  font-size:.91rem;
  font-variant-numeric:tabular-nums;
  font-weight:800;
  color:var(--text-secondary);
}
.lab3-group__arrow{color:var(--accent);font-size:1.4rem;line-height:1;transition:transform .16s ease}
.lab3-group[open] .lab3-group__arrow{transform:rotate(180deg)}
.lab3-report .lab3-group>.lab-report__section{
  border:0;
  border-top:1px solid var(--quality-surface-border);
  border-radius:0;
  padding:12px clamp(14px,2vw,24px) 16px;
  background:transparent;
}
.lab3-report .lab-kv>div{
  grid-template-columns:minmax(160px,37%) minmax(0,1fr);
  padding:13px 0;
  gap:18px;
  align-items:start;
}
.lab3-report .lab-kv dt{
  font-size:clamp(.96rem,1vw,1.05rem);
  font-weight:700;
  line-height:1.7;
  color:var(--text-secondary);
}
.lab3-report .lab-kv dd{
  font-size:clamp(1rem,1.09vw,1.13rem);
  font-weight:770;
  line-height:1.8;
  color:var(--text-primary);
  unicode-bidi:plaintext;
  word-break:break-word;
}
.lab3-report .lab-kv dd[data-tone=good]{color:var(--success-text)}
.lab3-report .lab-kv dd[data-tone=bad]{color:var(--danger-text)}
.lab3-report .lab-signature span{
  font-size:.98rem;
  line-height:1.65;
}
.lab3-report .lab-signature code{
  padding:12px 14px;
  font-size:clamp(.9rem,1vw,1rem);
  line-height:1.6;
  overflow-wrap:anywhere;
}
.lab3-report .lab-chip-list{gap:7px}
.lab3-report .lab-chip-list span{
  padding:5px 9px;
  font-size:clamp(.86rem,.95vw,.98rem);
  line-height:1.5;
}
.tool-detail[data-tool="proxy-checker"] .proxy-result-stats{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:10px;
}
.tool-detail[data-tool="proxy-checker"] .proxy-result-stats>span{
  min-height:93px;
  padding:16px;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--surface-raised);
}
.tool-detail[data-tool="proxy-checker"] .proxy-result-stats strong{font-size:1.48rem}
.tool-detail[data-tool="proxy-checker"] .proxy-result-stats small{font-size:.94rem}
@media(max-width:880px){
  .lab3-explorer__head{grid-template-columns:1fr}
  .lab3-metrics.fingerprint-overview,
  .tool-detail[data-tool="browser-fingerprint"] .fingerprint-overview{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:540px){
  .lab3-explorer{padding:12px}
  .lab3-metrics.fingerprint-overview>span{padding:12px;min-height:94px}
  .lab3-report .lab-kv>div{grid-template-columns:1fr;gap:4px;padding:12px 0}
  .lab3-report .lab-kv dt{font-size:.95rem}
  .lab3-report .lab-kv dd{font-size:1.02rem}
  .lab3-report .lab3-group>summary{min-height:55px;padding:12px}
  .lab3-report .lab3-group>.lab-report__section{padding:10px 13px 14px}
  .lab3-explorer__actions button{flex:1 1 130px}
}
@media(prefers-reduced-motion:reduce){.lab3-group__arrow{transition:none}}

/* Real proxy outcome distribution: observed responses, never a safety score. */
.lab3-proxy-outcome{
  display:flex;
  min-height:12px;
  overflow:hidden;
  border-radius:999px;
  background:var(--surface-soft);
  border:1px solid var(--quality-surface-border);
}
.lab3-proxy-outcome[hidden]{display:none}
.lab3-proxy-outcome__working{
  display:block;
  width:0%;
  background:var(--success-text);
  transition:width .2s ease;
}
.lab3-proxy-outcome__failed{
  display:block;
  width:100%;
  background:color-mix(in srgb,var(--danger-text) 72%,var(--surface-soft));
  transition:width .2s ease;
}
@media(prefers-reduced-motion:reduce){
 .lab3-proxy-outcome__working,.lab3-proxy-outcome__failed{transition:none}
}

/* Lab 3.0 — request and data workbenches. */
.tool-detail[data-tool="web-api-client"] .tool-workspace,
.tool-detail[data-tool="data-converter"] .tool-workspace,
.tool-detail[data-tool="free-proxy-finder"] .tool-workspace,
.tool-detail[data-tool="link-preview"] .tool-workspace{
  padding:clamp(15px,2.4vw,28px);
}
.tool-detail[data-tool="web-api-client"] .api-client{gap:17px}
.tool-detail[data-tool="web-api-client"] .api-localbar,
.tool-detail[data-tool="web-api-client"] .api-collectionbar{
  gap:12px;
  padding:16px;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--quality-surface-bg);
}
.tool-detail[data-tool="web-api-client"] .api-localbar label,
.tool-detail[data-tool="web-api-client"] .api-collectionbar label{
  font-size:1rem;
  color:var(--text-secondary);
}
.tool-detail[data-tool="web-api-client"] .api-request-line{
  gap:10px;
  padding:15px;
  border:1px solid color-mix(in srgb,var(--accent) 24%,var(--quality-surface-border));
  border-radius:14px;
  background:color-mix(in srgb,var(--accent) 5%,var(--quality-surface-bg));
}
.tool-detail[data-tool="web-api-client"] .api-request-line select,
.tool-detail[data-tool="web-api-client"] .api-request-line input{
  min-height:51px;
  border-radius:9px;
  font-size:1.08rem;
}
.tool-detail[data-tool="web-api-client"] .api-request-line input{
  direction:ltr;
  text-align:left;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
}
.tool-detail[data-tool="web-api-client"] .api-request-line button{
  min-height:51px;
  padding:12px 22px;
  border-radius:9px;
  font-size:1.08rem;
  background:var(--accent);
  color:var(--accent-contrast,var(--surface-raised));
}
.tool-detail[data-tool="web-api-client"] .api-request-line button:disabled{opacity:.6;cursor:wait}
.lab3-api-request-status{
  margin:0;
  min-height:1.4em;
  line-height:1.7;
  font-size:.99rem;
  color:var(--text-secondary);
}
.tool-detail[data-tool="web-api-client"] .api-panels{gap:10px}
.tool-detail[data-tool="web-api-client"] .api-panels details{border-radius:13px}
.tool-detail[data-tool="web-api-client"] .api-panels summary{
  min-height:48px;
  display:flex;
  align-items:center;
  padding:12px 16px;
  font-size:1.06rem;
  font-weight:800;
}
.tool-detail[data-tool="web-api-client"] .api-response-head{
  margin-top:8px;
  padding:16px 0 4px;
  gap:14px;
}
.tool-detail[data-tool="web-api-client"] .api-response-head>strong{
  font-size:clamp(1.28rem,1.7vw,1.55rem);
  font-weight:900;
}
.tool-detail[data-tool="web-api-client"] .api-metrics{gap:9px}
.tool-detail[data-tool="web-api-client"] .api-metrics>span{
  min-width:91px;
  min-height:77px;
  gap:5px;
  padding:12px 13px;
  border:1px solid var(--quality-surface-border);
  border-radius:12px;
  background:var(--surface-raised);
  align-content:center;
}
.tool-detail[data-tool="web-api-client"] .api-metrics strong{
  font-size:clamp(1.08rem,1.2vw,1.35rem);
  font-weight:900;
}
.tool-detail[data-tool="web-api-client"] .api-metrics small{
  font-size:.93rem;
  line-height:1.5;
  color:var(--text-secondary);
}
.tool-detail[data-tool="web-api-client"] .api-metrics>span[data-tone="good"]{
  border-color:color-mix(in srgb,var(--success-text) 40%,var(--quality-surface-border));
}
.tool-detail[data-tool="web-api-client"] .api-metrics>span[data-tone="good"] strong{color:var(--success-text)}
.tool-detail[data-tool="web-api-client"] .api-metrics>span[data-tone="bad"] strong{color:var(--danger-text)}
.tool-detail[data-tool="web-api-client"] .api-response-toolbar{
  padding:14px;
  border-radius:12px;
  background:var(--quality-surface-bg);
}
.tool-detail[data-tool="web-api-client"] .api-response-tabs [role="tab"]{
  min-height:43px;
  padding:10px 14px;
  border-radius:9px;
  font-size:1.03rem;
}
.tool-detail[data-tool="web-api-client"] .api-response-tabs [role="tab"]:focus-visible{
  outline:2px solid var(--accent);outline-offset:3px;
}
.tool-detail[data-tool="web-api-client"] .api-response-panes textarea{
  min-height:330px;
  padding:17px;
  line-height:1.75;
  font-size:clamp(.95rem,1.05vw,1.1rem);
  border:1px solid var(--quality-surface-border-strong);
  border-radius:12px;
}
.tool-detail[data-tool="web-api-client"] .api-panel-note,
.tool-detail[data-tool="web-api-client"] .api-history-head{font-size:.98rem}
.tool-detail[data-tool="web-api-client"] .api-assertions>summary{
  padding:12px 7px;font-size:1.07rem;line-height:1.6;
}
.tool-detail[data-tool="web-api-client"] .api-assertions__fields label{font-size:1rem}
.tool-detail[data-tool="web-api-client"] .api-assertions__report li{font-size:1rem;line-height:1.65}

/* Data conversion always keeps source and output visually distinct. */
.tool-detail[data-tool="data-converter"] .converter-toolbar{
  padding:14px;
  border:1px solid var(--quality-surface-border);
  border-radius:13px;
  background:var(--quality-surface-bg);
}
.tool-detail[data-tool="data-converter"] .converter-toolbar label{font-size:1.03rem}
.tool-detail[data-tool="data-converter"] .converter-toolbar select{min-height:48px;border-radius:9px}
.tool-detail[data-tool="data-converter"] .converter-grid{gap:14px}
.tool-detail[data-tool="data-converter"] .converter-grid>div{
  padding:13px;
  min-width:0;
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--quality-surface-bg);
}
.tool-detail[data-tool="data-converter"] .converter-grid>div:last-child{
  background:color-mix(in srgb,var(--accent) 3%,var(--quality-surface-bg));
  border-color:color-mix(in srgb,var(--accent) 24%,var(--quality-surface-border));
}
.tool-detail[data-tool="data-converter"] .field-head strong{font-size:1.14rem}
.tool-detail[data-tool="data-converter"] .converter-grid textarea{
  min-height:320px;
  padding:16px;
  border-radius:10px;
  line-height:1.7;
  font-size:1.02rem;
}
.lab3-converter-summary{
  display:block;
  padding:13px 17px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--quality-surface-border));
  border-radius:12px;
  background:color-mix(in srgb,var(--accent) 7%,var(--quality-surface-bg));
  color:var(--text-primary);
  font-size:clamp(1rem,1.1vw,1.12rem);
  font-weight:800;
  line-height:1.65;
  direction:ltr;
  text-align:start;
}
.lab3-converter-summary[hidden]{display:none}
.tool-detail[data-tool="data-converter"] .converter-toolbar .converter-swap{min-height:48px;border-radius:9px}

/* Network results: legible endpoint table and usable filter controls. */
.tool-detail[data-tool="free-proxy-finder"] .proxy-finder-list{gap:10px}
.tool-detail[data-tool="free-proxy-finder"] .proxy-finder-row{
  padding:13px 16px;
  border-radius:12px;
  gap:15px;
}
.tool-detail[data-tool="free-proxy-finder"] .proxy-finder-row code{
  font-size:clamp(.95rem,1.05vw,1.12rem);
  line-height:1.65;
}
.tool-detail[data-tool="free-proxy-finder"] .proxy-finder-chip{
  min-height:30px;
  padding:5px 9px;
  font-size:.92rem;
  line-height:1.5;
}
.tool-detail[data-tool="proxy-checker"] .proxy-result-row{
  font-size:clamp(.91rem,1vw,1.05rem);
  line-height:1.55;
  padding:13px 14px;
}
.tool-detail[data-tool="proxy-checker"] .proxy-result-row--head strong{font-size:.98rem}
@media(max-width:900px){
  .tool-detail[data-tool="web-api-client"] .api-response-head{align-items:start}
  .tool-detail[data-tool="data-converter"] .converter-grid textarea{min-height:220px}
}
@media(max-width:540px){
  .tool-detail[data-tool="web-api-client"] .api-localbar,
  .tool-detail[data-tool="web-api-client"] .api-collectionbar{padding:12px}
  .tool-detail[data-tool="web-api-client"] .api-metrics>span{min-width:76px;padding:10px}
  .tool-detail[data-tool="web-api-client"] .api-response-toolbar{padding:11px}
  .tool-detail[data-tool="data-converter"] .converter-toolbar{padding:9px}
  .tool-detail[data-tool="data-converter"] .converter-grid>div{padding:10px}
  .tool-detail[data-tool="proxy-checker"] .proxy-result-row{
    font-size:.98rem;
  }
}

.tool-detail[data-tool="browser-fingerprint"] .lab3-intro{
  padding:14px 18px;
  display:grid;
  gap:6px;
}
.tool-detail[data-tool="browser-fingerprint"] .lab3-intro p{
  margin:0;
  line-height:1.75;
}

/* Lab 4 — JSON response exploration without ever rendering response HTML. */
.tool-detail[data-tool="web-api-client"] .api-response-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.tool-detail[data-tool="web-api-client"] #apiResponsePreviewPane{
  min-width:0;
  padding:14px;
  border:1px solid var(--quality-surface-border);
  border-radius:12px;
  background:var(--quality-surface-bg);
}
.tool-detail[data-tool="web-api-client"] #apiResponsePreviewPane[hidden]{display:none}
.lab4-api-preview-note{
  color:var(--text-secondary);
  font-size:clamp(.96rem,1.05vw,1.08rem);
  line-height:1.7;
  padding:5px 0 13px;
}
.tool-detail[data-tool="web-api-client"] #apiJsonPreview{
  min-height:125px;
  max-height:650px;
}

/* Egytag Lab 4.1 — API Client professional request/response workbench.
   All styles are scoped to web-api-client and use theme variables. */
.tool-detail[data-tool="web-api-client"] .tool-workspace{
  max-width:1500px;
  padding:clamp(15px,2vw,30px);
}
.tool-detail[data-tool="web-api-client"] .api-client--pro{
  display:grid;
  gap:16px;
  min-width:0;
}
.api-client--pro .api-workbench-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  column-gap:18px;
  row-gap:5px;
  align-items:center;
  padding:13px 0 3px;
}
.api-client--pro .api-workbench-head__eyebrow{
  grid-column:1/-1;
  color:var(--accent);
  font-size:clamp(.91rem,1vw,1.03rem);
  font-weight:850;
  direction:ltr;
  text-align:start;
  letter-spacing:.05em;
}
.api-client--pro .api-workbench-head strong{
  font-size:clamp(1.28rem,1.85vw,1.9rem);
  font-weight:900;
  color:var(--text-primary);
  line-height:1.3;
}
.api-client--pro .api-workbench-head p{
  margin:0;
  grid-column:1;
  font-size:clamp(.99rem,1vw,1.07rem);
  line-height:1.7;
  color:var(--text-secondary);
}
.tool-detail .api-client--pro .api-workbench-head button{
  grid-column:2;
  grid-row:2/4;
  min-height:44px;
  padding:8px 14px;
  font-size:clamp(.95rem,1vw,1.04rem);
  border-radius:10px;
}
.api-client--pro .api-request-line{
  direction:ltr;
  grid-template-columns:minmax(114px,145px) minmax(0,1fr) auto;
  display:grid;
  gap:9px;
  padding:12px;
  border:1px solid color-mix(in srgb,var(--accent) 38%,var(--quality-surface-border));
  background:color-mix(in srgb,var(--accent) 6%,var(--quality-surface-bg));
  border-radius:14px;
}
.api-client--pro .api-request-line :is(select,input){
  direction:ltr;
  text-align:left;
  min-width:0;
  min-height:52px;
  font-size:clamp(1.04rem,1.1vw,1.18rem);
  padding-inline:13px;
  background:var(--surface-raised);
}
.api-client--pro .api-request-line input{
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  overflow:hidden;
  text-overflow:ellipsis;
}
.api-client--pro .api-request-line button{
  min-width:105px;
  min-height:52px;
  padding:10px 19px;
  font-size:clamp(1.02rem,1.12vw,1.18rem);
  font-weight:900;
}
.api-client--pro .api-request-options{
  display:flex;
  gap:13px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:start;
}
.api-client--pro .api-request-options label{
  display:flex;
  gap:8px;
  flex:0 1 auto;
  min-width:130px;
  align-items:center;
  font-size:clamp(.97rem,1vw,1.07rem);
  color:var(--text-secondary);
}
.api-client--pro .api-request-options select{
  min-width:92px;
  min-height:40px;
  font-size:1rem;
  background:var(--surface-raised);
}
.api-client--pro .lab3-api-request-status{
  padding:0 3px;
  margin:0;
  font-size:clamp(.96rem,1vw,1.06rem);
  min-height:0;
}
.api-client--pro .api-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);
  align-items:start;
  gap:16px;
}
.api-client--pro .api-main-grid>section{
  display:grid;
  gap:13px;
  min-width:0;
  border:1px solid var(--quality-surface-border);
  border-radius:16px;
  background:var(--quality-surface-bg);
  padding:clamp(14px,1.5vw,22px);
  box-shadow:0 3px 18px rgba(0,0,0,.025);
}
.api-client--pro .api-column-heading{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:9px;
  padding-bottom:11px;
  border-block-end:1px solid var(--quality-surface-border);
}
.api-client--pro .api-column-heading strong{
  color:var(--text-primary);
  font-size:clamp(1.17rem,1.45vw,1.5rem);
  font-weight:900;
}
.api-client--pro .api-column-heading span{
  color:var(--text-secondary);
  font-size:clamp(.9rem,.95vw,1rem);
  line-height:1.5;
}
.api-client--pro .api-panels{gap:9px}
.api-client--pro .api-panels details{
  min-width:0;
  border-radius:10px;
  background:var(--surface-raised);
}
.api-client--pro .api-panels summary{
  padding:14px 16px;
  font-size:clamp(1rem,1.08vw,1.13rem);
  font-weight:800;
  min-height:47px;
  line-height:1.5;
  background:var(--surface-raised);
}
.api-client--pro .api-panels details[open] summary{
  border-block-end:1px solid var(--quality-surface-border);
  color:var(--accent);
}
.api-client--pro .api-panels :is(textarea,input,select){
  max-width:calc(100% - 20px);
  font-size:clamp(.98rem,1.03vw,1.09rem);
  line-height:1.7;
}
.api-client--pro .api-panels textarea{
  min-height:115px;
  resize:vertical;
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  direction:ltr;
  text-align:left;
}
.api-client--pro .api-panels [data-api-section="body"] textarea{
  min-height:200px;
}
.api-client--pro .api-panel-note{
  font-size:clamp(.94rem,.99vw,1.05rem);
  line-height:1.75;
  color:var(--text-secondary);
}
.api-client--pro .api-assertions{
  min-width:0;
  padding:8px 12px;
  border-radius:11px;
  background:var(--surface-raised);
  border:1px solid var(--quality-surface-border);
}
.api-client--pro .api-assertions>summary{
  min-height:44px;
  padding:9px 3px;
  font-size:1.07rem;
  font-weight:800;
}
.api-client--pro .api-assertions__fields label{
  font-size:clamp(.94rem,1vw,1.04rem);
}
.api-client--pro .api-assertions__fields{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:11px;
}
.api-client--pro .api-response-head{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:11px;
  margin:0;
  padding:0 0 10px;
  border-top:0;
  border-block-end:1px solid var(--quality-surface-border);
}
.api-client--pro .api-response-head>strong{
  font-size:clamp(1.17rem,1.45vw,1.5rem);
}
.api-client--pro .api-code-actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
}
.api-client--pro .api-code-actions button{
  min-height:38px;
  padding:5px 10px;
  border:1px solid var(--quality-surface-border);
  border-radius:8px;
  background:var(--surface-raised);
  font-size:.98rem;
  color:var(--accent);
}
.api-client--pro .api-metrics{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(89px,1fr));
  gap:9px;
}
.api-client--pro .api-metrics>span{
  min-width:0;
  min-height:74px;
  padding:10px 12px;
  border:1px solid var(--quality-surface-border);
  border-radius:10px;
  background:var(--surface-raised);
}
.api-client--pro .api-metrics strong{
  font-size:clamp(1.05rem,1.12vw,1.28rem);
  line-height:1.45;
}
.api-client--pro .api-metrics small{
  font-size:.92rem;
  line-height:1.4;
}
.api-client--pro .api-response-toolbar{
  display:grid;
  grid-template-columns:1fr;
  gap:11px;
  padding:0;
  border:0;
  background:transparent;
}
.api-client--pro .api-response-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:5px;
  gap:6px;
  border:1px solid var(--quality-surface-border);
  border-radius:11px;
  background:var(--surface-raised);
}
.api-client--pro .api-response-tabs button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:0;
  min-height:43px;
  white-space:nowrap;
  font-size:clamp(.95rem,1vw,1.06rem);
}
.api-client--pro .api-response-search{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  font-size:clamp(.94rem,1vw,1.04rem);
}
.api-client--pro .api-response-search input{
  width:100%;
  min-width:0;
  min-height:42px;
  border-radius:9px;
  font-size:1.03rem;
}
.api-client--pro .api-response-search small{
  font-size:.92rem;
}
.api-client--pro .api-response-extra{
  border:1px solid var(--quality-surface-border);
  border-radius:10px;
  background:var(--surface-raised);
  overflow:hidden;
}
.api-client--pro .api-response-extra>summary{
  cursor:pointer;
  display:flex;
  align-items:center;
  min-height:43px;
  padding:10px 14px;
  color:var(--text-primary);
  font-size:1rem;
  font-weight:750;
}
.api-client--pro .api-response-extra>summary:focus-visible,
.api-client--pro .api-library-details>summary:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:-3px;
}
.api-client--pro .api-response-extra>.lab-actionbar{
  padding:12px;
  border-block-start:1px solid var(--quality-surface-border);
}
.api-client--pro .api-response-extra .lab-actionbar button{
  min-height:39px;
  font-size:.98rem;
}
.api-client--pro .api-response-panes{
  min-width:0;
  padding:0;
}
.api-client--pro .api-response-panes>div[hidden],
.api-client--pro #apiResponseBody[hidden],
.api-client--pro #apiEmptyState[hidden]{
  display:none!important;
}
.api-client--pro .api-response-panes textarea{
  box-sizing:border-box;
  width:100%;
  min-height:250px;
  max-height:800px;
  padding:17px;
  border-radius:12px;
  background:var(--surface-raised);
  color:var(--text-primary);
  border:1px solid var(--quality-surface-border-strong);
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:clamp(.97rem,1.05vw,1.09rem);
  line-height:1.75;
}
.api-client--pro .api-empty-state{
  display:grid;
  align-content:center;
  justify-items:center;
  text-align:center;
  gap:12px;
  min-height:230px;
  padding:23px 17px;
  border:1px dashed var(--quality-surface-border-strong);
  border-radius:12px;
  background:var(--surface-raised);
}
.api-client--pro .api-empty-state__symbol{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border:1px solid color-mix(in srgb,var(--accent) 28%,var(--quality-surface-border));
  border-radius:15px;
  background:color-mix(in srgb,var(--accent) 7%,var(--surface-raised));
  font-size:1.75rem;
  color:var(--accent);
}
.api-client--pro .api-empty-state strong{
  color:var(--text-primary);
  font-size:clamp(1.18rem,1.4vw,1.45rem);
  font-weight:900;
  line-height:1.5;
}
.api-client--pro .api-empty-state p{
  max-width:44ch;
  margin:0;
  color:var(--text-secondary);
  font-size:clamp(.96rem,1vw,1.08rem);
  line-height:1.85;
}
.api-client--pro .api-library-details{
  border:1px solid var(--quality-surface-border);
  border-radius:14px;
  background:var(--quality-surface-bg);
  overflow:hidden;
}
.api-client--pro .api-library-details>summary{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  padding:17px 19px;
  cursor:pointer;
}
.api-client--pro .api-library-details>summary strong{
  font-size:clamp(1.07rem,1.2vw,1.21rem);
  color:var(--text-primary);
  font-weight:850;
}
.api-client--pro .api-library-details>summary span{
  color:var(--text-secondary);
  font-size:.98rem;
}
.api-client--pro .api-library-content{
  display:grid;
  gap:13px;
  padding:15px;
  border-block-start:1px solid var(--quality-surface-border);
}
.api-client--pro .api-localbar,
.api-client--pro .api-collectionbar{
  gap:11px;
  padding:12px;
  border:1px solid var(--quality-surface-border);
  border-radius:11px;
  background:var(--surface-raised);
}
.api-client--pro .api-localbar label,
.api-client--pro .api-collectionbar label{
  display:grid;
  gap:7px;
  font-size:1rem;
}
.api-client--pro .api-localbar :is(select,input),
.api-client--pro .api-collectionbar :is(select,input){
  min-height:42px;
  background:var(--quality-surface-bg);
  font-size:1.01rem;
}
.api-client--pro .api-library-content .lab-actionbar{
  justify-content:flex-start;
}
.api-client--pro .api-library-content button{
  min-height:40px;
  font-size:.98rem;
}
.api-client--pro .api-safe-template-note{
  padding:10px 13px;
  border:1px solid var(--quality-surface-border);
  border-radius:10px;
  color:var(--text-secondary);
  font-size:1.01rem;
  line-height:1.8;
}
.api-client--pro .api-error{
  font-size:clamp(1rem,1.08vw,1.1rem);
  line-height:1.75;
}
@media(max-width:1100px){
  .api-client--pro .api-main-grid{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:790px){
  .api-client--pro .api-workbench-head{
    grid-template-columns:1fr;
  }
  .tool-detail .api-client--pro .api-workbench-head button{
    grid-row:auto;
    grid-column:1;
    justify-self:start;
  }
  .api-client--pro .api-localbar,
  .api-client--pro .api-collectionbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .api-client--pro .api-localbar .lab-actionbar,
  .api-client--pro .api-collectionbar .lab-actionbar{grid-column:1/-1}
}
@media(max-width:540px){
  .api-client--pro .api-request-line{
    grid-template-columns:minmax(95px,110px) minmax(0,1fr);
    padding:10px;
  }
  .api-client--pro .api-request-line button{
    grid-column:1/-1;
    width:100%;
  }
  .api-client--pro .api-request-options label{min-width:125px}
  .api-client--pro .api-main-grid>section{padding:12px}
  .api-client--pro .api-response-search{grid-template-columns:1fr}
  .api-client--pro .api-response-head{grid-template-columns:1fr}
  .api-client--pro .api-code-actions{justify-content:flex-start}
  .api-client--pro .api-localbar,
  .api-client--pro .api-collectionbar{grid-template-columns:1fr}
  .api-client--pro .api-localbar .lab-actionbar,
  .api-client--pro .api-collectionbar .lab-actionbar{grid-column:auto}
  .api-client--pro .api-assertions__fields{grid-template-columns:1fr}
  .api-client--pro .api-response-tabs button{font-size:.93rem}
}

/* API workbench refinement: keep the request itself above auxiliary settings. */
.tool-detail[data-tool="web-api-client"] .tool-heading h1{
  font-size:clamp(1.9rem,3.1vw,3.05rem);
  line-height:1.21;
}
.tool-detail[data-tool="web-api-client"] .tool-heading p{
  font-size:clamp(1rem,1.05vw,1.11rem);
  line-height:1.62;
}
.tool-detail[data-tool="web-api-client"] .tool-workspace{
  margin-block-start:.85rem;
}
.api-client--pro .api-workbench-head{
  gap:4px 16px;
  padding:0 0 2px;
}
.api-client--pro .api-workbench-head strong{
  font-size:clamp(1.12rem,1.42vw,1.48rem);
}
.api-client--pro .api-workbench-head p{
  line-height:1.55;
  font-size:clamp(.96rem,.99vw,1.05rem);
}
.api-client--pro .api-network-details{
  min-width:0;
  border:1px solid var(--quality-surface-border);
  border-radius:10px;
  background:var(--quality-surface-bg);
}
.api-client--pro .api-network-details>summary{
  cursor:pointer;
  padding:10px 15px;
  font-size:clamp(.95rem,1vw,1.05rem);
  font-weight:800;
  color:var(--text-secondary);
  line-height:1.55;
}
.api-client--pro .api-network-details>summary:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:-3px;
}
.api-client--pro .api-network-details[open]>summary{
  border-block-end:1px solid var(--quality-surface-border);
  color:var(--accent);
}
.api-client--pro .api-network-details>.api-request-options{
  padding:13px;
  justify-content:flex-start;
}
@media(max-width:540px){
 .tool-detail[data-tool="web-api-client"] .tool-heading h1{
   font-size:clamp(1.74rem,8vw,2.26rem);
   line-height:1.28;
 }
 .api-client--pro .api-workbench-head{row-gap:6px}
}

/* API result summary: emphasize the actual HTTP status, balance all 7 metrics. */
.api-client--pro .api-metrics{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.api-client--pro .api-metrics>span:first-child{
  grid-column:span 2;
  border-color:color-mix(in srgb,var(--accent) 25%,var(--quality-surface-border));
  background:color-mix(in srgb,var(--accent) 5%,var(--surface-raised));
}
.api-client--pro .api-metrics>span:first-child strong{
  font-size:clamp(1.27rem,1.5vw,1.65rem);
}
@media(max-width:650px){
  .api-client--pro .api-metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Lab API Workflows: user-initiated, bounded, accessible response comparison. */
.api-client--pro .api-diff-panel,
.api-client--pro .api-runner-panel{
  min-width:0;
  border:1px solid var(--quality-surface-border);
  border-radius:13px;
  background:var(--surface-raised);
  overflow:hidden;
}
.api-client--pro .api-diff-panel>summary,
.api-client--pro .api-runner-panel>summary{
  cursor:pointer;
  padding:15px 17px;
  min-height:45px;
  font-size:clamp(.99rem,1.09vw,1.13rem);
  color:var(--text-primary);
  font-weight:830;
  line-height:1.6;
}
.api-client--pro .api-runner-panel>summary{
  display:flex;flex-wrap:wrap;gap:10px;align-items:center;
}
.api-client--pro .api-runner-panel>summary span{
  font-size:.94rem;color:var(--text-secondary);font-weight:500;
}
.api-client--pro .api-diff-panel>summary:focus-visible,
.api-client--pro .api-runner-panel>summary:focus-visible{
  outline:2px solid var(--accent);outline-offset:-3px;
}
.api-client--pro .api-diff-panel[open]>summary,
.api-client--pro .api-runner-panel[open]>summary{
  border-block-end:1px solid var(--quality-surface-border);
  color:var(--accent);
}
.api-client--pro .api-diff-panel>.api-panel-note{
  margin:12px 16px;
}
.api-client--pro .api-diff-panel>.lab-actionbar{
  padding:0 16px 13px;
}
.api-client--pro .api-diff-panel .lab-actionbar button,
.api-client--pro .api-runner-panel .lab-actionbar button{
  min-height:41px;
  padding:9px 12px;
  border-radius:9px;
  font-size:.98rem;
}
.api-client--pro #apiDiffStatus,
.api-client--pro #apiRunnerStatus{
  min-height:0;
  margin:0;
  padding:0 16px 10px;
  color:var(--text-secondary);
  font-size:clamp(.95rem,1vw,1.05rem);
  line-height:1.7;
}
.api-client--pro #apiDiffStatus:empty,
.api-client--pro #apiRunnerStatus:empty{display:none}
.api-client--pro .api-diff-result{
  display:grid;
  gap:9px;
  min-width:0;
  padding:0 16px 15px;
  color:var(--text-primary);
}
.api-client--pro .api-diff-result:empty{display:none}
.api-client--pro .api-diff-result>strong{
  font-size:1.1rem;
  line-height:1.65;
  overflow-wrap:anywhere;
}
.api-client--pro .api-diff-result ol{
  display:grid;
  gap:5px;
  margin:0;
  padding-inline-start:22px;
  max-height:340px;
  overflow:auto;
}
.api-client--pro .api-diff-result li{
  padding:7px 9px;
  background:var(--quality-surface-bg);
  border:1px solid var(--quality-surface-border);
  border-radius:8px;
  font-size:.98rem;
  line-height:1.6;
  overflow-wrap:anywhere;
}
.api-client--pro .api-diff-result li span{
  display:inline-block;
  min-width:64px;
  font-weight:800;
  color:var(--accent);
}
.api-client--pro .api-diff-result li code{
  font-size:.95rem;
  direction:ltr;
  unicode-bidi:isolate;
}
.api-client--pro .api-runner-content{
  display:grid;
  gap:12px;
  padding:14px 16px 17px;
}
.api-client--pro .api-runner-content>.api-panel-note{
  margin:0;
  color:var(--text-secondary);
  font-size:1rem;
  line-height:1.8;
}
.api-client--pro .api-runner-choices{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  gap:9px;
}
.api-client--pro .api-runner-choice{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-content:start;
  column-gap:10px;
  row-gap:5px;
  padding:13px 14px;
  border:1px solid var(--quality-surface-border);
  border-radius:11px;
  background:var(--quality-surface-bg);
  cursor:pointer;
  min-width:0;
}
.api-client--pro .api-runner-choice:has(input:disabled){
  opacity:.58;cursor:not-allowed;
}
.api-client--pro .api-runner-choice input{
  grid-row:1/3;
  align-self:start;
  width:18px;height:18px;
  accent-color:var(--accent);
}
.api-client--pro .api-runner-choice strong{
  font-size:1.06rem;color:var(--text-primary);
  font-weight:800;
  overflow-wrap:anywhere;
}
.api-client--pro .api-runner-choice span,
.api-client--pro .api-runner-choice small{
  grid-column:2;
  font-size:.93rem;
  line-height:1.6;
  color:var(--text-secondary);
  overflow-wrap:anywhere;
  direction:ltr;text-align:start;
}
.api-client--pro .api-runner-results{
  display:grid;gap:8px;
  min-width:0;
}
.api-client--pro .api-runner-results:empty{display:none}
.api-client--pro .api-runner-result{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  padding:12px 15px;
  border:1px solid var(--quality-surface-border);
  border-radius:9px;
  background:var(--quality-surface-bg);
  font-size:1rem;
}
.api-client--pro .api-runner-result strong{flex:1 1 150px;color:var(--text-primary)}
.api-client--pro .api-runner-result span{direction:ltr;color:var(--text-secondary)}
.api-client--pro .api-runner-result small{direction:ltr;font-size:.95rem;color:var(--text-secondary)}
.api-client--pro .api-runner-result[data-tone=good]{border-inline-start:3px solid var(--success-text)}
.api-client--pro .api-runner-result[data-tone=bad]{border-inline-start:3px solid var(--danger-text)}
@media(max-width:540px){
  .api-client--pro .api-diff-panel>.lab-actionbar button{flex:1 1 140px}
  .api-client--pro .api-runner-content{padding:12px}
  .api-client--pro .api-runner-choices{grid-template-columns:1fr}
}
