.concept-scroll-panel {
  --concept-width: 44.928571cqw;
  --scrollbar-space: 12px;
  --concept-surface: var(--green);
  position: absolute;
  left: 31.428571%;
  top: 55.216138%;
  width: calc(var(--concept-width) + var(--scrollbar-space));
  height: 40.115274%;
  color: var(--ink);
}
[data-theme=fullmoon] .concept-scroll-panel {
  --concept-surface: var(--ink);
  color: var(--green);
}
.concept-scroll-viewport {
  height: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  overscroll-behavior-y: contain;
  scrollbar-width: none;
  padding-right: var(--scrollbar-space);
}
.concept-scroll-viewport:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
.concept-scroll-content { width: var(--concept-width); max-width: 100%; }
.concept-original svg { display: block; width: 100%; height: auto; }
.concept-original .theme-fullmoon { display: none; }
[data-theme=fullmoon] .concept-original .theme-normal { display: none; }
[data-theme=fullmoon] .concept-original .theme-fullmoon { display: block; }
.concept-continuation {
  padding: 2cqw 0 .5cqw .642857cqw;
  color: var(--ink);
  font: 800 2cqw/1.35 'Mooom Heavy', 'Hiragino Kaku Gothic StdN', sans-serif;
  font-feature-settings: 'palt' 1;
}
.concept-continuation p { margin: 0 0 2cqw; }
.concept-continuation p:last-child { margin-bottom: 0; }
.concept-line { display: block; margin-bottom: .671429cqw; }
.concept-line > span {
  display: inline-block;
  max-width: 100%;
  padding: .05em .7em;
  border-radius: 1em;
  background: var(--paper);
  overflow-wrap: anywhere;
}
[data-theme=fullmoon] .concept-line > span { background: var(--green); }
.concept-scroll-viewport::-webkit-scrollbar { display: none; }
.scroll-panel-track {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 6px;
  border-radius: 6px;
  background: color-mix(in srgb, currentColor 18%, transparent);
  touch-action: none;
  cursor: pointer;
}
.scroll-panel-thumb {
  position: absolute;
  top: var(--scroll-thumb-top, 0);
  left: 0;
  width: 100%;
  height: var(--scroll-thumb-height, 30%);
  border-radius: inherit;
  background: color-mix(in srgb, currentColor 65%, transparent);
}
.scroll-panel-track[hidden] { display: none; }
.concept-scroll-panel > .scroll-panel-fade {
  position: absolute;
  left: 0;
  right: var(--scrollbar-space);
  bottom: 0;
  height: 3.428571cqw;
  pointer-events: none;
  background: linear-gradient(to bottom, transparent, var(--concept-surface));
}
.concept-scroll-panel[data-scroll-end=true] > .scroll-panel-fade { opacity: 0; }
@media (max-width: 767px) {
  .concept-scroll-panel {
    --concept-width: 93.866667cqw;
    --scrollbar-space: 3.2cqw;
    left: 2.666667%;
    top: 20.961538%;
    height: 75%;
  }
  .concept-continuation { padding: 4.173333cqw 0 1cqw 1.333333cqw; font-size: 4.174853cqw; }
  .concept-continuation p { margin-bottom: 4.173333cqw; }
  .concept-line { margin-bottom: 1.4cqw; }
  .concept-scroll-panel > .scroll-panel-fade { height: 7.2cqw; }
}
