








:root { --accent: var(--c-term); --min: 1104px; }



.page-head h1 {
padding-bottom: 12px;
border-bottom: 2px solid var(--accent);
}


.block > .sect-label img {
width: 34px;
height: auto;
margin-right: 10px;
vertical-align: -12px;
}

.block p {
line-height: 2.05;
max-width: 760px;
}




.block ul {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 14px;
margin: 0;
padding: 0;
list-style: none;
}




.block li:nth-child(3n + 1):last-child { grid-column: 1 / -1; }

.block li a {
display: block;
height: 100%;
padding: 18px 20px 20px;
color: var(--bone-dim);
font-size: 13px;
line-height: 1.75;
text-decoration: none;
background: var(--tint-2);
border: 1px solid var(--hair);
transition: border-color .15s ease, background .15s ease;
}

.block li a:hover {
color: var(--bone);
background: var(--head-fill);
border-color: var(--hair-lit);
}


.block li a > span:first-child {
display: block;
margin-bottom: 8px;
font-family: var(--font-cn);
font-size: 20px;
letter-spacing: .06em;
}


.block li a > span:first-child::after {
content: "→";
float: right;
color: var(--bone-faint);
font-size: 15px;
transition: color .15s ease, transform .15s ease;
}

.block li a:hover > span:first-child::after { color: var(--accent); }



.gen {
max-width: 100%;
line-height: 1.85;
}


.gen th,
.gen td { padding: 10px 14px; }



.gen thead th {
letter-spacing: .08em;
text-align: left;
white-space: nowrap;
}














.gen thead th:first-child:not(.lead) { text-align: center; }

.gen:has(:is(td.ico, td.ico2, td.ico4)) thead th:nth-child(2) { text-align: center; }

.gen:has(td.slot):not(:has(td.cd)) thead th:last-child { text-align: center; }
















.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(3)):not(:has(thead th:nth-child(4))) { table-layout: fixed; }

.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(3)):not(:has(thead th:nth-child(4))) thead th:nth-child(1) { width: 175px; }
.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(3)):not(:has(thead th:nth-child(4))) thead th:nth-child(2) { width: 96px; }
.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(3)):not(:has(thead th:nth-child(4))):has(:is(td.ico2, td.ico4)) thead th:nth-child(2) { width: 152px; }

.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) { table-layout: fixed; }

.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(1) { width: 175px; }
.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(2) { width: 96px; }
.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))):has(:is(td.ico2, td.ico4)) thead th:nth-child(2) { width: 152px; }
.gen:has(td.ico, td.ico2, td.ico4):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(4) { width: 200px; }





.gen tbody th[scope="row"] {
font-family: var(--font-cn);
font-weight: 600;
white-space: nowrap;
word-break: keep-all;
}

.gen tbody th[scope="row"]:not([class]) { color: var(--bone-hi); }


.gen tbody { color: var(--bone); }




.gen td.ico {
width: 72px;
padding: 10px 8px;
text-align: center;
}

.gen td img {
display: block;
margin: 0 auto;
}


.gen td.slot {
width: 116px;
padding: 10px 8px;
text-align: center;
}

.gen td.slot img { width: 88px; height: auto; border-radius: 0; opacity: .9; }



.gen th[class^="sk-"] { padding: 12px 10px 10px; text-align: center; }

.gen th[class^="sk-"] img { display: block; margin: 0 auto 6px; }


.gen td.ico2 {
width: 152px;
padding: 10px 8px;
text-align: center;
line-height: 0;
}

.gen td.ico2 img { display: inline-block; margin: 0 3px; }


.gen td.ico4 {
width: 152px;
padding: 10px 8px;
text-align: center;
line-height: 0;
}

.gen td.ico4 img { display: inline-block; margin: 3px; }







.gen th.lead {
width: 190px;
color: var(--bone);
white-space: normal;
word-break: normal;
line-height: 1.7;
}

.gen th.lead .note { font-weight: 400; }

.gen td[class^="sk-"] {
width: 152px;
padding: 14px 10px 12px;
font-family: var(--font-cn);
font-weight: 600;
text-align: center;
}

.gen td[class^="sk-"] img { margin-bottom: 8px; }

.gen td[class^="sk-"] a {
color: inherit;
text-decoration-color: color-mix(in srgb, currentcolor 45%, transparent);
text-underline-offset: 3px;
}

.gen th.sk-arc, .gen td.sk-arc { color: var(--el-arc); background: color-mix(in srgb, var(--el-arc) 9%, transparent); }
.gen th.sk-solar, .gen td.sk-solar { color: var(--el-solar); background: color-mix(in srgb, var(--el-solar) 9%, transparent); }
.gen th.sk-void, .gen td.sk-void { color: var(--el-void); background: color-mix(in srgb, var(--el-void) 9%, transparent); }
.gen th.sk-stasis, .gen td.sk-stasis { color: var(--el-stasis); background: color-mix(in srgb, var(--el-stasis) 9%, transparent); }
.gen th.sk-strand, .gen td.sk-strand { color: var(--el-strand); background: color-mix(in srgb, var(--el-strand) 9%, transparent); }


.gen td:has(+ td:is(.ico, .ico2, .ico4)) {
color: var(--bone-hi);
font-family: var(--font-cn);
font-weight: 600;
white-space: nowrap;
word-break: keep-all;
}



.gen td.cd { white-space: nowrap; }





.gen tbody th[scope="row"]:not([class]):has(+ td:not(:is(.ico, .ico2, .ico4))) { color: var(--bone-faint); }








.gen:not(:has(td.ico, td.ico2, td.ico4)):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) {
table-layout: fixed;
}

.gen:not(:has(td.ico, td.ico2, td.ico4)):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) :is(th, td) {
text-align: center;
}

.gen:not(:has(td.ico, td.ico2, td.ico4)):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(1) { width: 108px; }
.gen:not(:has(td.ico, td.ico2, td.ico4)):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(2),
.gen:not(:has(td.ico, td.ico2, td.ico4)):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(3) { width: auto; }
.gen:not(:has(td.ico, td.ico2, td.ico4)):has(thead th:nth-child(4)):not(:has(thead th:nth-child(5))) thead th:nth-child(4) { width: 152px; }
