/* Броня: справочные правила, каталог и описания комплектов. */

.armour-heading {
    margin-bottom: 1.5rem;
}

.armour-heading h1 {
    margin-bottom: 0.35rem;
}

.armour-heading p {
    max-width: 72ch;
    text-align: left;
}

.armour-index {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.6rem;
    margin: 1.5rem 0 2rem;
}

.armour-index a {
    padding: 0.65rem 0.75rem;
    border: 1px solid var(--border-color);
    background: var(--table-row-alt);
    text-align: center;
}

.armour-definitions {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: 0.45rem 0.8rem;
}

.armour-definitions dt {
    color: var(--link-color);
    font-weight: bold;
}

.armour-definitions dd {
    margin: 0;
}

.armour-stacking {
    margin: 1rem 0;
    padding-left: 0.75rem;
    border-left: 3px solid var(--link-color);
}

.armour-table-wrap,
.armour-rarity-wrap {
    width: 100%;
    overflow-x: auto;
    border: 1px solid var(--border-color);
}

.armour-table,
.armour-rarity {
    width: 100%;
    border-collapse: collapse;
    font-family: var(--font-interface);
    text-align: left;
}

.armour-table {
    min-width: 760px;
}

.armour-rarity {
    width: 100%;
}

.armour-rarity-wrap {
    max-width: 660px;
}

.armour-table th,
.armour-table td,
.armour-rarity th,
.armour-rarity td {
    padding: 0.42rem 0.5rem;
    border-right: 1px solid var(--border-color);
    border-bottom: 1px solid var(--border-color);
    vertical-align: top;
}

.armour-table th:last-child,
.armour-table td:last-child,
.armour-rarity th:last-child,
.armour-rarity td:last-child {
    border-right: 0;
}

.armour-table thead th,
.armour-rarity thead th {
    background: var(--table-header-bg);
    color: var(--table-header-color);
    white-space: nowrap;
}

.armour-table .armour-category th {
    padding-top: 0.55rem;
    padding-bottom: 0.55rem;
    background: var(--table-row-alt);
    color: var(--link-color);
    font-size: 1rem;
}

.armour-table td:nth-child(n+3),
.armour-rarity td:last-child {
    white-space: nowrap;
}

.armour-quality {
    padding-left: 1.35rem;
}

.armour-quality li + li {
    margin-top: 0.5rem;
}

.armour-details {
    display: grid;
    gap: 0.65rem;
}

.armour-detail {
    border: 1px solid var(--border-color);
    background: var(--table-row-alt);
}

.armour-detail summary {
    padding: 0.65rem 0.75rem;
    color: var(--link-color);
    font-weight: bold;
    cursor: pointer;
}

.armour-detail p {
    margin: 0;
    padding: 0 0.75rem 0.8rem;
}

@media (max-width: 760px) {
    .armour-index {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .armour-definitions {
        grid-template-columns: 1fr;
    }
}
