:root { color-scheme: dark; font-family: 'IBM Plex Sans', system-ui, sans-serif; background: #1a1a1a; color: #eee; line-height: 1.6; }
* { box-sizing: border-box; }
body { margin: 0; }
header { max-width: 1450px; margin: auto; padding: 2.5rem 2rem 1rem; }
h1 { line-height: 1.2; }
h2 { margin-top: 2rem; color: #fff; }
a { color: #ff8088; text-underline-offset: .2em; }
a:hover { color: #ffb6bb; }
:focus-visible { outline: 2px solid #ff8088; outline-offset: 4px; }
.skip { position: absolute; left: -10000px; }
.skip:focus { left: 1rem; top: 1rem; background: #222; z-index: 2; }
.layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 2rem; max-width: 1450px; margin: auto; padding: 0 2rem 4rem; }
nav { position: sticky; top: 1rem; align-self: start; max-height: calc(100vh - 2rem); overflow-y: auto; padding: 1rem 0; }
nav a { display: block; padding: .2rem 0; }
#categories { font-size: .85rem; padding-left: 1rem; margin: .3rem 0; }
section, details, h3 { scroll-margin-top: 1rem; }
details { border: 1px solid #444; border-radius: 6px; margin: .7rem 0; background: #202020; }
summary { cursor: pointer; padding: .8rem 1rem; overflow-wrap: anywhere; }
summary:hover { background: #2c2c2c; }
.detail-body { padding: 0 1rem 1rem; }
.detail-body > :first-child { margin-top: .4rem; }
pre { background: #111; padding: 1rem; border-radius: 6px; overflow: auto; line-height: 1.5; }
code { font-size: .9em; font-family: ui-monospace, Consolas, monospace; }
td code { overflow-wrap: anywhere; }
table { width: 100%; border-collapse: collapse; margin: 1rem 0; text-align: left; font-size: .9rem; }
th, td { padding: .6rem; border: 1px solid #444; vertical-align: top; overflow-wrap: anywhere; }
th { background: #303030; }
.table-wrap { overflow-x: auto; }
.table-wrap table { min-width: 580px; }
:is(#http-patch-api-buses-string, #schema-busdsp) .table-wrap table { min-width: 820px; }
:is(#http-patch-api-buses-string, #schema-busdsp) th:first-child,
:is(#http-patch-api-buses-string, #schema-busdsp) td:first-child { min-width: 145px; overflow-wrap: normal; }
:is(#http-patch-api-buses-string, #schema-busdsp) th:nth-child(2),
:is(#http-patch-api-buses-string, #schema-busdsp) td:nth-child(2) { min-width: 110px; }
.tools { border: 1px solid #555; padding: 1rem; border-radius: 6px; margin-top: 2rem; }
label { display: block; margin-bottom: .5rem; }
input { width: 100%; padding: .7rem; font: inherit; background: #111; border: 1px solid #777; color: #fff; }
button { margin: .6rem .5rem 0 0; padding: .5rem .8rem; font: inherit; border: 1px solid #777; border-radius: 4px; background: #333; color: white; cursor: pointer; }
.meta { color: #ccc; font-size: .9rem; }
.method { color: #ff8088; font-weight: bold; }
[hidden] { display: none !important; }
@media (max-width: 850px) { .layout { display: block; padding: 0 1rem 2rem; } header { padding: 1rem; } nav { position: static; max-height: none; display: flex; flex-wrap: wrap; gap: .3rem 1rem; } #categories { display: none; } }
@media print { :root { color-scheme: light; color: #111; background: white; } nav, .tools, .skip { display: none; } .layout { display: block; } h2 { color: #111; } pre, details, th { background: white; color: #111; } a, .method { color: #900; } details { break-inside: avoid; } }
