body.reader .page { max-width: 720px; }

.episode-title {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  padding: 6px 16px 18px;
  font-weight: 700;
}

.episode-title a { text-decoration: none; }

.episode-title span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 500;
}

.panel {
  position: relative;
  container-type: inline-size;
  margin: 0;
}

.panel img {
  display: block;
  width: 100%;
  height: auto;
}

.fx {
  position: absolute;
  inset: 0;
  pointer-events: none;
  filter: drop-shadow(1.5px 0 0 #111) drop-shadow(-1.5px 0 0 #111) drop-shadow(0 1.5px 0 #111) drop-shadow(0 -1.5px 0 #111);
}

.fx svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.b {
  position: absolute;
  padding: 0.7em 1.05em;
  transform: translate(-50%, -50%);
  border-radius: 2.1em;
  background: #fff;
  color: #111;
  font: 700 clamp(11.5px, 3.2cqw, 23px) / 1.35 "Nanum Gothic", -apple-system, "Apple SD Gothic Neo", sans-serif;
  text-align: center;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.b.thought {
  border-radius: 3em;
  font-family: "Gaegu", "Nanum Gothic", sans-serif;
  font-size: clamp(13px, 3.9cqw, 27px);
}

.b.narration {
  padding: 0.6em 0.85em;
  border-radius: 0;
  background: #fff8e1;
  font: 400 clamp(11.5px, 3cqw, 22px) / 1.45 "Gowun Batang", serif;
}

.sfx {
  position: absolute;
  transform: translate(-50%, -50%) rotate(-6deg);
  color: #fff;
  font: 400 clamp(20px, 7.5cqw, 56px) / 1 "Black Han Sans", sans-serif;
  white-space: nowrap;
  pointer-events: none;
  -webkit-text-stroke: 0.09em #111;
  paint-order: stroke fill;
}

.tight { margin-bottom: 1.2%; }
.normal { margin-bottom: 7%; }
.long { margin-bottom: 22%; }

.reader-end {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 36px 16px 8px;
}

.origin {
  padding: 14px;
  border-radius: 12px;
  background: var(--soft);
}

.origin small {
  color: var(--muted);
  font-size: 12px;
}

.origin p {
  margin: 4px 0 6px;
  font-size: 15px;
  line-height: 1.5;
  white-space: pre-line;
}

.origin-by { display: block; }
