/* Loopmore.ai: case studies (index, approvals, warehouse). Loaded after motion.css on those pages only.
   Tokens only; no raw colors. Motion follows DESIGN.md: 150 ms hover, ease-out, reduced motion = end state. */

/* ---------- Index cards: concise meta line and link-card lift ---------- */
.cs-meta { display: inline-flex; align-items: center; gap: 8px; color: var(--ink-muted); }
.cs-meta .lm-icon { flex: none; color: var(--ink); }
.w-svc { transition: border-color .15s ease-out, transform .15s ease-out; }
@media (prefers-reduced-motion: no-preference) and (hover: hover) {
  a.w-svc:hover { transform: translateY(-2px); }
}

/* ---------- Back link above the hero overline ---------- */
.cs-back { align-self: flex-start; margin-bottom: -12px; display: inline-flex; align-items: center; gap: 6px; min-height: 32px; color: var(--on-band-muted); font-size: 14px; line-height: 20px; font-weight: 500; text-decoration: none; border-radius: 4px; }
.cs-back:hover { color: var(--on-band); }
.cs-back:focus-visible { outline: none; box-shadow: var(--focus-ring-band); color: var(--on-band); }
.cs-back .lm-icon { transition: transform .15s ease-out; }
@media (prefers-reduced-motion: no-preference) { .cs-back:hover .lm-icon { transform: translateX(-3px); } }
@media (hover: none), (pointer: coarse), (max-width: 760px) { .cs-back { min-height: var(--touch-min); } }

/* ---------- Film: a clear play button over the poster (shown only when case-studies.js runs) ---------- */
.cs-film { position: relative; }
.cs-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 12px; min-height: 56px; padding: 0 24px 0 8px; border: 1px solid var(--line-paper); border-radius: var(--radius-full); background: var(--surface); color: var(--ink); font: inherit; font-size: 16px; line-height: 24px; font-weight: 500; white-space: nowrap; cursor: pointer; box-shadow: var(--shadow-lg); transition: background-color .15s ease-out, opacity .25s ease-out; }
.cs-play[hidden] { display: none; }
.cs-play:hover { background: var(--surface-hover); }
.cs-play:focus-visible { outline: none; box-shadow: var(--shadow-lg), var(--focus-ring); }
.cs-play__icon { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--ink); color: var(--on-band); }
.cs-play__icon svg { margin-left: 2px; }
.cs-film.is-playing .cs-play { opacity: 0; pointer-events: none; }
@media (max-width: 560px) {
  .cs-play { min-height: 48px; padding: 0 18px 0 6px; gap: 10px; font-size: 15px; }
  .cs-play__icon { width: 36px; height: 36px; }
}
