/* MotorXP-AFM: presentation only. Keep TypeDoc navigation and content intact. */
#motorxp-language-switch {
  display: flex;
  flex-shrink: 0;
  gap: 2px;
  margin: 0 0.75rem;
  padding: 3px;
  border: 1px solid rgb(255 255 255 / 55%);
  border-radius: 8px;
}

#motorxp-language-switch a {
  padding: 0.25rem 0.5rem;
  border-radius: 5px;
  color: #102f46;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
}

#motorxp-language-switch a:hover,
#motorxp-language-switch a[aria-current] {
  background: #ffffff;
}

#motorxp-language-switch a:focus-visible {
  outline: 2px solid #102f46;
  outline-offset: 2px;
}

:root {
  --dim-toolbar-contents-height: 3.5rem;
  --light-color-background: #f4f7fb;
  --light-color-background-secondary: #edf2f8;
  --light-color-text: #243247;
  --light-color-text-aside: #5a6b80;
  --light-color-accent: #dbe3ed;
  --light-color-link: #1263b1;
  --dark-color-background: #111923;
  --dark-color-background-secondary: #1b2736;
  --dark-color-text: #dce6f2;
  --dark-color-text-aside: #a4b4c8;
  --dark-color-accent: #334255;
  --dark-color-link: #80bfff;
  --mx-surface: #ffffff;
  --mx-shadow: 0 8px 32px rgb(28 50 80 / 5%);
}

:root[data-theme="dark"] {
  --mx-surface: #16212e;
  --mx-shadow: 0 8px 32px rgb(0 0 0 / 12%);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --mx-surface: #16212e;
    --mx-shadow: 0 8px 32px rgb(0 0 0 / 12%);
  }
}

body {
  font-family: "Segoe UI Variable", "Segoe UI", system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.tsd-page-toolbar {
  background: #02a6f2;
  color: #ffffff;
  border-bottom-color: #0288c7;
  box-shadow: 0 2px 12px rgb(15 42 72 / 14%);
}

.tsd-toolbar-contents > .title {
  color: #ffffff;
  font-size: 1.05rem;
  font-weight: 650;
  letter-spacing: 0.015em;
}

.tsd-page-toolbar #tsd-toolbar-links a,
.tsd-page-toolbar .tsd-widget {
  color: #ffffff;
}

.tsd-page-toolbar .tsd-widget {
  border-radius: 8px;
  opacity: 1;
}

.tsd-page-toolbar .tsd-widget:hover,
.tsd-page-toolbar .tsd-widget:active {
  background: rgb(255 255 255 / 14%);
}

.tsd-page-toolbar .tsd-widget:focus-visible,
.tsd-toolbar-contents > .title:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}

.col-content {
  box-sizing: border-box;
  min-width: 0;
  max-width: 960px;
  margin-top: 1.5rem;
  margin-bottom: 2rem;
  padding: clamp(1.25rem, 2.5vw, 2.5rem);
  background: var(--mx-surface);
  border: 1px solid var(--color-accent);
  border-radius: 14px;
  box-shadow: var(--mx-shadow);
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.col-content h1,
.col-content h2,
.col-content h3,
.col-content h4 {
  line-height: 1.25;
  font-weight: 650;
  letter-spacing: -0.02em;
}

.col-content h1 {
  font-size: clamp(1.8rem, 2.8vw, 2.5rem);
  margin-top: 0.5rem;
  margin-bottom: 1.25rem;
}

.col-content h2 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.col-content .tsd-typography p,
.col-content .tsd-typography ul,
.col-content .tsd-typography ol {
  margin-bottom: 1rem;
}

.col-content .tsd-panel {
  margin-bottom: 2rem;
}

.col-content code,
.col-content pre,
.col-content .tsd-signature {
  font-family: "Cascadia Code", Consolas, "Liberation Mono", monospace;
  font-size: 0.9em;
  line-height: 1.6;
}

.col-content pre {
  border: 1px solid var(--color-accent);
  border-radius: 10px;
  padding: 1.1rem 1.25rem;
  overflow-x: auto;
}

.col-content .tsd-signature {
  border-radius: 8px;
  padding: 0.8rem 1rem;
  background: var(--color-background-secondary);
}

.col-content .tsd-typography a {
  text-underline-offset: 3px;
}

@media (max-width: 769px) {
  .col-content {
    margin-top: 1rem;
    padding: 1.1rem;
    border-radius: 10px;
  }
  .tsd-toolbar-contents > .title {
    font-size: 0.9rem;
    line-height: 1.3;
  }
}
