/* シフルインサイト：人物相関図専用ビューア。その他の記事画像には適用しない。 */

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger {

  display: inline-block;

  max-width: 100%;

  vertical-align: top;

  text-decoration: none !important;

  cursor: zoom-in;

}

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger > picture,

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger img {

  max-width: 100%;

}

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger img {

  height: auto;

}

body.single-post :is(.post-content, .cps-post-main, .entry-content) .sifr-chart-trigger__hint {

  display: flex;

  justify-content: center;

  align-items: center;

  gap: .45em;

  margin: 0px 0 20px;

  color: #47686d;

  font-size: 12px;

  font-weight: 500;

  line-height: 1.65;

  text-align: center;

}

body.single-post :is(.post-content, .cps-post-main, .entry-content) .sifr-chart-trigger__hint::before {

  content: "";

  width: 13px;

  height: 13px;

  flex: none;

  border: 1.7px solid currentColor;

  border-radius: 50%;

  transform: scale(.76);

  box-shadow: 4px 4px 0 -2.5px currentColor;

}

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger:hover .sifr-chart-trigger__hint,

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger:focus-visible .sifr-chart-trigger__hint {

  text-decoration: underline;

}

body.single-post :is(.post-content, .cps-post-main, .entry-content) a.sifr-chart-trigger:focus-visible {

  outline: 3px solid #3a777a;

  outline-offset: 4px;

}

html.sifr-chart-viewer-open,

body.sifr-chart-viewer-open {

  overflow: hidden !important;

}

dialog.sifr-chart-viewer {

  position: fixed;

  inset: 0;

  box-sizing: border-box;

  width: 100%;

  max-width: none;

  height: 100%;

  height: 100dvh;

  max-height: none;

  margin: 0;

  padding: 0;

  border: 0;

  border-radius: 0;

  background: #f5f7f6;

  color: #20383b;
  z-index: 2147483000;

}

dialog.sifr-chart-viewer[open] {

  display: flex;

  flex-direction: column;

}

dialog.sifr-chart-viewer::backdrop {

  background: rgba(16, 33, 36, .8);

}

.sifr-chart-viewer__toolbar {

  display: flex;

  align-items: center;

  justify-content: space-between;

  gap: 10px;

  flex: 0 0 auto;

  box-sizing: border-box;

  min-height: 58px;

  padding: 8px max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));

  padding-top: max(8px, env(safe-area-inset-top));

  background: #fff;

  border-bottom: 1px solid #dce5e3;

}

.sifr-chart-viewer__heading {

  margin: 0;

  font-size: 14px;

  line-height: 1.4;

  font-weight: 700;

  color: #263f43;

}

.sifr-chart-viewer__controls {

  display: flex;

  align-items: center;

  gap: 4px;

}

.sifr-chart-viewer button {

  appearance: none;

  -webkit-appearance: none;

  box-sizing: border-box;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  min-width: 44px;

  min-height: 44px;

  padding: 7px 11px;

  border: 1px solid #cbdad8;

  border-radius: 7px;

  background: #fff;

  color: #25484d;

  font: inherit;

  font-size: 14px;

  font-weight: 650;

  line-height: 1;

  cursor: pointer;

}

.sifr-chart-viewer button:hover { background: #eaf2f0; }

.sifr-chart-viewer button:focus-visible {

  outline: 3px solid #317479;

  outline-offset: 2px;

}

.sifr-chart-viewer button[disabled] { opacity: .5; cursor: default; }

.sifr-chart-viewer__close { margin-left: 6px; }

.sifr-chart-viewer__viewport {

  position: relative;

  isolation: isolate;

  flex: 1 1 auto;

  min-height: 0;

  width: 100%;

  overflow: hidden;

  background: #eaf0ee;

  touch-action: none;

  cursor: grab;

  overscroll-behavior: contain;

}

.sifr-chart-viewer__viewport:active { cursor: grabbing; }

.sifr-chart-viewer__image {

  position: absolute;

  top: 0;

  left: 0;

  display: block;

  max-width: none !important;

  max-height: none !important;

  width: auto;

  height: auto;

  object-fit: contain;

  transform-origin: 0 0;

  user-select: none;

  -webkit-user-select: none;

  -webkit-user-drag: none;

  will-change: transform;

  pointer-events: none;

}

.sifr-chart-viewer__image[hidden],

.sifr-chart-viewer__message[hidden] {

  display: none !important;

}

.sifr-chart-viewer__message {

  position: absolute;

  top: 50%;

  left: 50%;

  width: 90%;

  max-width: 360px;

  margin: 0;

  transform: translate(-50%, -50%);

  text-align: center;

  color: #50666a;

  font-size: 14px;

  line-height: 1.7;

  pointer-events: none;

}

.sifr-chart-viewer__statusbar {

  display: flex;

  align-items: center;

  justify-content: center;

  flex: 0 0 auto;

  gap: 10px;

  min-height: 35px;

  box-sizing: border-box;

  padding: 5px 12px max(6px, env(safe-area-inset-bottom));

  background: #fff;

  border-top: 1px solid #dce5e3;

  text-align: center;

  font-size: 12px;

  line-height: 1.5;

  color: #586c70;

}

@media (max-width: 480px) {

  .sifr-chart-viewer__toolbar { gap: 6px; }

  .sifr-chart-viewer__heading { font-size: 12px; }

  .sifr-chart-viewer__controls { gap: 3px; }

  .sifr-chart-viewer button { padding: 6px 8px; font-size: 12px; }

  .sifr-chart-viewer__close { margin-left: 2px; }

}

@media (prefers-reduced-motion: reduce) {

  .sifr-chart-viewer * { transition: none !important; }

}



.sifr-chart-viewer__toolbar, .sifr-chart-viewer__statusbar { touch-action: manipulation; }

