@charset "UTF-8";
/*
make sure that your main content container has position: relative;
otherwise your sidenotes may show up in weird places, or even off the side of the screen.
in my case, i added position: relative; to my `.post` selector.
*/
:root {
  --neon-pink: #ff6ec7; }

.sidenote:hover {
  background-color: var(--neon-pink); }
  .sidenote:hover .sidenote-label {
    text-decoration: none; }
  .sidenote:hover .sidenote-content {
    border: dashed 3px var(--neon-pink); }

.sidenote .sidenote-label {
  text-decoration: underline dashed var(--neon-pink); }

.sidenote-checkbox {
  display: none; }

.sidenote-content {
  display: block;
  position: absolute;
  width: 240px;
  box-sizing: border-box;
  margin-top: -1.5em;
  border: solid 1px var(--border-color);
  padding: 0.5rem;
  font-size: .75rem; }
  .sidenote-content.sidenote-right {
    right: 0;
    margin-right: -250px; }
  .sidenote-content.sidenote-left {
    left: 0;
    margin-left: -250px; }
  @media screen and (max-width: 1320px) {
    .sidenote-content {
      position: static;
      margin-top: 10px;
      margin-bottom: 10px;
      width: 100%;
      display: none; }
      .sidenote-checkbox:checked ~ .sidenote-content {
        display: block; }
      .sidenote-content.sidenote-right {
        margin-right: 0px; }
      .sidenote-content.sidenote-left {
        margin-left: 0px; } }
.inline-sidenote {
  position: relative;
  display: inline-block;
  cursor: pointer;
  vertical-align: baseline; }

/* trigger text with dot marker */
.inline-sidenote-trigger {
  border-bottom: 1px dotted var(--primary);
  position: relative;
  padding-right: 0.2em; }

.inline-sidenote-trigger::after {
  content: "•";
  font-size: 0.6em;
  position: absolute;
  right: -0.2em;
  top: 50%;
  transform: translatey(-50%);
  color: var(--primary);
  opacity: 0.5;
  transition: opacity 0.2s ease; }

/* popup container */
.inline-sidenote-popup {
  display: none;
  /* hidden by default */
  position: absolute;
  left: 100%;
  top: 0;
  width: 240px;
  background: var(--theme);
  color: var(--content);
  border: 1px solid var(--border-color);
  padding: 0.6rem;
  font-size: 0.75rem;
  line-height: 1.3;
  z-index: 50;
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  /* enable multiline */
  white-space: pre-wrap;
  /* preserves line breaks */
  word-wrap: break-word;
  /* wraps long lines */
  overflow-wrap: break-word;
  /* animations */
  opacity: 0;
  transform: translatex(5px);
  transition: all 0.25s ease; }

/* active state for toggle */
.inline-sidenote.active .inline-sidenote-popup {
  display: block;
  opacity: 1;
  transform: translatex(0); }

/* hover still works */
.inline-sidenote:hover .inline-sidenote-popup {
  display: block;
  opacity: 1;
  transform: translatex(0); }

@media (max-width: 768px) {
  .inline-sidenote-popup {
    position: absolute;
    /* keep it overlaying inline text */
    width: 180px;
    /* narrower for small screens */
    max-width: 80vw;
    /* never wider than viewport */
    left: auto;
    /* align with trigger */
    right: 0;
    /* or some offset if you prefer */
    top: 1.2em;
    /* slightly below baseline */
    margin: 0;
    display: none;
    /* still hidden by default */
    white-space: normal;
    /* allow line breaks */ }
  /* active class from click/tap toggle */
  .inline-sidenote.active .inline-sidenote-popup {
    display: block; } }
