/* BrizoConsol API documentation - one stylesheet, no external assets, no build step. */
:root {
    --ink: #16302c;
    --ink-soft: #4e6c69;
    --line: #d3dfdd;
    --surface: #ffffff;
    --surface-muted: #f4f9f8;
    --accent: #1a5c55;
    --accent-soft: #e6f4f2;
    --warn-bg: #fdf6e3;
    --warn-line: #e6d9b8;
    --code-bg: #f5f7f7;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: var(--ink);
    background: var(--surface);
}

a { color: var(--accent); }

.layout { display: flex; min-height: 100vh; }

.sidebar {
    width: 270px;
    flex: 0 0 270px;
    border-right: 1px solid var(--line);
    background: var(--surface-muted);
    padding: 28px 22px;
}

.sidebar .brand {
    display: block;
    font-weight: 700;
    font-size: 15px;
    color: var(--ink);
    text-decoration: none;
    margin-bottom: 24px;
}

.sidebar h2 {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--ink-soft);
    margin: 22px 0 8px;
}

.sidebar ul { list-style: none; margin: 0; padding: 0; }

.sidebar li { margin: 0 0 6px; }

.sidebar a { text-decoration: none; color: var(--ink-soft); font-size: 14px; }

.sidebar a:hover,
.sidebar a[aria-current="page"] { color: var(--accent); font-weight: 600; }

main { flex: 1; padding: 40px 48px 80px; max-width: 880px; min-width: 0; }

h1 { font-size: 30px; line-height: 1.2; margin: 0 0 8px; }

h2 { font-size: 20px; margin: 36px 0 10px; }

h3 { font-size: 16px; margin: 26px 0 8px; }

p, ul, ol, table { margin: 0 0 14px; }

ul, ol { padding-left: 22px; }

code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 13px;
    background: var(--code-bg);
    padding: 1px 5px;
    border-radius: 4px;
}

pre {
    background: var(--code-bg);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 14px 16px;
    overflow-x: auto;
    margin: 0 0 16px;
}

pre code { background: none; padding: 0; font-size: 12.5px; }

table { width: 100%; border-collapse: collapse; font-size: 14px; }

th, td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--line); vertical-align: top; overflow-wrap: anywhere; }

th { font-size: 12px; text-transform: uppercase; letter-spacing: 0.04em; color: var(--ink-soft); white-space: nowrap; }

table.labeled td:first-child,
table.labeled th:first-child { white-space: nowrap; width: 1%; }

table.steps { table-layout: fixed; }

table.steps th:nth-child(1), table.steps td:nth-child(1) { width: 22%; }

table.steps th:nth-child(2), table.steps td:nth-child(2) { width: 36%; }

table.steps th:nth-child(3), table.steps td:nth-child(3) { width: 42%; }

dl.tools { margin: 0 0 18px; }

dl.tools dt { margin: 18px 0 4px; font-weight: 600; }

dl.tools dt:first-child { margin-top: 0; }

dl.tools dd { margin: 0; color: var(--ink-soft); }

dl.tools .scope { margin-left: 6px; font-size: 12.5px; font-weight: 400; color: var(--ink-soft); }

dl.tools .scope::before { content: "· "; }

.lead { color: var(--ink-soft); font-size: 16px; margin-bottom: 24px; }

.note {
    border: 1px solid var(--warn-line);
    background: var(--warn-bg);
    border-radius: 8px;
    padding: 12px 14px;
    margin: 0 0 18px;
}

.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }

.card {
    display: block;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 16px;
    text-decoration: none;
    color: var(--ink);
    background: var(--surface);
}

.card:hover { border-color: var(--accent); background: var(--accent-soft); }

.card strong { display: block; margin-bottom: 4px; }

.card span { color: var(--ink-soft); font-size: 13.5px; }

.pill {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 3px 8px;
    border-radius: 999px;
    background: var(--accent-soft);
    color: var(--accent);
    margin-left: 8px;
    vertical-align: middle;
}

@media (max-width: 820px) {
    .layout { display: block; }
    .sidebar { width: auto; flex: none; border-right: 0; border-bottom: 1px solid var(--line); }
    main { padding: 24px 20px 60px; }
}
