/* cookbook.css — minimal, breathes with the page */

/* ── Recipe meta table ───────────────────────────────────────────────────── */

table.recipe-meta {
  border-collapse: collapse;
  //font-size: 0.82em;
  opacity: 1;
  margin: 0.3em 0 1em;
  width: auto;
  //border: none;
  background: transparent;
}

table.recipe-meta thead { display: none; }

table.recipe-meta td {
  padding: 0.15em 1em 0.15em 0;
  border: none !important;
  vertical-align: top;
  line-height: 1.5;
  font-weight: 300;
}

table.recipe-meta td:first-child {
  //font-family: var(--font-mono);
  //font-size: 0.75em;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  //color: var(--fg-faint);
  white-space: nowrap;
  min-width: 5em;
  padding-top: 0.28em;
}

table.recipe-meta td a {
  color: var(--accent);
  border-bottom: 1px solid var(--accent-dim);
}

table.recipe-meta td a:hover {
  color: var(--fg);
  border-bottom-color: var(--fg-faint);
}

table.recipe-meta .timestamp {
  color: var(--accent);
  font-family: var(--font-mono);
}

/* ── Toolbar — no box, just spacing and a faint separator ───────────────── */

.cb-toolbar {
  margin: 0 0 1.8em;
  padding: 0;
  background: transparent;
  border: none;
  border-bottom: 1px solid var(--border);
  padding-bottom: 0.9em;
}

.cb-toolbar-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4em 0.6em;
}

/* ── Search ──────────────────────────────────────────────────────────────── */

.cb-search {
  flex: 1 1 140px;
  min-width: 0;
  padding: 0.3em 0;
  background: transparent;
  color: var(--fg);
  border: none;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
  font-size: 0.875rem;
  font-family: var(--font-body);
  font-weight: 300;
  outline: none;
  transition: border-color var(--dur-fast);
}

.cb-search::placeholder {
  color: var(--fg-faint);
  font-style: italic;
}

.cb-search:focus {
  border-bottom-color: var(--accent);
}

/* ── Status filters ──────────────────────────────────────────────────────── */

.cb-filters {
  display: flex;
  gap: 0.15em;
}

.cb-filter-btn {
  padding: 0.2em 0.55em;
  background: transparent;
  color: var(--fg-faint);
  border: none;
  border-radius: 3px;
  font-size: 0.75rem;
  font-family: var(--font-mono);
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: color var(--dur-fast), background var(--dur-fast);
}

.cb-filter-btn:hover {
  color: var(--fg);
  background: var(--chip-bg);
}

.cb-filter-btn.active {
  color: var(--accent);
  background: var(--accent-subtle);
}

/* ── Keyword pills ───────────────────────────────────────────────────────── */

.cb-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2em;
  flex: 1 1 100%;
}

.cb-tag {
  padding: 0.12em 0.5em;
  background: transparent;
  color: var(--fg-faint);
  border: 1px solid var(--border);
  border-radius: 99px;
  font-size: 0.7rem;
  font-family: var(--font-mono);
  letter-spacing: 0.03em;
  cursor: pointer;
  transition: color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);
}

.cb-tag:hover {
  color: var(--accent);
  border-color: var(--accent-dim);
}

.cb-tag.active {
  color: var(--accent);
  border-color: var(--accent-dim);
  background: var(--accent-subtle);
}

/* ── Count ───────────────────────────────────────────────────────────────── */

.cb-count {
  font-size: 0.7rem;
  font-family: var(--font-mono);
  color: var(--fg-faint);
  letter-spacing: 0.04em;
  margin-left: auto;
}

/* ── Badges ──────────────────────────────────────────────────────────────── */

.cb-badge {
  display: inline-block;
  padding: 0.1em 0.4em;
  border-radius: 3px;
  font-size: 0.62em;
  font-family: var(--font-mono);
  font-weight: 400;
  vertical-align: middle;
  margin-right: 0.3em;
  letter-spacing: 0.05em;
  text-transform: lowercase;
  border: 1px solid;
  line-height: 1.5;
}

.cb-badge-cooked {
  color: #6fcf97 !important;
  border-color: #2d6a4f !important;
  background: color-mix(in oklab, #2d6a4f 15%, transparent) !important;
}

.cb-badge-uncooked {
  color: var(--fg-faint) !important;
  border-color: var(--border) !important;
  background: transparent !important;
}

/* ── Recipe block hover ──────────────────────────────────────────────────── */

.outline-3 {
  border-left: 2px solid transparent;
  padding-left: 0.6em;
  transition: border-color var(--dur-mid);
}

.outline-3:hover {
  border-left-color: var(--accent-dim);
}

/* ── Responsive ──────────────────────────────────────────────────────────── */

@media (max-width: 600px) {
  .cb-count { margin-left: 0; }
}
