/* Import fonts from Google Fonts or use local fonts */
@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@300;600&family=Source+Code+Pro:wght@400;500;600&display=swap');

/* Font definitions */
:root {
    --font-sans: 'Source Sans 3', 'Source Sans Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --font-mono: 'Source Code Pro', 'SF Mono', Monaco, Consolas, 'Courier New', monospace;
}

/* Base font settings */
body, html {
    font-family: var(--font-sans);
    font-weight: 300; /* Light weight for Source Sans */
}

/* Headings and bold text */
h1, h2, h3, h4, h5, h6,
strong, b,
.sidebar-title,
.caption-text,
dt {
    font-family: var(--font-sans);
    font-weight: 600; /* Semibold weight for Source Sans */
}

/* Navigation and menu items */
.nav-item, 
.toctree-l1 > a,
.toctree-l2 > a,
.toctree-l3 > a,
.sidebar-brand,
.navbar-nav {
    font-family: var(--font-sans);
    font-weight: 300;
}

/* Bold navigation items */
.nav-item.active,
.toctree-l1.current > a,
.toctree-l2.current > a {
    font-weight: 600;
}

/* Monospace elements */
code, 
pre, 
kbd, 
samp,
.highlight,
.literal,
.docutils.literal,
.rst-content code,
.rst-content tt,
.rst-content code.literal {
    font-family: var(--font-mono) !important;
    font-weight: 400;
}

/* Code blocks */
.highlight pre,
div[class*="highlight-"] pre,
.code-block-caption + div pre {
    font-family: var(--font-mono) !important;
    font-weight: 400;
}

/* Inline code */
code.literal,
.rst-content code.literal {
    font-family: var(--font-mono) !important;
    font-weight: 500;
}

/* API documentation signatures */
.sig, .sig-name, .sig-param,
.sig-paren, .sig-return {
    font-family: var(--font-mono) !important;
}

/* Tables */
table, th, td {
    font-family: var(--font-sans);
    font-weight: 300;
}

th {
    font-weight: 600;
}

/* Admonitions and notes */
.admonition-title,
.note .admonition-title,
.warning .admonition-title,
.danger .admonition-title,
.error .admonition-title {
    font-family: var(--font-sans);
    font-weight: 600;
}

.admonition,
.note,
.warning {
    font-family: var(--font-sans);
    font-weight: 300;
}

/* Previous custom styles */
.highlight-python .annotation {
    color: #2980b9;
    font-weight: normal;
}

dl.field-list > dt {
    word-break: break-word;
}

.section > h2 {
    margin-top: 2em;
}

.rubric {
    font-size: 1.2em;
    color: #2980b9;
    border-bottom: 1px solid #eee;
    padding-bottom: 0.3em;
}

dl.field-list code.literal {
    background: #f8f9fa;
    border: none;
    padding: 2px 5px;
    color: #2980b9;
}

/* Style for all custom sections */
.rubric {
    font-size: 1.35em;
    color: #2980b9;
    border-bottom: 2px solid #2980b9;
    padding-bottom: 0.3em;
    margin-top: 1.5em;
    margin-bottom: 1em;
}

/* Parameter formatting */
.field-list p {
    margin: 0;
    padding: 0;
}

/* Style for parameter names */
.field-list strong code {
    font-weight: bold;
    color: #000000;
    background: none;
    border: none;
    padding: 0;
}

/* Style for parameter types */
.field-list em {
    font-style: italic;
    color: #666666;
}

/* Spacing between parameters */
.field-list dt {
    margin-top: 1em;
}

/* Parameter description indentation */
.field-list dd {
    margin-left: 2em;
}