.brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 220px;
}


.shell {
    max-width: calc(var(--max) + (var(--wiki-rail-w) * 2) + (var(--wiki-gap) * 4));
    margin: 0 auto;
    padding: var(--pad-big) var(--pad-med);
    display: grid;
    grid-template-columns: var(--wiki-rail-w) minmax(0, 1fr) var(--wiki-rail-w);
    gap: var(--wiki-gap);
    align-items: start;
}


.reader {
    min-width: 0;
}

.reader-inner {
    max-width: var(--max);
    margin: 0 auto;
    border-radius: 18px;
    background: var(--wiki-reader-bg);
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow);
}


/* =========================
   Article
========================= */

.article {
    padding: var(--pad-big);
}

.article-header {
    padding-bottom: var(--pad-med);
    border-bottom: 1px solid var(--black-350);
    margin-bottom: var(--pad-big);
}

.article-title {
    margin: 0 0 10px 0;
    font-family: var(--serif);
    font-size: 44px;
    line-height: 1.1;
    color: var(--black-1000);
}

.article-lead {
    margin: 0;
    color: var(--secondary-text);
    font-size: 16px;
    max-width: 78ch;
}

.meta {
    margin-top: 14px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.meta-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    border: 1px solid var(--border-color);
    border-radius: 999px;
    background: var(--black-100);
    box-shadow: var(--shadow-2);
    font-size: 12px;
}

.meta-k {
    color: var(--black-600);
    font-family: var(--mono);
}

.meta-v {
    color: var(--black-1000);
}

.article-content {
    display: grid;
    gap: 18px;
}

.section {
    padding: 4px 0 !important;
}

.section h2 {
    margin: 18px 0 8px 0;
    font-family: var(--serif);
    font-size: 24px;
    line-height: 1.2;
    color: var(--black-1000);
    scroll-margin-top: 90px;
}

.subsection h3 {
    margin: 16px 0 8px 0;
    font-family: var(--serif);
    font-size: 18px;
    line-height: 1.25;
    color: var(--black-1000);
    scroll-margin-top: 90px;
}

.section p {
    margin: 0 0 10px 0;
    color: var(--primary-text);
    max-width: 82ch;
}

.card.brief {
    margin-top: var(--pad-big);
}

.card .title {
    font-size: 24px !important;
}

.brief {
    margin: 0;
    display: grid;
    gap: 10px;
}

.brief-row {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 14px;
    background: var(--black-100);
    border: 1px solid var(--border-color);
    align-items: center;
}

.brief-k {
    margin: 0;
    color: var(--black-600);
    font-family: var(--mono);
    font-size: 12px;
}

.brief-v {
    margin: 0;
    color: var(--primary-text);
    font-size: 14px;
    margin-bottom: 4px
}

.list {
    margin: 0;
    padding-left: 18px;
    color: var(--primary-text);
}

.list li {
    margin: 6px 0;
}

.list-ol {
    padding-left: 20px;
}

.code {
    margin: 10px 0 0 0;
    padding: 14px;
    border-radius: 16px;
    background: var(--black-100);
    border: 1px solid var(--border-color);
    overflow: auto;
    box-shadow: var(--shadow-2);
}

.code code {
    font-family: var(--mono);
    font-size: 12px;
    color: var(--black-900);
    white-space: pre;
}

/* =========================
   Links
========================= */

.link {
    color: var(--wiki-link);
    border-radius: 8px;
    padding: 2px 4px;
    background: var(--transparent);
    transition: background 140ms ease, transform 140ms ease;
}

.link:hover {
    background: var(--wiki-link-bg);
}

.link:active {
    transform: translateY(1px);
}

.link-chip {
    display: inline-flex;
    padding: 8px 10px;
    border: 1px solid var(--border-color);
    background: var(--black-100);
    box-shadow: var(--shadow-2);
    border-radius: 999px;
    font-size: 13px;
}

/* =========================
   Right side: Infobox & TOC
========================= */

.infobox-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 12px;
}

.infobox-title {
    font-family: var(--serif);
    font-size: 18px;
    color: var(--black-1000);
}

.infobox-badge {
    font-family: var(--mono);
    font-size: 12px;
    color: var(--black-700);
    padding: 6px 8px;
    border-radius: 999px;
    border: 1px solid var(--border-color);
    background: var(--black-100);
}

.infobox-grid {
    margin: 0;
    display: grid;
    gap: 10px;
}

.infobox-row {
    display: grid;
    gap: 6px;
    padding: 10px 12px;
    border-radius: 14px;
    background: var(--black-100);
    border: 1px solid var(--border-color);
}

.infobox-row dt {
    margin: 0;
    color: var(--black-600);
    font-family: var(--mono);
    font-size: 12px;
}

.infobox-row dd {
    margin: 0;
    color: var(--primary-text);
    font-size: 14px;
}

.toc-list {
    margin: 0;
    padding-left: 18px;
    display: grid;
    gap: 8px;
}

.toc-list li {
    color: var(--secondary-text);
}

.toc-list a {
    color: var(--wiki-link);
}

.toc-list a:hover {
    background: var(--wiki-link-bg);
    border-radius: 8px;
    padding: 2px 4px;
}

.toc-list .toc-lvl3 {
    margin-left: 12px;
    list-style: circle;
}

.links__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

/* =========================
   Search highlight
========================= */

mark.hl {
    background: rgba(245, 245, 245, 0.9);
    border: 1px solid var(--border-color);
    color: var(--black-1000);
    padding: 0 3px;
    border-radius: 6px;
}

/* =========================
   Footer
========================= */

.pageFooter {
    margin-top: var(--pad-big);
    border-top: 1px solid var(--black-350);
    background: var(--black-100);
}

.pageFooter-inner {
    max-width: calc(var(--max) + (var(--wiki-rail-w) * 2) + (var(--wiki-gap) * 4));
    margin: 0 auto;
    padding: var(--pad-med);
    display: grid;
    gap: 6px;
}

.pageFooter-line {
    font-size: 13px;
}
