/* Domain-availability page. Pairs with availability.js; both are loaded only on
   /availability and are independent of app.css so the feature lifts out cleanly.
   Reuses the shared .stats-table / .stats-table-wrap vocabulary from app.css. */

.avail-bar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 12px;
  margin: 18px 0 12px;
}

.avail-status {
  font-size: 13px;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
  padding-top: 4px;
}

.avail-filters {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  font-size: 13px;
}

.avail-filters .f-chk {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--muted);
  cursor: pointer;
}

.avail-filters select,
.avail-filters input[type="search"] {
  font: inherit;
  font-size: 13px;
  padding: 4px 8px;
  color: var(--text);
  background: var(--surface);
  border: 1px solid var(--hairline);
  border-radius: var(--radius-sm);
}

.avail-filters input[type="search"] {
  min-width: 130px;
}

.avail-filters select:focus,
.avail-filters input[type="search"]:focus {
  outline: none;
  box-shadow: var(--focus);
  border-color: var(--accent);
}

/* Status chips */
.av {
  display: inline-block;
  padding: 1px 8px;
  border-radius: var(--radius-sm);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}
.av-available {
  color: #117a3a;
  background: color-mix(in srgb, #1a9b4a 14%, transparent);
}
.av-taken {
  color: var(--muted);
  background: var(--soft);
}
.av-unknown {
  color: #946200;
  background: color-mix(in srgb, #c98a00 16%, transparent);
}
.av-checking {
  color: var(--faint);
}

@media (prefers-color-scheme: dark) {
  .av-available { color: #5fd08a; }
  .av-unknown { color: #e0b35a; }
}

.avail-empty td {
  color: var(--muted);
  text-align: center;
  padding: 22px 12px;
}
