/* jjs:pill-start */
.jt-badges { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.jt-live-pill {
  display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0;
  min-height: 22px; padding: 4px 8px;
  border-radius: var(--jt-radius, 4px);
  background: var(--jt-live, var(--jt-down, #c62828)); color: var(--jt-live-ink, #ffffff);
  font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 12px; font-weight: 800; line-height: 1;
  text-transform: uppercase; letter-spacing: 0.06em; white-space: nowrap;
}
:root[data-theme="dark"] .jt-live-pill { background: var(--jt-live, var(--jt-down, #ff6b6b)); color: var(--jt-live-ink, #000000); }
.jt-live-pill__dot { width: 7px; height: 7px; flex-shrink: 0; border-radius: 50%; background: currentColor; }
@media (prefers-reduced-motion: no-preference) {
  .jt-live-pill__dot { animation: jt-live-beat 1.6s ease-in-out infinite; }
  @keyframes jt-live-beat { 0%, 100% { transform: scale(1); } 50% { transform: scale(0.55); } }
}
.jt-live-pill--lg { min-height: 28px; padding: 6px 10px; font-size: 13px; }
.jt-live-pill--lg .jt-live-pill__dot { width: 8px; height: 8px; }
.jt-live-latest {
  font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 14px; font-weight: 700; line-height: 1.3;
  color: var(--jt-text, #111111);
}
/* jjs:pill-end */
.jt-live {
  margin: 2em 0;
  font-family: var(--jt-font-body, system-ui, sans-serif);
  color: var(--jt-text, #111111);
}
.jt-live > :first-child { margin-top: 0; }
.jt-live__ended {
  margin: 0 0 28px; padding: 18px 20px;
  border: 2px solid var(--jt-text, #111111); border-radius: var(--jt-radius, 4px);
  background: var(--jt-bg, #ffffff);
}
.jt-prose .jt-live__ended p { margin: 0; }
.jt-live__ended-title { font-family: var(--jt-font-head, system-ui, sans-serif); font-size: 1.1em; font-weight: 800; line-height: 1.3; }
.jt-prose .jt-live__ended .jt-live__ended-at { margin-top: 4px; font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 15px; font-weight: 600; color: var(--jt-text-2, #3d3d3d); }
.jt-live__summary { margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--jt-border, #dedede); }
.jt-prose .jt-live__summary .jt-live__summary-title,
.jt-live__summary-title { margin: 0 0 8px; font-family: var(--jt-font-head, system-ui, sans-serif); font-size: var(--jt-fs-h3, 22px); font-weight: 800; line-height: 1.25; }
.jt-prose .jt-live__summary p { margin: 0 0 0.8em; }
.jt-prose .jt-live__summary > :last-child { margin-bottom: 0; }
.jt-live__key {
  margin: 0 0 32px; padding: 18px 20px 8px;
  border: 1px solid var(--jt-live, var(--jt-down, #c62828)); border-radius: var(--jt-radius, 4px);
  background: var(--jt-surface, #f4f4f1);
}
.jt-live__key[hidden] { display: none; }
.jt-prose .jt-live__key .jt-live__key-title,
.jt-live__key-title {
  margin: 0 0 4px;
  font-family: var(--jt-font-head, system-ui, sans-serif); font-size: var(--jt-fs-h3, 22px); font-weight: 800; line-height: 1.25; letter-spacing: 0;
}
.jt-prose .jt-live__key-list,
.jt-live__key-list { margin: 0; padding: 0; list-style: none; }
.jt-prose .jt-live__key-item { margin: 0; padding: 0; }
.jt-live__key-item + .jt-live__key-item { border-top: 1px solid var(--jt-border, #dedede); }
.jt-prose .jt-live__key-item a,
.jt-live__key-item a {
  display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 2px 14px; align-items: baseline;
  min-height: 44px; padding: 10px 0;
  color: var(--jt-text, #111111); text-decoration: none;
  font-size: 16px; font-weight: 700; line-height: 1.4;
}
.jt-live__key-item time { font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 13px; font-weight: 800; white-space: nowrap; color: var(--jt-text-2, #3d3d3d); font-variant-numeric: tabular-nums; }
.jt-prose .jt-live__key-item a:hover span { text-decoration: underline; text-decoration-color: var(--jt-link, #057a3c); text-decoration-thickness: 2px; text-underline-offset: 0.18em; }
@media (max-width: 479px) {
  .jt-prose .jt-live__key-item a, .jt-live__key-item a { grid-template-columns: minmax(0, 1fr); }
}
.jt-live__head { margin: 0 0 4px; }
.jt-prose .jt-live__head .jt-live__title { margin: 0; font-size: var(--jt-fs-h2, 28px); }
.jt-update {
  position: relative;
  padding: 18px 0 26px;
  scroll-margin-top: var(--jt-sticky-top, 16px);
}
.jt-update + .jt-update { border-top: 1px solid var(--jt-border, #dedede); }
.jt-update__head {
  display: flex; flex-wrap: wrap; align-items: center; gap: 0 12px;
  font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 14px; line-height: 1.3;
}
.jt-prose .jt-update__time,
.jt-update__time {
  display: inline-flex; align-items: center; min-height: 44px;
  font-weight: 800; color: var(--jt-text, #111111); text-decoration: none;
  font-variant-numeric: tabular-nums;
}
.jt-prose .jt-update__time:hover { text-decoration: underline; text-decoration-color: var(--jt-link, #057a3c); text-decoration-thickness: 2px; }
.jt-update__ago { font-weight: 600; color: var(--jt-text-2, #3d3d3d); }
.jt-update__time + .jt-update__ago::before { content: "·"; margin-right: 12px; font-weight: 800; }
.jt-update__pin {
  display: inline-flex; align-items: center; min-height: 24px; padding: 4px 8px;
  border-radius: var(--jt-radius, 4px);
  background: var(--jt-text, #111111); color: var(--jt-bg, #ffffff);
  font-size: 12px; font-weight: 800; line-height: 1; text-transform: uppercase; letter-spacing: 0.05em;
}
.jt-prose .jt-update .jt-update__title,
.jt-update__title {
  margin: 2px 0 10px;
  font-family: var(--jt-font-head, system-ui, sans-serif);
  font-size: var(--jt-fs-h3, 22px); font-weight: 800; line-height: 1.25; letter-spacing: -0.005em;
  color: var(--jt-text, #111111);
}
.jt-update__body > :first-child { margin-top: 0; }
.jt-update__body > :last-child { margin-bottom: 0; }
.jt-prose .jt-update .jt-update__by,
.jt-update__by {
  margin: 14px 0 0;
  font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 14px; font-weight: 700; line-height: 1.4;
  color: var(--jt-text-2, #3d3d3d);
}
.jt-prose .jt-update__by a { color: var(--jt-text, #111111); font-weight: 800; text-decoration: none; }
.jt-prose .jt-update__by a:hover { text-decoration: underline; }
.jt-update.is-new { padding-inline: 16px; border-radius: var(--jt-radius, 4px); background: var(--jt-surface, #f4f4f1); }
.jt-update[tabindex="-1"]:focus { outline: none; }
.jt-update:target .jt-update__title { text-decoration: underline; text-decoration-color: var(--jt-accent, #0cf57e); text-decoration-thickness: 3px; text-underline-offset: 0.16em; }
.jt-live-new {
  position: fixed; z-index: 96;
  top: var(--jt-sticky-top, 16px); left: 50%;
  transform: translateX(-50%);
  display: inline-flex; align-items: center; gap: 12px;
  max-width: calc(100vw - 32px);
  min-height: 44px; padding: 0 18px;
  border: 2px solid var(--jt-bg, #ffffff); border-radius: var(--jt-radius, 4px);
  background: var(--jt-text, #111111); color: var(--jt-bg, #ffffff);
  font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 15px; font-weight: 700; line-height: 1.2;
  white-space: nowrap; cursor: pointer;
}
.jt-live-new[hidden] { display: none; }
.jt-live-new__show { padding-left: 12px; border-left: 1px solid currentColor; font-weight: 800; }
.jt-live-new:hover .jt-live-new__show,
.jt-live-new:focus-visible .jt-live-new__show { text-decoration: underline; text-underline-offset: 0.2em; }
.jt-live-new:focus-visible { outline: 3px solid var(--jt-focus, #057a3c); outline-offset: 2px; }
.jt-live-status { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.jt-live-ed { margin: 1.5em 0; padding: 16px; border: 1px dashed var(--jt-border, #dedede); border-radius: var(--jt-radius, 4px); }
.jt-live-ed__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; margin-bottom: 8px; }
.jt-live-ed__title { margin: 0; font-family: var(--jt-font-head, system-ui, sans-serif); font-size: 20px; font-weight: 800; }
.jt-live-ed__hint { margin: 0 0 8px; font-size: 13px; color: var(--jt-text-2, #3d3d3d); }
.jt-live-ed .jt-update { padding-top: 8px; }
.jt-live-ed .jt-update + .jt-update, .jt-live-ed .block-editor-block-list__layout > * + * .jt-update { border-top: 0; }
.jt-live-ed .block-editor-block-list__layout > .wp-block + .wp-block { border-top: 1px solid var(--jt-border, #dedede); }
.jt-live-ed .jt-update__title { margin-bottom: 6px; }
.jt-live-ed__time { font-weight: 800; }
.jt-live-ed__time.components-button { height: auto; min-height: 32px; padding: 4px 6px; font-family: var(--jt-font-meta, system-ui, sans-serif); font-size: 14px; color: var(--jt-text, #111111); }
.jt-live-ed__body { min-height: 24px; }
