/* DYK AI token calculator. Every selector stays under .dyk-aic. */
.dyk-aic.dyk-aic-tokens textarea {
  min-height: 8em;
  resize: vertical;
  line-height: 1.5;
}
.dyk-aic .dyk-aic-tokens-input,
.dyk-aic .dyk-aic-tokens-opts {
  margin-bottom: 0.75em;
}
.dyk-aic .dyk-aic-tokens-models {
  margin: 0.5em 0 0.75em;
}
.dyk-aic .dyk-aic-tokens-models > summary,
.dyk-aic .dyk-aic-tokens-basis > summary,
.dyk-aic .dyk-aic-tokens-notices > summary {
  cursor: pointer;
  font-weight: 600;
}
.dyk-aic .dyk-aic-tokens-provider {
  margin: 0.5em 0;
  padding: 0.4em 0.75em 0.6em;
  border: 1px solid var(--dyk-aic-border);
  border-radius: 6px;
  min-width: 0;
}
.dyk-aic .dyk-aic-tokens-provider > legend {
  padding: 0 0.3em;
  font-weight: 600;
}
.dyk-aic label.dyk-aic-tokens-check {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.3em;
  margin: 0.15em 1em 0.15em 0;
  font-weight: 400;
}
.dyk-aic label.dyk-aic-tokens-check input {
  width: auto;
  margin: 0;
}
.dyk-aic .dyk-aic-tokens-size {
  font-size: 0.8em;
  color: var(--dyk-aic-muted);
}
.dyk-aic .dyk-aic-tokens-stats {
  margin: 0 0 0.5em;
  font-weight: 600;
}
.dyk-aic .dyk-aic-tokens-est {
  color: var(--dyk-aic-muted);
}
.dyk-aic .dyk-aic-tokens-range {
  display: block;
  font-size: 0.8em;
  color: var(--dyk-aic-muted);
}
.dyk-aic .dyk-aic-tokens-long {
  display: block;
  font-size: 0.75em;
  color: var(--dyk-aic-warn);
}
.dyk-aic .dyk-aic-tokens-na {
  color: var(--dyk-aic-muted);
}
.dyk-aic .dyk-aic-tokens-name {
  font-weight: 600;
}
.dyk-aic button.dyk-aic-tokens-load {
  padding: 0.25em 0.6em;
  border: 1px solid var(--dyk-aic-accent);
  border-radius: 6px;
  font: inherit;
  font-size: 0.85em;
  color: var(--dyk-aic-accent);
  background: transparent;
  cursor: pointer;
  white-space: normal;
}
.dyk-aic .dyk-aic-tokens-loading {
  font-size: 0.85em;
  color: var(--dyk-aic-muted);
}
.dyk-aic .dyk-aic-tokens-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4em 1.2em;
  margin: 0.5em 0 0;
}
.dyk-aic .dyk-aic-tokens-h {
  margin: 1.4em 0 0.4em;
  font-size: 1.1em;
}
.dyk-aic .dyk-aic-tokens-viz {
  padding: 0.75em;
  border: 1px solid var(--dyk-aic-border);
  border-radius: 8px;
  line-height: 2.1;
  white-space: pre-wrap;
  word-break: break-all;
  overflow-wrap: anywhere;
}
.dyk-aic .dyk-aic-tokens-piece {
  border-radius: 3px;
  padding: 0.1em 0;
  color: inherit;
}
.dyk-aic .dyk-aic-tokens-c0 { background: rgba(37, 99, 235, 0.16); }
.dyk-aic .dyk-aic-tokens-c1 { background: rgba(21, 128, 61, 0.16); }
.dyk-aic .dyk-aic-tokens-c2 { background: rgba(180, 83, 9, 0.16); }
.dyk-aic .dyk-aic-tokens-c3 { background: rgba(147, 51, 234, 0.16); }
.dyk-aic .dyk-aic-tokens-multi {
  position: relative;
  outline: 1px dashed currentColor;
  outline-offset: -1px;
}
.dyk-aic .dyk-aic-tokens-multi::after {
  content: attr(data-n);
  position: relative;
  top: -0.7em;
  margin-left: 0.1em;
  font-size: 0.65em;
  font-weight: 700;
  line-height: 1;
}
.dyk-aic .dyk-aic-tokens-llama {
  margin: 1.2em 0 0.3em;
  font-weight: 600;
}
.dyk-aic .dyk-aic-tokens-notices ul {
  margin: 0.5em 0 0;
  padding-left: 1.2em;
  font-size: 0.85em;
}
@media (max-width: 480px) {
  .dyk-aic .dyk-aic-tokens-table th,
  .dyk-aic .dyk-aic-tokens-table td {
    padding: 0.35em 0.3em;
    font-size: 0.9em;
  }
}
.dyk-aic.dyk-aic-tokens th,
.dyk-aic.dyk-aic-tokens td {
  overflow-wrap: normal;
  word-break: keep-all;
}
.dyk-aic.dyk-aic-tokens td:first-child,
.dyk-aic.dyk-aic-tokens th:first-child {
  min-width: 7.5em;
}
.dyk-aic.dyk-aic-tokens .dyk-aic-tokens-basis td:last-child {
  min-width: 14em;
}
