/* Inline appreciation, never a floating control over the article or audio. */
.ei-likes {
  --like-ink: #214c68;
  --like-muted: #50697a;
  --like-edge: #c5d9e5;
  --like-surface: #f4fafc;
  --like-active: #176b72;
  box-sizing: border-box;
  clear: both; /* Minimal Mistakes floats the byline and article body. */
  display: flow-root;
  width: 100%;
  color: var(--like-ink);
  font: 14px/1.5 "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color-scheme: light;
}
.ei-likes--top { margin: .9rem 0 1.15rem; }
.ei-likes__action { display: flex; align-items: center; gap: .85rem; flex-wrap: wrap; }
.ei-likes .ei-likes__button {
  position: relative;
  display: inline-grid;
  grid-template-columns: 22px 5.8em 4.8ch;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
  box-sizing: border-box;
  min-height: 46px;
  margin: 0;
  padding: 10px 14px;
  border: 1px solid var(--like-edge);
  border-radius: 999px;
  background: linear-gradient(120deg, #fff, var(--like-surface));
  color: var(--like-ink);
  box-shadow: 0 2px 5px rgb(26 67 92 / 5%);
  font: inherit;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
  text-align: left;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.ei-likes__icon { position: relative; display: flex; align-items: center; justify-content: center; }
.ei-likes__icon svg { display: block; overflow: visible; transform: translateY(-1px); }
.ei-likes__icon path { fill: transparent; stroke: currentColor; stroke-width: 1.65; stroke-linejoin: round; transition: fill .18s ease; }
.ei-likes__label { white-space: nowrap; }
.ei-likes__count { justify-self: end; min-width: 4ch; font-variant-numeric: tabular-nums; font-size: .92em; text-align: right; visibility: hidden; }
.ei-likes__count:not(:empty) { visibility: visible; }
.ei-likes .ei-likes__button[aria-pressed="true"] { border-color: #8fc7c1; color: var(--like-active); background: #eaf7f4; }
.ei-likes__button[aria-pressed="true"] .ei-likes__icon path { fill: currentColor; }
.ei-likes__button:focus-visible { outline: 3px solid #1769aa; outline-offset: 4px; }
.ei-likes .ei-likes__button:disabled, .ei-likes .ei-likes__button[aria-disabled="true"] { cursor: wait; opacity: .65; }
.ei-likes__hint { color: var(--like-muted); font-size: 12px; }
.ei-likes .ei-likes__status { min-height: 1.5em; margin: .35rem 0 0; color: var(--like-muted); font: inherit; font-size: 12px; }
.ei-likes .ei-likes__status:empty { visibility: hidden; }
.ei-likes .ei-likes__noscript { margin: .35rem 0 0; font: inherit; font-size: 12px; }
.ei-likes--bottom { margin: 2rem 0 1.25rem; padding: 1.2rem 1.3rem .75rem; border: 1px solid var(--like-edge); border-radius: 12px; background: linear-gradient(115deg, #f4f9fd, #f0faf7); }
.ei-likes__eyebrow { color: #397489; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.ei-likes .ei-likes__intro p { margin: .3rem 0 .85rem; color: var(--like-ink); font: 700 18px/1.4 "Manrope", system-ui, sans-serif; }
.ei-likes__button.is-celebrating .ei-likes__icon { animation: ei-like-pulse .45s ease-out; }
.ei-likes__button.is-celebrating .ei-likes__icon::after { content: ""; position: absolute; inset: -7px; border: 2px solid #79bdb8; border-radius: 50%; animation: ei-like-ring .45s ease-out both; pointer-events: none; }
@keyframes ei-like-pulse { 40% { transform: scale(1.22); } 70% { transform: scale(.94); } }
@keyframes ei-like-ring { from { transform: scale(.5); opacity: .8; } to { transform: scale(1.4); opacity: 0; } }
@media (hover: hover) {
  .ei-likes .ei-likes__button:not(:disabled):hover { border-color: #6f9fb9; box-shadow: 0 3px 11px rgb(26 67 92 / 12%); }
}
@media (max-width: 480px) {
  .ei-likes__action { gap: .45rem .75rem; }
  .ei-likes__hint { flex-basis: 100%; }
  .ei-likes--bottom { padding: 1rem .9rem .6rem; }
}
/* Follow an explicit site dark theme, not device preference on this light site. */
[data-theme="dark"] .ei-likes {
  --like-ink: #d9edf6; --like-muted: #adc5d5; --like-edge: #436172;
  --like-surface: #203c4a; --like-active: #9fe0d3; color-scheme: dark;
}
[data-theme="dark"] .ei-likes__button { background: #1b3544; }
[data-theme="dark"] .ei-likes__button[aria-pressed="true"] { background: #204b4b; border-color: #6fb2a8; }
[data-theme="dark"] .ei-likes--bottom { background: #193440; }
[data-theme="dark"] .ei-likes__eyebrow { color: #9acbd5; }
@media (prefers-reduced-motion: reduce) {
  .ei-likes *, .ei-likes *::after { animation: none !important; transition: none !important; }
}
@media print { .ei-likes { display: none; } }
.no-js .ei-likes__button, .no-js .ei-likes__status { display: none; }
