/* ==========================================================================
   Dr. Coffee — Craft utilities (Emil Kowalski–inspired)
   Phase 1: bevel, compress, tabular nums, hairlines, focus, springs.
   ========================================================================== */

.shadow-inset-bevel {
  box-shadow:
    inset 0 1px 0 0 var(--highlight-inset),
    0 1px 2px color-mix(in srgb, var(--espresso) 6%, transparent);
  border: 1px solid color-mix(in srgb, var(--stone) 80%, transparent);
}

/* Never bevel dark primary actions — reads as a recessed top edge on forest */
.btn-primary.shadow-inset-bevel,
a.btn-primary.shadow-inset-bevel,
button.btn-primary.shadow-inset-bevel {
  border-color: transparent;
  box-shadow: none;
}

.active-compress:active:not(:disabled) {
  transform: scale(0.98);
}

.tabular-nums {
  font-variant-numeric: tabular-nums lining-nums;
}

.hairline,
.border-hairline {
  border: 1px solid color-mix(in srgb, var(--stone) 85%, transparent);
}

.spring-fast {
  transition:
    transform 180ms var(--ease),
    background-color 160ms var(--ease),
    border-color 160ms var(--ease),
    color 160ms var(--ease),
    box-shadow 160ms var(--ease);
}

:focus-visible {
  outline: 3px solid var(--forest);
  outline-offset: 2px;
  border-radius: 4px;
}

.touch-44 {
  min-height: 44px;
  min-width: 44px;
}

.touch-48 {
  min-height: 48px;
  min-width: 48px;
}

@media (prefers-reduced-motion: reduce) {
  .active-compress:active:not(:disabled) {
    transform: none;
  }
  .spring-fast {
    transition: none;
  }
}
