:root {
    --app-ink: #1b2638;
    --app-muted: #5f6978;
    --app-border: #dbe2eb;
}

body {
    color: var(--app-ink);
    background:
        radial-gradient(circle at 8% 0%, #eaf1ff 0, #f6f8f3 42%),
        linear-gradient(180deg, #fbfcf8 0%, #f4f6f1 100%);
}

.app-container {
    width: 100%;
    max-width: none;
    padding-left: 5%;
    padding-right: 5%;
    margin: 0 auto;
}

.navbar .app-container {
    min-height: 3.8rem;
}

.domain-form {
    min-width: min(560px, 100%);
}

.domain-form .form-control {
    min-width: 12rem;
}

.app-panel {
    border: 1px solid var(--app-border);
    border-radius: 0.7rem;
    background: rgba(255, 255, 255, 0.94);
}

.domain-summary {
    margin-top: 8px;
    margin-bottom: 14px;
}

.domain-summary .domain-summary-body {
    padding: 0.4rem 0.5rem;
}

.report-table th,
.report-table td {
    border-color: var(--app-border);
    vertical-align: top;
}

.report-table thead th {
    font-size: 1.02rem;
    font-weight: 600;
}

.report-table .category-cell {
    white-space: nowrap;
    font-weight: 700;
    font-size: 1.1rem;
    letter-spacing: 0.01em;
    color: #000000;
}

.report-table .info {
    white-space: normal;
}

.report-table .info > div:first-child {
    white-space: pre-line;
}

.report-table .info .info-list {
    margin: 0.2rem 0 0.2rem 1rem;
    padding-left: 0.8rem;
}

.report-table .info .info-list li {
    margin: 0.08rem 0;
}

.report-table .info .info-gap {
    height: 0.35rem;
}

.report-table .standards-cell {
    min-width: 15rem;
    white-space: normal;
}

.report-table tbody tr.result-row.table-success > * {
    background: #eaf7ef !important;
}

.report-table tbody tr.result-row.table-danger > * {
    background: #fdeff1 !important;
}

.report-table tbody tr.result-row.table-warning > * {
    background: #fff8e6 !important;
}

.report-table tbody tr.result-row.table-secondary > * {
    background: #ffffff !important;
}

.rfc-footnote {
    margin-top: 0.35rem;
    font-size: 0.78rem;
    line-height: 1.35;
    color: var(--app-muted);
    white-space: normal;
}

.rfc-footnote a {
    color: #0d6efd;
    text-decoration: underline;
}

.rfc-label {
    font-weight: 600;
    color: #2f465f;
}

.rfc-links {
    margin: 0.25rem 0 0;
    padding-left: 1rem;
    font-size: 0.74rem;
}

.rfc-links li {
    margin: 0.1rem 0;
}

.rfc-links a {
    font-size: 0.74rem;
}

.report-meta {
    text-align: right;
    line-height: 1.35;
}

@media (max-width: 992px) {
    .navbar .app-container {
        align-items: stretch !important;
    }

    .domain-form {
        min-width: 0;
    }
}
