/* ---------------------------------------------------------------------------
   Alakazam thread replay — a reenactment of a real Slack thread, staged as
   Slack for iOS on an iPhone. Pure HTML/CSS/JS, no build, no deps.

   Everything the phone shows is grounded in alakazam's actual code paths:
     · the 👀 reaction is TRANSIENT      — agent/lib/slack-reactions.ts
     · reply 1 is a post_update note     — agent/tools/post_update.ts
     · reply 2 is an ask_question block  — eve/channels/slack/hitl.js
     · the status line is ONE rotating   — agent/lib/status-lines.ts +
 string, capped at 50 chars          eve/channels/slack/limits.js
   --------------------------------------------------------------------------- */

:root {
  /* Slack dark (aubergine), sampled from the reference capture */
  --sl-bg: #1a1d21;
  --sl-bg-2: #222529;
  --sl-border: rgba(255, 255, 255, 0.13);
  --sl-text: #d1d2d3;
  --sl-name: #f8f8f8;
  --sl-dim: #ababad;
  --sl-dimmer: #949597;
  --sl-link: #1d9bd1;
  --sl-green: #007a5a;

  --stage-bg: #0b0c0e;
  --stage-glow: #182231;

  --font:
    -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI",
    "Helvetica Neue", Helvetica, Arial, sans-serif;
  --mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
}

* {
  box-sizing: border-box;
}
html,
body {
  height: 100%;
}
body {
  margin: 0;
  font-family: var(--font);
  background:
    radial-gradient(
      115% 75% at 50% -10%,
      var(--stage-glow) 0%,
      transparent 62%
    ),
    var(--stage-bg);
  color: #8b8f96;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 18px 16px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
}

/* ---------- stage chrome ---------------------------------------------------- */

.caption {
  flex: 0 0 auto;
  font-size: 11.5px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #565b64;
  display: flex;
  align-items: center;
  gap: 9px;
}
.caption b {
  color: #98a1ad;
  font-weight: 600;
  letter-spacing: 0.15em;
}
.caption i {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #363c45;
  display: inline-block;
}

.stage {
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
}

.phone-scaler {
  width: 393px;
  height: 852px;
  transform-origin: center center;
  will-change: transform;
  flex: 0 0 auto;
}

.phone {
  position: relative;
  width: 393px;
  height: 852px;
  border-radius: 56px;
  padding: 11px;
  background: linear-gradient(
    160deg,
    #3c4048,
    #15171b 38%,
    #0e1013 70%,
    #2b2f36
  );
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, 0.06),
    0 40px 90px -20px rgba(0, 0, 0, 0.92),
    0 0 130px -35px rgba(60, 120, 190, 0.28);
}
.screen {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 46px;
  overflow: hidden;
  background: var(--sl-bg);
  display: flex;
  flex-direction: column;
}
.island {
  position: absolute;
  top: 11px;
  left: 50%;
  transform: translateX(-50%);
  width: 124px;
  height: 34px;
  border-radius: 20px;
  background: #000;
  z-index: 40;
}

/* ---------- iOS status bar --------------------------------------------------- */

.statusbar {
  flex: 0 0 auto;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 30px 0 34px;
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.2px;
  position: relative;
  z-index: 41;
}
.sb-right {
  display: flex;
  align-items: center;
  gap: 6px;
}
.bars {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  height: 11px;
}
.bars i {
  width: 3px;
  background: #fff;
  border-radius: 1px;
  display: block;
}
.bars i:nth-child(1) {
  height: 4px;
}
.bars i:nth-child(2) {
  height: 6px;
}
.bars i:nth-child(3) {
  height: 8.5px;
}
.bars i:nth-child(4) {
  height: 11px;
}
.batt {
  width: 25px;
  height: 12px;
  border: 1.4px solid rgba(255, 255, 255, 0.55);
  border-radius: 3.5px;
  position: relative;
  padding: 1.5px;
}
.batt::after {
  content: "";
  position: absolute;
  right: -3.4px;
  top: 3.4px;
  width: 2px;
  height: 4px;
  border-radius: 0 1px 1px 0;
  background: rgba(255, 255, 255, 0.5);
}
.batt span {
  display: block;
  height: 100%;
  width: 76%;
  background: #fff;
  border-radius: 1.6px;
}

/* ---------- iOS nav bar ------------------------------------------------------ */

.navbar {
  flex: 0 0 auto;
  height: 46px;
  padding: 0 12px;
  display: grid;
  grid-template-columns: 44px 1fr 44px;
  align-items: center;
  border-bottom: 1px solid var(--sl-border);
  background: var(--sl-bg);
  z-index: 20;
}
.nav-btn {
  color: #d1d2d3;
  display: flex;
  align-items: center;
}
.nav-btn.right {
  justify-content: flex-end;
}
.nav-btn svg {
  width: 21px;
  height: 21px;
  display: block;
}
.nav-title {
  text-align: center;
  line-height: 1.15;
}
.nav-title b {
  display: block;
  color: var(--sl-name);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.2px;
}
.nav-title span {
  display: block;
  color: var(--sl-dim);
  font-size: 11.5px;
  margin-top: 1px;
}

/* ---------- message feed ----------------------------------------------------- */

.feed {
  flex: 1 1 auto;
  overflow: hidden;
  padding: 10px 0 6px;
  position: relative;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 12px);
  mask-image: linear-gradient(to bottom, transparent 0, #000 12px);
}
.feed-inner {
  padding: 0 16px 6px;
}

.msg {
  display: grid;
  grid-template-columns: 36px 1fr;
  column-gap: 8px;
  padding: 8px 0 0;
  opacity: 0;
  transform: translateY(9px);
  transition:
    opacity 0.34s ease,
    transform 0.34s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.msg.in {
  opacity: 1;
  transform: none;
}
.msg.cont {
  padding-top: 8px;
} /* Slack groups same-author messages */

.avatar {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
  background: #3d4249;
  flex: 0 0 auto;
}
.avatar svg {
  width: 100%;
  height: 100%;
  display: block;
}
/* Mekael's real Slack profile image, inlined as a data URI so the file
   stays self-contained (no network, no CSP surprises if it is hosted). */
.avatar.mekael {
  background: #2f3a49
    url("data:image/jpeg;base64,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")
    center/cover no-repeat;
}

.msg-head {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 2px;
}
.who {
  color: var(--sl-name);
  font-weight: 700;
  font-size: 15px;
  letter-spacing: -0.1px;
}
.badge {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.3px;
  line-height: 1;
  color: var(--sl-dim);
  background: #3a3d42;
  border-radius: 2px;
  padding: 2px 4px 1.5px;
  text-transform: uppercase;
  position: relative;
  top: -1px;
}
.ts {
  color: var(--sl-dimmer);
  font-size: 12px;
}

.body {
  color: var(--sl-text);
  font-size: 15px;
  line-height: 22px;
}
.body p {
  margin: 0 0 8px;
}
.body p:last-child {
  margin-bottom: 0;
}
.body p.tight {
  margin-bottom: 0;
}
.body strong {
  font-weight: 700;
  color: #ededee;
}

.w {
  opacity: 0;
  transition: opacity 0.17s linear;
}
.w.on {
  opacity: 1;
}
.instant .w {
  opacity: 1;
  transition: none;
}

.showless {
  display: block;
  margin-top: 1px;
  color: var(--sl-link);
  font-size: 15px;
  line-height: 22px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.showless.on {
  opacity: 1;
}

/* eve's HITL actions block: one primary "Type your answer" button */
.hitl-actions {
  margin-top: 10px;
}
.hitl-btn {
  display: inline-block;
  background: var(--sl-green);
  color: #fff;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  padding: 11px 15px;
  border-radius: 4px;
  opacity: 0;
  transform: translateY(5px) scale(0.985);
  transition:
    opacity 0.32s ease,
    transform 0.32s cubic-bezier(0.2, 0.7, 0.3, 1);
}
.hitl-btn.on {
  opacity: 1;
  transform: none;
}

/* reactions — this one was added by the BOT, not by you, so it is the
   neutral pill, not the blue self-reacted one */
.reactions {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
}
.rx {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 24px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 12px;
  padding: 0 8px 0 7px;
  font-size: 12px;
  color: var(--sl-dim);
  font-weight: 600;
  opacity: 0;
  transform: translateY(4px) scale(0.9);
  transition:
    opacity 0.26s ease,
    transform 0.32s cubic-bezier(0.2, 1.5, 0.4, 1);
}
.rx.on {
  opacity: 1;
  transform: none;
}
.rx.out {
  opacity: 0;
  transform: translateY(-2px) scale(0.9);
}
.rx em {
  font-style: normal;
  font-size: 14px;
  line-height: 1;
}
.rx-add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 24px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.13);
  color: var(--sl-dimmer);
  opacity: 0;
  transition: opacity 0.26s ease;
}
.rx-add.on {
  opacity: 1;
}
.rx-add svg {
  width: 14px;
  height: 14px;
  display: block;
}

/* "N replies" divider */
.replies-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 14px 0 0;
  opacity: 0;
  transition: opacity 0.35s ease;
}
.replies-divider.on {
  opacity: 1;
}
.replies-divider span {
  color: var(--sl-dim);
  font-size: 13px;
  white-space: nowrap;
}
.replies-divider i {
  flex: 1;
  height: 1px;
  background: var(--sl-border);
}

/* ---------- assistant status (assistant.threads.setStatus) -------------------- */

.status-row {
  display: grid;
  grid-template-columns: 36px 1fr;
  column-gap: 8px;
  padding: 14px 0 4px;
  align-items: center;
  opacity: 0;
  transform: translateY(6px);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease;
}
.status-row.on {
  opacity: 1;
  transform: none;
}
.status-row.out {
  opacity: 0;
}
.status-av {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  overflow: hidden;
}
.status-av svg {
  width: 100%;
  height: 100%;
  display: block;
}
.status-text {
  font-size: 15px;
  line-height: 20px;
  background: linear-gradient(100deg, #6f7276 20%, #e4e6e9 42%, #6f7276 64%);
  background-size: 260% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shimmer 2.4s linear infinite;
}
@keyframes shimmer {
  from {
    background-position: 180% 0;
  }
  to {
    background-position: -80% 0;
  }
}

/* ---------- iOS composer ------------------------------------------------------ */

.composer {
  flex: 0 0 auto;
  border-top: 1px solid var(--sl-border);
  padding: 9px 12px 4px;
}
.compose-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.plus {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  flex: 0 0 auto;
  background: rgba(255, 255, 255, 0.09);
  color: #d1d2d3;
  display: flex;
  align-items: center;
  justify-content: center;
}
.plus svg {
  width: 16px;
  height: 16px;
}
.field {
  flex: 1 1 auto;
  min-width: 0;
  height: 38px;
  border: 1px solid var(--sl-border);
  border-radius: 19px;
  background: var(--sl-bg-2);
  display: flex;
  align-items: center;
  padding: 0 14px;
  color: #8a8c8f;
  font-size: 15px;
}
.compose-icons {
  display: flex;
  align-items: center;
  gap: 15px;
  color: var(--sl-dim);
  flex: 0 0 auto;
}
.compose-icons svg {
  width: 19px;
  height: 19px;
  display: block;
}
.dm-row {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 11px 2px 3px;
  color: var(--sl-dim);
  font-size: 13px;
}
.checkbox {
  width: 16px;
  height: 16px;
  border: 1.5px solid #7d8085;
  border-radius: 3px;
  flex: 0 0 auto;
}

.home-indicator {
  flex: 0 0 auto;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-indicator i {
  width: 139px;
  height: 5px;
  border-radius: 3px;
  background: #5b5f66;
  display: block;
}

/* ---------- x-ray panel ------------------------------------------------------- */

.xray {
  flex: 0 0 auto;
  width: 0;
  opacity: 0;
  overflow: hidden;
  transition:
    width 0.38s cubic-bezier(0.2, 0.7, 0.3, 1),
    opacity 0.3s ease;
  align-self: center;
  display: flex;
  align-items: center;
}
.xray.open {
  width: 330px;
  opacity: 1;
}
.xray-card {
  width: 330px;
  background: #111318;
  border: 1px solid #1e222a;
  border-radius: 16px;
  padding: 16px 16px 14px;
  font-size: 12px;
  line-height: 1.5;
}
.xray-h {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}
.xray-h b {
  color: #c6ccd6;
  font-size: 12.5px;
}
.xray-tag {
  font-size: 9.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #7d6a3f;
  background: #241f13;
  border: 1px solid #3a3018;
  border-radius: 3px;
  padding: 1.5px 5px;
}
.xray-note {
  color: #5d636d;
  font-size: 11px;
  margin: 0 0 12px;
}
.xray-note code {
  font-family: var(--mono);
  font-size: 10.5px;
  color: #79818d;
}
.xg {
  margin-bottom: 12px;
}
.xg > .xg-h {
  color: #9cc4d8;
  font-family: var(--mono);
  font-size: 11.5px;
  margin-bottom: 4px;
}
.xg > .xg-h span {
  color: #5d636d;
  font-family: var(--font);
}
.xr {
  display: flex;
  gap: 7px;
  padding: 2.5px 0 2.5px 10px;
  opacity: 0.25;
  transition: opacity 0.35s ease;
}
.xr.on {
  opacity: 1;
}
.xr .k {
  font-family: var(--mono);
  color: #8fb4c7;
  white-space: nowrap;
}
.xr .v {
  font-family: var(--mono);
  color: #6f7885;
  word-break: break-word;
}

/* ---------- controls ---------------------------------------------------------- */

.controls {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 9px;
}
button {
  font-family: inherit;
  background: #151920;
  color: #a7aeb8;
  border: 1px solid #232830;
  border-radius: 999px;
  padding: 8px 15px;
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  transition:
    background 0.18s ease,
    color 0.18s ease,
    border-color 0.18s ease,
    transform 0.12s ease;
}
button:hover {
  background: #1d222a;
  color: #e7ebf1;
  border-color: #333944;
}
button:active {
  transform: translateY(1px);
}
button svg {
  width: 13px;
  height: 13px;
}
button[aria-pressed="true"] {
  background: #1f4d74;
  color: #fff;
  border-color: #2b6ea8;
}
.seg {
  display: flex;
  border: 1px solid #232830;
  border-radius: 999px;
  overflow: hidden;
  background: #151920;
}
.seg button {
  border: 0;
  border-radius: 0;
  padding: 8px 13px;
}
.seg button + button {
  border-left: 1px solid #232830;
}
.progress {
  width: 110px;
  height: 3px;
  border-radius: 2px;
  background: #1d222a;
  overflow: hidden;
}
.progress i {
  display: block;
  height: 100%;
  width: 0%;
  background: #2b6ea8;
}

@media (prefers-reduced-motion: reduce) {
  .msg,
  .rx,
  .rx-add,
  .status-row,
  .hitl-btn,
  .showless,
  .replies-divider,
  .xr {
    transition-duration: 0.01ms !important;
  }
  .w {
    transition: none;
  }
  .status-text {
    animation: none;
    -webkit-text-fill-color: #9ea0a3;
  }
}

/* ---------- standalone-only chrome ------------------------------------------

   This page is used two ways: on its own at /alakazam-replay, and inside an
   iframe on the case study. The backlink only makes sense in the first case —
   in the embed it would point at the page you are already reading.

   Hidden by default and revealed by the .standalone class replay.js puts on
   <html>, rather than the reverse, so the embed never flashes a link it is
   about to remove. */

.backlink {
  flex: 0 0 auto;
  display: none;
  font-size: 12px;
  letter-spacing: 0.04em;
  color: #565b64;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  padding-bottom: 1px;
}
.backlink:hover,
.backlink:focus-visible {
  color: #8b8f96;
  border-bottom-color: #3a3f47;
}
.standalone .backlink {
  display: block;
}

/* Scripting off means an empty phone, so say so rather than showing one. */
.noscript {
  max-width: 34rem;
  margin: 0;
  text-align: center;
  font-size: 13.5px;
  line-height: 1.6;
  color: #8b8f96;
}
.noscript a {
  color: var(--sl-link);
}
