@font-face {
  font-family: 'CalSans';
  src: url('../CalSans-SemiBold.woff');
}

body .page {
  --api-font-size: var(--font-size--normal) !important;
}

/* Slightly wider than default for our WASM examples. */
.content {
  width: 48em;
}

.sidebar-brand-text {
  font-family: 'CalSans';
  color: #1c7362;
  font-weight: 600;
  font-size: 1.85rem;
  line-height: 1.5rem;
}

body {
  color-scheme: light;
}
body[data-theme='dark'] {
  color-scheme: dark;
}

h1,
h2 {
  font-family: 'CalSans';
  letter-spacing: 0.025em;
}

[data-theme='dark'] .sidebar-brand-text {
  color: #fff;
}

iframe.demo {
  width: 100%;
  height: 250px;
  border: 1px solid var(--color-background-border);
  border-radius: 5px;
}

.autosummary > table {
  width: 98%;
}

iframe.demo.medium {
  height: 400px;
}

iframe.demo.large {
  height: 600px;
}

iframe.demo.xlarge {
  height: 900px;
}

iframe.demo.xxlarge {
  height: 1200px;
}

.highlight {
  border-radius: 0.4rem;
}

/* Better formatting of signatures from https://github.com/sphinx-doc/sphinx/issues/1514#issuecomment-742703082 */
/* Newlines (\a) and spaces (\20) before each parameter */
.sig-param::before {
  content: '\a\20\20';
  white-space: pre;
}

/* Newline after the last parameter (so the closing bracket is on a new line) */
dt em.sig-param:last-of-type::after {
  content: '\a';
  white-space: pre;
}

.sig-param,
.sig-return-typehint {
  font-size: 0.875rem;
}

.sidebar-logo-container {
  height: 150px;
}

figcaption {
  font-size: 0.875rem;
  color: gray;
}

[data-theme='dark'] figcaption {
  color: var(--color-content-foreground);
}

figure img {
  border: 1px solid #ebebeb;
  border-radius: 5px;
}

blockquote {
  border-left-color: #1c7362;
}

details.sd-dropdown summary {
  padding-top: 0.25em;
  padding-bottom: 0.25em;
}

details.sd-dropdown:not([open]) > .sd-card-header {
  /* make border more visible */
  border: 1px solid #d7d7d7;
}

details.sd-dropdown .sd-summary-title {
  font-weight: normal;
}

details.sd-dropdown .sd-summary-down,
details.sd-dropdown .sd-summary-up {
  top: 0.3em;
}

.announcement.announcement {
  background-color: var(--color-background-primary) !important;
  overflow-y: hidden;
  height: fit-content;
  color: var(--color-content-foreground) !important;
  border-bottom: 1px solid var(--color-sidebar-search-border);
}

.announcement-content.announcement-content a {
  color: var(--color-foreground-secondary) !important;
  text-decoration: none;
}
.announcement-content.announcement-content a:hover {
  color: var(--color-link-hover) !important;
}

.announcement .sidebar-search-container {
  width: 100%;
  max-width: 500px;
  margin-top: 0;
  border-radius: 6px;
}

.announcement .sidebar-search {
  border-right: 1px solid var(--color-sidebar-search-border);
  border-left: 1px solid var(--color-sidebar-search-border);
  border-radius: 6px;
}

/* Hide as xs */
@media (max-width: 576px) {
  .hide-sm {
    display: none;
  }
}
@media (max-width: 768px) {
  .hide-md {
    display: none;
  }
}

.px-1 {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
.px-2 {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.px-4 {
  padding-left: 1rem;
  padding-right: 1rem;
}
.py-2 {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.py-4 {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/* Hide Furo warning about unrelated duplicate table of contents error */
.marimo .contents::before {
  display: none !important;
}
