/* Collaboration protocol follows the dossier's left-aligned reading flow. */
.about-extension,
.about-extension summary,
.about-extension-body,
.doctrine-heading,
.doctrine-row,
.proof-grid,
.proof-grid div,
.proof-grid span,
.proof-grid strong {
    text-align: left;
}

.collaboration-loop,
.collaboration-loop span {
    text-align: center;
}

/* Keep the Dashboard boot title and subtitle on distinct, readable lines. */
body.dashboard-page .page-boot-title {
    line-height: 1.35;
}

body.dashboard-page .page-boot-sub {
    line-height: 1.45;
    margin-top: 6px;
}

body.dashboard-page .settings-section:first-child .info-display p {
    margin-top: 0;
    margin-bottom: 3px;
    line-height: 1.3;
}

#contactModal .cm-dialog {
    box-sizing: border-box;
    display: grid;
    grid-template-rows: 52px minmax(0, 1fr);
}

#contactModal .cm-close {
    position: relative;
    top: auto;
    right: auto;
    grid-row: 1;
    align-self: center;
    justify-self: end;
    margin-right: 12px;
}

#contactModal .cm-scroll {
    box-sizing: border-box;
    grid-row: 2;
    min-height: 0;
    max-height: none;
}

/* The fixed navigation already provides the page-top offset. */
body.browser-page .browser-container,
body.browser-page .browser-header,
body.rss-page #rssView .rss-container,
body.rss-page #rssView .rss-header {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body.browser-page #browserView,
body.rss-page #rssView {
    position: relative !important;
    top: 0 !important;
}

@media (max-width: 900px) {
    body.browser-page .browser-body,
    body.rss-page .dashboard-body {
        position: fixed !important;
        top: 50px !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        height: auto !important;
        max-height: none !important;
        margin-top: 0 !important;
    }
}