/* Recap: full-height sheet with one accordion per round and like buttons. */

.recap { justify-content: stretch; align-items: center; pointer-events: auto; background: rgba(3, 3, 10, 0.55); }
.recap-panel {
  width: min(100%, 760px);
  height: 100%;
  display: flex;
  flex-direction: column;
  border-width: 0 1px;
  background: var(--glass-strong);
  padding-top: calc(var(--topbar-h) + var(--safe-t) - 14px);
}
.recap-body {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 6px max(14px, var(--safe-r)) calc(24px + var(--safe-b)) max(14px, var(--safe-l));
}

.recap-round { border-radius: 14px; background: var(--field); border: 1px solid var(--field-line); overflow: hidden; }
.recap-round.is-open { border-color: rgba(0, 240, 255, 0.4); }
.recap-round-toggle {
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
  min-height: 52px;
  padding: 14px;
  border: 0;
  background: none;
  text-align: left;
}
.recap-round-num {
  font-family: var(--font-display);
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--c-cyan);
  white-space: nowrap;
  padding-top: 3px;
}
.recap-round-sit { font-size: 0.9rem; font-weight: 600; color: var(--c-text); }
.recap-arrow { color: var(--c-dim); transition: transform 0.2s ease; }
.recap-round.is-open .recap-arrow { transform: rotate(180deg); }
.recap-round-body { display: flex; flex-direction: column; gap: 8px; padding: 0 10px 10px; }

.recap-entry {
  --seat: var(--c-cyan);
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(6, 6, 15, 0.6);
  border-left: 3px solid var(--seat);
}
.recap-entry-head { display: flex; align-items: center; gap: 8px; }
.recap-avatar { font-size: 1.3rem; line-height: 1; }
.recap-name { flex: 1; min-width: 0; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.recap-plan { font-weight: 600; overflow-wrap: anywhere; }
.recap-story { font-size: 0.9rem; color: var(--c-dim); }
.recap-entry-foot { display: flex; align-items: center; gap: 10px; min-height: 44px; }
.recap-points { margin-left: auto; font-family: var(--font-display); font-size: 0.7rem; font-weight: 700; color: var(--c-green); }

.like-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 52px;
  min-height: 44px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1.5px solid rgba(255, 0, 110, 0.45);
  background: transparent;
  color: var(--c-pink);
  font-size: 1.1rem;
  transition: transform 0.1s ease, background 0.15s ease;
}
.like-btn:active:not(:disabled) { transform: scale(0.9); }
.like-btn.is-liked { background: rgba(255, 0, 110, 0.2); box-shadow: 0 0 14px rgba(255, 0, 110, 0.4); }
.like-btn:disabled { opacity: 0.35; }
.like-count { font-size: 0.82rem; font-weight: 700; }
.like-count:empty { display: none; }
.like-avatars { font-size: 0.95rem; letter-spacing: 0.1em; }
