/* PrismJS 1.29.0 - Okaidia Theme (monokai-style dark)
 * Modified for NeuroAI Docs: 100% local, no external font/asset dependencies
 * Uses JetBrains Mono that is already bundled locally with the theme
 */
code[class*=language-],
pre[class*=language-] {
    color: #f8f8f2;
    background: 0 0;
    text-shadow: 0 1px rgba(0, 0, 0, .3);
    font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 13.5px;
    line-height: 1.65;
    text-align: left;
    white-space: pre;
    word-spacing: normal;
    word-break: normal;
    word-wrap: normal;
    -moz-tab-size: 4;
    tab-size: 4;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}
pre[class*=language-] {
    padding: 1em;
    margin: .8em 0 1.4em;
    overflow: auto;
    border-radius: 12px;
    background: #0f172a;
    border: 1px solid rgba(99, 102, 241, .18);
    box-shadow: 0 1px 0 rgba(255, 255, 255, .04) inset, 0 10px 28px -20px rgba(0, 0, 0, .6);
}
:not(pre) > code[class*=language-],
pre[class*=language-] {
    background: #0f172a;
}
:not(pre) > code[class*=language-] {
    padding: .15em .45em;
    border-radius: 6px;
    white-space: normal;
    background: rgba(15, 23, 42, .88);
    border: 1px solid rgba(99, 102, 241, .2);
    color: #c7d2fe;
    font-size: .9em;
    text-shadow: none;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
    color: #94a3b8;
    font-style: italic;
}
.token.punctuation {
    color: #c9d1d9;
}
.namespace {
    opacity: .7;
}
.token.property,
.token.tag,
.token.constant,
.token.symbol,
.token.deleted {
    color: #fb7185;
}
.token.boolean,
.token.number {
    color: #fbbf24;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
    color: #86efac;
}
.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string,
.token.variable {
    color: #67e8f9;
}
.token.atrule,
.token.attr-value,
.token.function,
.token.class-name {
    color: #a78bfa;
}
.token.keyword {
    color: #c4b5fd;
    font-weight: 500;
}
.token.regex,
.token.important {
    color: #fbbf24;
}
.token.important,
.token.bold {
    font-weight: 700;
}
.token.italic {
    font-style: italic;
}
.token.entity {
    cursor: help;
}
.line-numbers .line-numbers-rows {
    border-right: 1px solid rgba(148, 163, 184, .25) !important;
}
.line-numbers-rows > span:before {
    color: rgba(148, 163, 184, .45) !important;
}

/* ─── Prism Toolbar + Copy-to-Clipboard (local styles, no remote) ─── */
div.code-toolbar {
    position: relative;
}
div.code-toolbar > .toolbar {
    position: absolute;
    top: 10px;
    right: 12px;
    display: flex;
    gap: 6px;
    transition: opacity .2s ease-in-out;
    opacity: 0;
}
div.code-toolbar:hover > .toolbar,
div.code-toolbar:focus-within > .toolbar {
    opacity: 1;
}
div.code-toolbar > .toolbar > .toolbar-item {
    display: inline-flex;
}
div.code-toolbar > .toolbar > .toolbar-item > button,
div.code-toolbar > .toolbar > .toolbar-item > a,
div.code-toolbar > .toolbar > .toolbar-item > span {
    color: #cbd5e1;
    font: 500 12px/1 "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    background: rgba(30, 41, 59, .85);
    border: 1px solid rgba(148, 163, 184, .2);
    padding: 6px 11px;
    border-radius: 8px;
    cursor: pointer;
    transition: background .15s ease, color .15s ease, border-color .15s ease, transform .05s ease;
    backdrop-filter: blur(8px);
}
div.code-toolbar > .toolbar > .toolbar-item > button:hover,
div.code-toolbar > .toolbar > .toolbar-item > a:hover,
div.code-toolbar > .toolbar > .toolbar-item > button:focus,
div.code-toolbar > .toolbar > .toolbar-item > a:focus {
    color: #fff;
    background: linear-gradient(135deg, rgba(99, 102, 241, .95), rgba(139, 92, 246, .95));
    border-color: rgba(167, 139, 250, .6);
    outline: none;
}
div.code-toolbar > .toolbar > .toolbar-item > button:active {
    transform: translateY(1px);
}
div.code-toolbar > .toolbar > .toolbar-item > button.copy-to-clipboard-button[data-copy-state="copy-success"] {
    background: linear-gradient(135deg, rgba(16, 185, 129, .95), rgba(52, 211, 153, .95));
    border-color: rgba(52, 211, 153, .6);
    color: #fff;
}
