:root{--bg:var(--ds-bg);--bg-soft:#f5f8fd;--card:var(--ds-card);--ink:var(--ds-ink);--ink-soft:var(--ds-ink-soft);--ink-faint:var(--ds-ink-faint);--line:#e6ebf2;--line-strong:#cfd8e6;--brand:var(--ds-text-accent);--brand-2:var(--ds-accent);--brand-soft:rgb(var(--ds-accent-rgb) / .1);--brand-ink:var(--ds-on-accent);--chip:rgb(var(--ds-accent-rgb) / .1)}
html[data-theme="dark"]{--bg-soft:#171c24;--line:#252c37;--line-strong:#38414f;--brand-soft:rgb(var(--ds-accent-rgb) / .16)}
*{box-sizing:border-box}
a{color:var(--brand)}
a:hover{color:var(--brand-2)}
.hdr-brand:hover{color:var(--ds-ink)}
.hubtext a{color:var(--brand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--brand) 45%,transparent)}
.hubtext a:hover{text-decoration-color:var(--brand)}
@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px;border:3px solid var(--bg);background-clip:padding-box}
::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);border:3px solid var(--bg);background-clip:padding-box}
html{background:var(--bg);-webkit-text-size-adjust:100%}
html,body{margin:0}
body.cat{background:var(--bg);color:var(--ink);font-family:var(--ds-font);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}
.cat .hdr{--page-max:1160px}
.wrap{max-width:1160px;margin:0 auto;padding:6px 16px 80px}
.crumb{color:var(--ink-faint);font-size:13.5px;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.crumb a{color:var(--ink-soft);text-decoration:none}
.crumb a:hover{color:var(--brand)}
.crumb .sep{color:var(--ink-faint);opacity:.6}
h1{font-size:clamp(27px,4.2vw,38px);line-height:1.15;margin:8px 0 10px;letter-spacing:-.02em;font-weight:700}
.lead{color:var(--ink-soft);margin:0;font-size:16.5px}
.sec{font-size:15px;color:var(--ink-soft);font-weight:500;margin:38px 0 12px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:14px}
.hubtext{margin:34px 0 0}
.hubtext p{margin:0 0 14px;line-height:1.65;color:var(--ink)}
.hubtext h2{font-size:19px;margin:26px 0 12px;display:flex;align-items:center;gap:9px}
.h-ico-wrap{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:var(--chip);color:var(--brand)}
.h-ico{width:18px;height:18px}
.hubtext h3{font-size:16px;font-weight:500;margin:18px 0 6px}
.hub-list{margin:-4px 0 16px;padding-left:22px;line-height:1.65;color:var(--ink)}
.hub-list li{margin:0 0 4px}
.hub-list li::marker{color:var(--brand-2)}
a.card,.cardno{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid color-mix(in srgb,var(--ds-accent) 12%,var(--line));border-radius:18px;padding:16px 18px;text-decoration:none;color:var(--ink);box-shadow:0 6px 24px rgb(20 35 70 / .06);transition:border-color .16s,transform .16s,box-shadow .16s}
html[data-theme="dark"] a.card,html[data-theme="dark"] .cardno{box-shadow:none}
a.card:hover{border-color:var(--ds-hair);transform:translateY(-2px);box-shadow:0 8px 22px rgb(var(--ds-accent-rgb) / .16)}
.av{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--brand-soft);font-size:22px}
.av .em{height:22px}
.av-ico{width:24px;height:24px;color:var(--brand-2)}
.av-logo{width:100%;height:100%;object-fit:cover;border-radius:50%}
.av:has(.av-logo){background:transparent}
.cardno{cursor:default}
.cbody{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}
.av-arms{width:34px;height:34px;object-fit:contain;display:block}
.cname{font-weight:700;font-size:17px}
.ctag{color:var(--ink-soft);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cmeta{color:var(--ink-faint);font-size:12.5px;margin-top:2px}
.carrow{flex:0 0 auto;color:var(--brand-2);font-size:20px;opacity:.55;transition:opacity .16s,transform .16s}
a.card:hover .carrow{opacity:1;transform:translateX(3px)}
.em{height:1.05em;width:auto;vertical-align:-.16em}
.pager{display:flex;gap:8px;flex-wrap:wrap;margin:28px 0 0}
.pager a,.pager span{padding:8px 14px;border-radius:var(--ds-r-pill);border:1px solid var(--ds-hair);background:var(--ds-frost);font-size:14px;text-decoration:none;color:var(--ink-soft)}
.pager a:hover{border-color:var(--ds-accent);color:var(--brand)}
.pager .cur{background:var(--ds-accent);border-color:var(--ds-accent);color:var(--brand-ink)}
footer{margin-top:60px;padding-top:22px;border-top:1px solid var(--line);color:var(--ink-faint);font-size:13px}
footer a{color:var(--ink-soft)}
@media(min-width:768px){.wrap{padding:10px 40px 96px}}
