/* Built by new/theme/build.py from stylesheet/src/ — edit the sources, not this file. */
.lst-pager { display: flex; flex-direction: column; align-items: center; gap: 12px; margin-top: 32px; }
.lst-pager__btn { min-width: 280px; }
.lst-pages { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 4px; }
.lst-pages__a { min-width: 36px; height: 36px; padding: 0 8px; display: inline-grid; place-items: center; border-radius: var(--r-8); font-weight: 500; }
.lst-pages__a.is-cur { background: var(--surface-2); font-weight: 700; }
@media (hover: hover) { a.lst-pages__a:hover { background: var(--surface-2); color: var(--ink); } }
.lst-pages__gap { min-width: 24px; text-align: center; color: var(--ink-3); }
@media (max-width: 767px) {
.lst-pager__btn { min-width: 0; width: 100%; }
.lst-pages__a { min-width: 44px; height: 44px; }
}
.app-sys { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
@media (min-width: 1280px) { .app-sys { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); } }
.app-sys__i {
position: relative; display: flex; flex-direction: column; min-height: 104px; padding: 12px;
border-radius: var(--r-16); background: var(--surface-2); overflow: hidden;
}
@media (hover: hover) { .app-sys__i:hover { background: var(--surface-4); color: var(--ink); } }
.app-sys__i[aria-current] { background: var(--surface-4); box-shadow: inset 0 0 0 2px var(--ink); }
.app-sys__t { position: relative; z-index: 1; max-width: 70%; font-size: var(--fs-14); line-height: var(--lh-14); font-weight: 700; }
.app-sys__n { position: relative; z-index: 1; margin-top: 2px; font-size: var(--fs-13); line-height: var(--lh-13); color: var(--ink-3); }
.app-sys__img { position: absolute; right: 8px; bottom: 8px; width: 42%; height: 64%; }
.app-sys__img img { width: 100%; height: 100%; object-fit: contain; object-position: right bottom; mix-blend-mode: multiply; }
@media (min-width: 1280px) {
.app-sys__i { min-height: 0; }
.app-sys__t { max-width: none; }
.app-sys__img { position: static; width: 100%; height: 60px; margin-top: auto; padding-top: 8px; }
.app-sys__img img { object-position: center bottom; }
}
.app-nodes { margin-top: 32px; }
.app-nodes__h { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; margin-bottom: 16px; }
.app-ngrid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.app-node {
position: relative; display: flex; flex-direction: column; justify-content: flex-start; min-height: 72px; padding: 12px 76px 12px 12px;
border-radius: var(--r-16); background: var(--surface-2); overflow: hidden;
}
@media (hover: hover) { .app-node:hover { background: var(--surface-4); color: var(--ink); } }
.app-node[aria-current] { background: var(--surface-4); box-shadow: inset 0 0 0 2px var(--ink); }
.app-node[aria-current] .app-node__t { font-weight: 700; }
.app-node__t { font-size: var(--fs-14); line-height: var(--lh-14); }
.app-node__n { margin-top: 2px; font-size: var(--fs-13); line-height: var(--lh-13); color: var(--ink-3); }
.app-node__img { position: absolute; right: 8px; top: 0; bottom: 0; margin: auto 0; width: 60px; height: 52px; }
.app-node__img img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.app-res { margin-top: 40px; }
.app-h { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
.app-h .muted { font-size: var(--fs-14); }
.app-brands { margin-top: 16px; }
.app-brands__l { margin-bottom: 8px; color: var(--ink-3); }
.app-chips .chip { gap: 8px; }
.app-chip__n { color: var(--ink-3); }
.app-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin-top: 24px; }
.app-empty { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; margin-top: 24px; padding: 24px; border-radius: var(--r-20); background: var(--surface-2); }
.app-uni { margin-top: 32px; }
.app-uni .app-grid { margin-top: 0; }
.app-res > .app-grid, .app-res > .app-empty, .app-res > .app-uni, .app-res > .lst-pager { transition: opacity var(--d-150) var(--ease-std); }
.app-res[aria-busy="true"] > :is(.app-grid, .app-empty, .app-uni, .lst-pager) { opacity: .6; }
@media (max-width: 1279px) {
.app-sys { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.app-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.app-ngrid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1023px) {
.app-ngrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.app-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
.app-sys, .app-ngrid, .app-chips {
overflow-x: auto; scrollbar-width: none; margin: 0 calc(-1 * var(--gutter)); padding: 2px var(--gutter);
scroll-padding: 0 var(--gutter); scroll-snap-type: x mandatory;
}
.app-sys::-webkit-scrollbar, .app-ngrid::-webkit-scrollbar, .app-chips::-webkit-scrollbar { display: none; }
.app-sys { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 40%; gap: 8px; }
.app-sys__i { min-height: 96px; padding: 10px; scroll-snap-align: start; }
.app-nodes { margin-top: 24px; }
.app-nodes__h { margin-bottom: 12px; }
.app-nodes__h .h20 { font-size: var(--fs-18); line-height: var(--lh-18); }
.app-ngrid { grid-template-columns: none; grid-auto-flow: column; grid-template-rows: repeat(2, auto); grid-auto-columns: 62%; gap: 8px; }
.app-node { min-height: 68px; padding-right: 68px; scroll-snap-align: start; }
.app-node__img { width: 52px; height: 44px; }
.app-res { margin-top: 32px; }
.app-chips { flex-wrap: nowrap; gap: 8px; }
.app-chips .chip { flex: none; scroll-snap-align: start; }
.app-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 16px; }
.app-empty { padding: 16px; border-radius: var(--r-16); }
}
.prose { max-width: 720px; }
.prose > * + * { margin-top: 12px; }
.prose h2 { margin-top: 32px; font-size: var(--fs-20); line-height: var(--lh-20); font-weight: 700; }
.prose h3 { margin-top: 24px; font-size: var(--fs-16); line-height: var(--lh-16); font-weight: 700; }
.prose > h2 + *, .prose > h3 + * { margin-top: 8px; }
.prose ul { padding-left: 20px; list-style: disc; }
.prose ol { padding-left: 20px; list-style: decimal; }
.prose li + li { margin-top: 4px; }
.prose a { color: var(--link); }
@media (hover: hover) { .prose a:hover { text-decoration: underline; } }
.prose table { width: 100%; border-collapse: collapse; font-size: var(--fs-14); line-height: var(--lh-14); }
.prose th { padding: 0 16px 8px 0; text-align: left; vertical-align: bottom; font-size: var(--fs-13); line-height: var(--lh-13); font-weight: 400; color: var(--ink-3); }
.prose td { padding: 10px 16px 10px 0; vertical-align: top; border-top: 1px solid var(--line); }
.prose td:first-child { font-weight: 500; }
.prose th, .prose td { min-width: 6.5em; }
.cat-intro { max-width: 720px; margin-top: 8px; color: var(--ink-2); }
.app-nodes__h + .cat-intro { margin: -8px 0 16px; }
.cat-more { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--line); }
.cat-text > h2:first-child { margin-top: 0; }
.cat-text + .cat-rel { margin-top: 40px; }
.cat-rel__h { margin-bottom: 12px; font-size: var(--fs-18); line-height: var(--lh-18); font-weight: 700; }
.cat-rel .tag { height: auto; min-height: 32px; padding: 6px 12px; }
@media (max-width: 767px) {
.app-nodes__h + .cat-intro { margin-bottom: 12px; }
.cat-more { padding-top: 24px; }
}
