/* Zeltrika tool discovery: preserve the current ink, paper and green palette. */
.zs-tools-catalog .znu-tool-search {
  max-width: 34rem;
  margin: 0 0 1rem;
}

.zs-tools-catalog .znu-tool-search label {
  display: block;
  margin: 0 0 .5rem;
  color: var(--zs-ink, #101d25);
  font-size: .75rem;
  font-weight: 700;
}

.zs-tools-catalog .znu-search-row {
  display: flex;
  align-items: stretch;
  gap: .5rem;
}

.zs-tools-catalog .znu-tool-search input {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 2.875rem;
  padding: .625rem .75rem;
  border: 1px solid var(--zs-line, #d8ddd5);
  border-radius: 0;
  background: #fbfbf7;
  color: var(--zs-ink, #101d25);
  font: inherit;
  font-size: .875rem;
}

.zs-tools-catalog .znu-tool-search input::placeholder {
  color: #59675e;
  opacity: 1;
}

.zs-tools-catalog .znu-tool-search input:focus-visible,
.zs-tools-catalog .znu-tool-search button:focus-visible,
.zs-tools-catalog .zs-tool-filters button:focus-visible {
  outline: 3px solid #436536;
  outline-offset: 3px;
}

.zs-tools-catalog .znu-tool-search button {
  min-width: 2.875rem;
  min-height: 2.875rem;
  padding: .5rem .75rem;
  border: 1px solid var(--zs-ink, #101d25);
  border-radius: 0;
  background: transparent;
  color: var(--zs-ink, #101d25);
  font: inherit;
  font-size: .75rem;
  font-weight: 700;
  cursor: pointer;
}

.zs-tools-catalog .znu-tool-search button:hover {
  background: #e9eee5;
}

.zs-tools-catalog .znu-tool-search-help {
  margin: .375rem 0 0;
  color: #53635c;
  font-size: .6875rem;
  line-height: 1.5;
}

.zs-tools-catalog .zs-tool-filters button {
  min-height: 2.75rem;
  line-height: 1.35;
}

.zs-tools-catalog .zs-tool-filters button[aria-pressed="true"] {
  border-color: var(--zs-ink, #101d25);
  background: var(--zs-ink, #101d25);
  color: #fff;
}

.zs-tools-catalog .zs-tool-grid .zs-tool:focus-within {
  outline: 3px solid #436536;
  outline-offset: 3px;
}

.zs-tools-catalog .zs-tool-grid .zs-preview-generic span {
  max-width: 14rem;
  font-size: .6875rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.4;
}

/* Keep the existing two-column filter buttons and give them touch-sized rows. */
@media (max-width: 600px) {
  .zs-tools-catalog .znu-tool-search {
    max-width: none;
    margin-bottom: .875rem;
  }

  .zs-tools-catalog .znu-search-row {
    gap: .375rem;
  }

  .zs-tools-catalog .zs-tool-filters button {
    min-height: 3rem;
    padding: .625rem .5rem;
    font-size: .75rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .zs-tools-catalog .zs-tool-filters button,
  .zs-tools-catalog .zs-tool-grid .zs-tool,
  .zs-tools-catalog .znu-tool-search button {
    scroll-behavior: auto;
    transition: none !important;
  }
}

/* The blog's category disclosure keeps the same visual style, with reliable
   touch targets and visible keyboard focus on small screens. */
.zj-journal .zt-topic-all,
.zj-journal .zt-topic-menu summary {
  min-height: 2.75rem;
}

.zj-journal .zt-topic-panel a:focus-visible,
.zj-journal .zt-topic-all:focus-visible,
.zj-journal .zt-topic-menu summary:focus-visible {
  outline: 3px solid #436536;
  outline-offset: 3px;
}

@media (max-width: 560px) {
  .zj-journal .zt-topic-panel a {
    min-height: 2.75rem;
    align-items: center;
  }
}
