/* @settings

name: Pandoc Reference List
id: pandoc-reference-list
settings:
  -
    id: pwc-font-size
    title: Sidebar reference list font size
    type: variable-number-slider
    default: 14
    format: px
    min: 8
    max: 24
    step: 1
  -
    id: pwc-tooltip-font-size
    title: Tooltip citation font size
    type: variable-number-slider
    default: 14
    format: px
    min: 8
    max: 24
    step: 1
  -
    id: pwc-citation-color
    title: Citation color
    type: variable-themed-color
    format: hex
    default-light: '#2e3338'
    default-dark: '#dcddde'
  -
    id: pwc-citation-color-missing
    title: Unresolved citation color
    description: This color will be applied if a citekey is not found in your bibliography file
    type: variable-themed-color
    format: hex
    default-light: '#2e3338'
    default-dark: '#dcddde'
  -
    id: pwc-citation-underline-color
    title: Citation underline color
    type: variable-themed-color
    format: hex
    default-light: '#705dcf'
    default-dark: '#7f6df2'
  -
    id: pwc-citation-underline-color-missing
    title: Unresolved citation underline color
    description: This color will be applied if a citekey is not found in your bibliography file
    type: variable-themed-color
    format: hex
    default-light: '#'
    default-dark: '#'
  -
    id: pwc-citation-formatting-color
    title: Citation formatting color
    description: Changes the color of brackets and semicolons
    type: variable-themed-color
    format: hex
    default-light: '#2e3338'
    default-dark: '#dcddde'
  -
    id: pwc-citation-extra-color
    title: 'Citation "extra" color'
    description: 'Changes the color text within a citation, eg. "pp. 22-24"'
    type: variable-themed-color
    format: hex
    default-light: '#2e3338'
    default-dark: '#dcddde'
*/

body {
  --pwc-font-size: 14px;
  --pwc-tooltip-font-size: 14px;
  --pwc-citation-underline-color: var(--text-accent);
  --pwc-citation-underline-color-missing: transparent;
  --pwc-citation-extra-color: var(--text-normal);
  --pwc-citation-formatting-color: var(--text-normal);
  --pwc-citation-color: var(--text-normal);
  --pwc-citation-color-missing: var(--text-normal);
}

.pwc-reference-list {
  padding-bottom: 2rem;
}

.pwc-reference-list__title {
  font-size: var(--pwc-font-size);
  font-weight: bold;
  padding: 0 5px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.pwc-reference-list__title > div {
  display: flex;
  align-items: center;
  gap: var(--size-4-1);
}

.pwc-reference-list__count {
  color: var(--text-muted);
  display: flex;
  padding: var(--size-4-1) var(--size-4-2);
  border-radius: var(--tag-radius);
  background-color: rgba(var(--mono-rgb-100), 0.05);
  font-weight: var(--font-normal);
  line-height: 1;
  font-size: var(--font-ui-smaller);
}

.pwc-no-content {
  font-size: var(--pwc-font-size);
  padding: 0 5px;
  color: var(--text-muted);
}

.csl-entry-wrapper {
  --icon-size: var(--icon-s);
  --icon-stroke: var(--icon-s-stroke-width);

  display: flex;
  padding: 1em 5px;
  gap: var(--size-4-2);
}

.pwc-tooltip .csl-entry-wrapper {
  padding: 0;
}

.csl-entry {
  font-size: var(--pwc-font-size);
  word-wrap: break-word;
  gap: var(--size-4-2);
}

.csl-entry:has(> div + div) {
  display: flex;
}

.pwc-reference-list .csl-entry-wrapper:not(:last-child) {
  border-bottom: 1px solid var(--background-modifier-border);
}

.pwc-entry-btns {
  display: flex;
  flex-direction: column;
  gap: var(--size-4-1);
}

.pwc-reference-list a.footnote-ref {
  vertical-align: super;
}

.pwc-reference-list em,
.pwc-reference-list em em em,
.pwc-reference-list em em em em em {
  font-style: italic;
}

.pwc-reference-list em em,
.pwc-reference-list em em em em {
  font-style: normal;
}
.pwc-reference-list code {
  white-space: pre-wrap;
}

.pwc-reference-list span.smallcaps {
  font-variant: small-caps;
}

.pwc-reference-list span.underline {
  text-decoration: underline;
}

.pwc-reference-list q {
  quotes: '“' '”' '‘' '’';
}

.pwc-reference-list div.column {
  display: inline-block;
  vertical-align: top;
  width: 50%;
}

.pwc-tooltip.collapsed-links a,
.pwc-reference-list.collapsed-links a {
  font-size: 0;
}

.pwc-tooltip.collapsed-links a::after,
.pwc-reference-list.collapsed-links a::after {
  font-size: var(--pwc-font-size);
  content: ' ';
  display: inline-block;
  width: 1em;
  height: 1em;

  background-color: var(--text-accent);

  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1em' height='1em' viewBox='0 0 24 24'%3E%3Cpath d='M8.465 11.293c1.133-1.133 3.109-1.133 4.242 0l.707.707 1.414-1.414-.707-.707c-.943-.944-2.199-1.465-3.535-1.465s-2.592.521-3.535 1.465L4.929 12a5.008 5.008 0 0 0 0 7.071 4.983 4.983 0 0 0 3.535 1.462A4.982 4.982 0 0 0 12 19.071l.707-.707-1.414-1.414-.707.707a3.007 3.007 0 0 1-4.243 0 3.005 3.005 0 0 1 0-4.243l2.122-2.121z'%3E%3C/path%3E%3Cpath d='m12 4.929-.707.707 1.414 1.414.707-.707a3.007 3.007 0 0 1 4.243 0 3.005 3.005 0 0 1 0 4.243l-2.122 2.121c-1.133 1.133-3.109 1.133-4.242 0L10.586 12l-1.414 1.414.707.707c.943.944 2.199 1.465 3.535 1.465s2.592-.521 3.535-1.465L19.071 12a5.008 5.008 0 0 0 0-7.071 5.006 5.006 0 0 0-7.071 0z'%3E%3C/path%3E%3C/svg%3E");
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1em' height='1em' viewBox='0 0 24 24'%3E%3Cpath d='M8.465 11.293c1.133-1.133 3.109-1.133 4.242 0l.707.707 1.414-1.414-.707-.707c-.943-.944-2.199-1.465-3.535-1.465s-2.592.521-3.535 1.465L4.929 12a5.008 5.008 0 0 0 0 7.071 4.983 4.983 0 0 0 3.535 1.462A4.982 4.982 0 0 0 12 19.071l.707-.707-1.414-1.414-.707.707a3.007 3.007 0 0 1-4.243 0 3.005 3.005 0 0 1 0-4.243l2.122-2.121z'%3E%3C/path%3E%3Cpath d='m12 4.929-.707.707 1.414 1.414.707-.707a3.007 3.007 0 0 1 4.243 0 3.005 3.005 0 0 1 0 4.243l-2.122 2.121c-1.133 1.133-3.109 1.133-4.242 0L10.586 12l-1.414 1.414.707.707c.943.944 2.199 1.465 3.535 1.465s2.592-.521 3.535-1.465L19.071 12a5.008 5.008 0 0 0 0-7.071 5.006 5.006 0 0 0-7.071 0z'%3E%3C/path%3E%3C/svg%3E");
}

.pwc-tooltip {
  word-wrap: break-word;
  position: fixed;
  font-family: var(--font-interface);
  font-size: var(--pwc-tooltip-font-size);
  padding: 10px;
  background-color: var(--background-primary);
  border: 1px solid var(--background-modifier-border);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  border-radius: 6px;
  width: 95vw;
  max-width: 300px;
  line-height: 1.4;
  z-index: var(--layer-popover);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: var(--size-4-2);
  user-select: text;
}

.pwc-tooltip .csl-entry {
  padding: 0;
}

.pwc-tooltips .cm-hmd-barelink {
  text-decoration: none;
}

.pwc-tooltips
  :not(a, .cm-hmd-internal-link, .cm-link-alias)
  > :is(.pandoc-citation, .at).is-resolved {
  color: var(--pwc-citation-color);
}

.pwc-tooltips
  :not(.cm-formatting-link)
  > .cm-pandoc-citation-formatting:not(.at) {
  color: var(--pwc-citation-formatting-color);
}

.pwc-tooltips
  :not(.cm-hmd-internal-link, .cm-link-alias)
  > .cm-pandoc-citation-extra {
  color: var(--pwc-citation-extra-color);
}

.pwc-tooltips :not(.cm-link-alias) > :is(.pandoc-citation, .at).is-resolved {
  text-decoration: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: 2px;
  text-decoration-color: var(--pwc-citation-underline-color);
}

.pwc-tooltips
  :not(.cm-hmd-internal-link, .cm-link-alias)
  > :is(.pandoc-citation, .at).is-unresolved {
  text-decoration-color: var(--pwc-citation-underline-color-missing);
  opacity: 1;
}

.pwc-tooltips
  :not(.cm-hmd-internal-link, .cm-link-alias)
  > :is(.pandoc-citation, .at).is-unresolved {
  color: var(--pwc-citation-color-missing);
}

.pwc-tooltips
  :not(a, .cm-hmd-internal-link, .cm-link-alias)
  > :is(.pandoc-citation, .at).is-link {
  color: var(--link-color);
  cursor: var(--cursor-link);
}

.pandoc-citation > * {
  pointer-events: none;
}

.pwc-success {
  color: var(--interactive-success);
}

.pwc-error {
  color: var(--text-error);
}

.pwc-multiselect {
  width: 320px;
  text-align: left;
  font-size: var(--font-ui-small);
}

.pwc-multiselect input {
  outline: none !important;
  box-shadow: none !important;
  font-size: var(--font-ui-small);
  height: unset;
}

.pwc-setting-item-wrapper {
  flex-direction: column;
  align-items: stretch;
}

.pwc-setting-item-wrapper > div {
  margin-right: 0 !important;
}

.pwc-setting-item-wrapper > div:last-child {
  padding-bottom: 0;
}

.pwc-group-toggle {
  display: flex;
  justify-content: flex-end;
  padding-top: var(--size-4-2);
}

.pwc-group-toggle .setting-item-description {
  padding-top: 0;
}

.pwc-suggest-title {
  font-size: var(--font-ui-small);
  color: var(--text-muted);
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-top: var(--size-4-1);
}

.pwc-suggest-loading-wrapper {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: var(--size-4-2) 0;
}

.pwc-suggest-loading,
.pwc-suggest-loading:before,
.pwc-suggest-loading:after {
  border-radius: 999px;
  width: 1em;
  height: 1em;
  animation-fill-mode: both;
  animation: bblFadInOut 1.6s infinite ease-in-out;
}

.pwc-suggest-loading {
  display: block;
  color: var(--text-muted);
  font-size: 7px;
  position: relative;
  animation-delay: -0.16s;
  top: -1em;
}
.pwc-suggest-loading:before,
.pwc-suggest-loading:after {
  content: '';
  position: absolute;
}
.pwc-suggest-loading:before {
  left: -2em;
  animation-delay: -0.32s;
}
.pwc-suggest-loading:after {
  left: 2em;
}

@keyframes bblFadInOut {
  0%,
  80%,
  100% {
    box-shadow: 0 1em 0 -1.3em;
  }
  40% {
    box-shadow: 0 1em 0 0;
  }
}

.pwc-status-icon {
  --icon-size: var(--icon-s);
  --icon-stroke: var(--icon-s-stroke-width);
}

.pwc-status-icon.is-loading svg {
  animation: spin 2s linear infinite;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.suggestion-container.pwc-suggest {
  max-width: 500px;
  width: 95vw;
}
