.code-block{--cb-bg:var(--surface-100, #f5f7fa);--cb-bg-dark:var(--surface-950, #0b0d12);--cb-border:var(--border-200, #e5e7eb);--cb-border-dark:var(--border-800, #1f2937);--cb-accent:var(--accent-600, #2563eb);--cb-muted:var(--muted-600, #6b7280);--cb-outline:var(--outline, currentColor);background:var(--cb-bg);border:1px solid var(--cb-border);border-radius:6px;margin:1rem 0}
.code-block .hljs{padding:0}
@media (prefers-color-scheme:dark){
.code-block{background:var(--cb-bg-dark);border-color:var(--cb-border-dark)}
}
.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid var(--cb-border)}
@media (prefers-color-scheme:dark){
.code-block-header{border-bottom-color:var(--cb-border-dark)}
}
.code-block-title{display:flex;gap:.5rem;align-items:center}
.code-block-filename{font-weight:600}
.code-block-language{color:var(--cb-muted);font-size:.9em}
.code-block-actions{display:flex;align-items:center;gap:.5rem}
.code-block-summary{list-style:none}
.code-block-summary::-webkit-details-marker{display:none}
.code-block-summary{cursor:pointer;display:block}
.code-block-summary:focus{outline:0}
.code-block-summary:focus-visible{outline:2px solid var(--cb-outline);outline-offset:2px}
.code-block-summary:hover{background:color-mix(in oklab,currentColor 5%,transparent)}
details[data-code-block] .code-block-actions::before{content:'▸';margin-right:.25rem;transition:transform 120ms ease-in-out;color:currentColor;align-self:center}
details[open] .code-block-actions::before{transform:rotate(90deg)}
details[data-code-block] .code-block-header:not(:has(.code-block-actions))::after{content:'▸';margin-left:.5rem;transition:transform 120ms ease-in-out;color:currentColor;align-self:center}
details[open] .code-block-header:not(:has(.code-block-actions))::after{transform:rotate(90deg)}
.code-block-content{overflow:auto}
.code-block-pre{margin:0;padding:.75rem;background:0 0}
.code-block-pre[data-wrap=true]{white-space:pre-wrap;word-break:break-word}
.code-block-code{font-family:'Roboto Mono',monospace;font-size:.9rem;line-height:1.5;display:block}
.code-table{width:100%;border-collapse:collapse;table-layout:fixed}
.code-gutter-both,.code-gutter-new,.code-gutter-old,.code-gutter-single{user-select:none;-webkit-user-select:none;-moz-user-select:none;color:var(--cb-muted);text-align:right;padding:0 .5rem 0 .25rem;white-space:nowrap;vertical-align:top}
.code-gutter-old{width:calc((var(--gutter-old-ch,2) + 0) * 1ch)}
.code-gutter-new{width:calc((var(--gutter-new-ch,2) + 0) * 1ch)}
.code-gutter-single{width:calc((var(--gutter-single-ch,2) + 0) * 1ch)}
.code-gutter-both{width:calc(((var(--gutter-old-ch,2) + var(--gutter-new-ch,2)) + 0) * 1ch)}
.code-line{padding:0 .25rem;overflow-wrap:anywhere}
.code-line.highlighted{background:color-mix(in oklab,var(--cb-accent) 12%,transparent)}
.code-line.diff-added{background:color-mix(in oklab,#16a34a 16%,transparent)}
.code-line.diff-removed{background:color-mix(in oklab,#dc2626 16%,transparent)}
@media print{
.code-block{border-color:#000}
.code-block-header{border-bottom-color:#000}
}